Ocenite etot tekst:


V Unix pomimo obychnyh fajlov i katalogov sushchestvuyut  eshche i spe-
cial'nye fajly. Oni ispol'zuyutsya dlya oboznacheniya fizicheskih us-
trojstv komp'yutera. (ZHelezok). V sushchnosti, chto  takoe fajl? |to
"nechto", kuda mozhno zapisyvat'  dannye  kak posledovatel'nost'
bajtov  i  schityvat' ih ottuda. I, znachit, vpolne  estestvennym
vyglyadit, naprimer,  fajl  /dev/console  - sootvetstvuyushchij kon-
sol'nomu  terminalu.  Vse,  chto  vyvoditsya v fajl /dev/console,
budet prosto poyavlyat'sya na ekrane terminala. Pri popytke chteniya
iz  fajla  /dev/console vy budete  poluchat' (vnimanie!)  ne to,
chto narisovano v dannyj moment na ekrane, a to, chto vvoditsya  s
klaviatury. Poprobujte vypolnit' komandy

  su
  echo Privet > /dev/console
  cat /dev/console

  Ctrl-C

Dlya  kazhdogo  terminala  unix-mashiny sushchestvuet sootvetstvuyushchij
emu  fajl.  Obychnym  terminalam  sootvetstvuyut  fajly,  kotorye
nazyvayutsya primerno tak:

  /dev/contty01 ili /dev/tty02 ili /dev/ttyFD02 ili /dev/ttyS0
  (i t.d., vozmozhny varianty)

Psevdoterminalam (oni emuliruyutsya, kogda vy vhodite v  sistemu
po seti, posredstvom komand tipa telnet, rlogin) sootvetstvuyut
special'nye fajly

  /dev/pty*, ili /dev/pty/*

Komanda  who,  ili  who  am  i  soobshchit vam, kak nazyvaetsya vash
sobstvennyj terminal.

Sushchestvuyut special'nye fajly, sootvetstvuyushchie zhestkomu disku  v
celom   (/dev/rdsk/m197_c0d0s7)     i   vsem   ego    razdelam
(/dev/dsk/m197_c0d0s*). Esli  vy  budete chitat' iz etih fajlov,
to  poluchite  vse  bajtiki,  kak  oni lezhat na zhestkom diske, s
nulevogo cilindra i do poslednego... A  esli  vy  v  etot  fajl
chto-nibud'  zapishete,  to  poluchite  (potom)  bogatyj  opyt  po
pereformatirovaniyu i razmetke zhestkogo diska.

/dev/mem   - fajl, izobrazhayushchij operativnuyu pamyat'.

/dev/audio - esli  "zakatit'"  v nego  fajl  zvukovogo  formata
             (*.wav, *.au, ...?) - to on  budet ozvuchen dinami-
             kom  komp'yutera,  a  komanda cat /dev/audio  budet
             prinimat' vse, chto proiznositsya v mikrofon.  Vpro-
             chem,  ya  otvleksya,  u  nas ved' ne PC,  ne  Silicon
             Graphic i ne SPARCstation.

/dev/zero  - iz nego mozhno schitat' skol'ko ugodno nulevyh bajtov

/dev/null  - a v  nego mozhno pisat', i  chitat' iz nego - tozhe, v
             neogranichennyh kolichestvah i s neizmennym rezul'-
             tatom: NULL - on i est' null. A v MSDOS ego analog
             nazyvaetsya    NUL.

Special'nye fajly byvayut dvuh tipov:

  blochnye  - zapis' i  chtenie dopuskayutsya tol'ko blokami.  Nap-
             rimer, razdely diskov s fajlovoj sistemoj yavlyayutsya
             takovymi.

  ls -al /dev/fd*
brw-rw----  1 root floppy    2,  28 Jul 18  1994 /dev/fd0H1440
brw-rw----  1 root floppy    2,  32 Jul 18  1994 /dev/fd0H2880
brw-rw----  1 root floppy    2,  12 Jul 18  1994 /dev/fd0H360


 simvol'nye(besstrukturnye, syrye, row) - mozhno chitat' i pisat'
           otdel'nymi bajtami. K nim otnosyatsya terminaly,  mag-
           nitnye lenty, neformatirovannye diski i razdely dis-
           kov bez fajlovoj sistemy.

  ls -al /dev/tty*
crw--w--w-   1 moshkow  sys        4,   1 Jan 15 22:00 /dev/tty1
crw--w--w-   1 root     root       4,   2 Jan 15 20:37 /dev/tty2
crw--w--w-   1 root     root       4,   2 Jan 15 20:37 /dev/tty2

Razlichie - pervaya bukva v listinge komandy ls  -l

Ponyatiya "razmer" u special'nogo fajla ne  sushchestvuet. Ved' etot
fajl oboznachaet fizicheskoe ustrojstvo.  Fakticheski  eto ssylka
na sootvetstvuyushchij drajver. Vmesto dliny komanda ls pokazyvaet
dlya takih fajlov  dva chisla: "mazhornyj" i "minornyj" nomera us-
trojstv. Budem schitat' dlya yasnosti, chto "mazhor" - eto poryadkovyj
nomer drajvera ustrojstva, a "minor" -  vnutrennij nomer ustroj-
stva v tablice obsluzhivayushchego ego drajvera.



 Obychno  ih  sozdavat'  ne  nuzhno  -  oni vse uzhe est' dlya vseh
izvestnyh  nastoyashchih   i   budushchih   ustrojstv.   Sozdany   pri
installyacii sistemy.

 Ruchnoe sozdanie specfajla

   mknod /dev/filename { c | b }  MAJOR MINOR



Pri  nachal'noj  zagruzke  v  /etc/inittab  otrabatyvaet  skript
/sbin/ioinitrc, kotoryj, obnaruzhiv  novye  platy  i  ustrojstva,
avtomaticheski  zapuskaet komandu ih inicializacii, konfiguracii
i sozdaniya neobhodimyh dlya nih specfajlov.

sm. dokumentaciyu po komandam

 ioscan
 mksf
 insf



Pri zagruzke vyjti v boot-monitor i zagruzit'sya s klyuchem -r

STOP+A

ok boot -r         - rekonfiguracionnaya zagruzka

vse neobhodimye specfajly dlya vnov' podklyuchennyh ustrojstv budut
pri etom sozdany avtomaticheski.

Last-modified: Fri, 11 Aug 2000 15:29:06 GMT
Ocenite etot tekst: