Īpaša kartotēka



Datorā operētājsistēma , uz īpašs fails ir faila tips, kas saglabāts failu sistēma . Īpašu failu dažreiz sauc arī par a ierīces fails .



Faila īpašā veida noteikšana - Linux komandrinda.

Īpaša faila mērķis ir atklāt ierīci kā failu failu sistēmā. Īpašs fails nodrošina universālu saskarni aparatūras ierīcēm (un virtuālajām ierīcēm, kuras izveido un izmanto kodols), jo rīki failam I / O var piekļūt ierīcei.



Kad dati ir sarkanā krāsā vai ierakstīti īpašā failā, darbība notiek nekavējoties un uz to neattiecas parastie failu sistēmas noteikumi.

Linux ir divu veidu īpašie faili: bloķēt īpašu failu un rakstzīmju īpašais fails .



Bloķējiet īpašos failus

TO bloķēt īpašu failu darbojas kā tieša saskarne ar bloķēšanas ierīci. Bloķēšanas ierīce ir jebkura ierīce, kas datu I / O veic datu vienībās bloki .

Īpašo failu bloķēšanas piemēri:

  • / dev / sd xn - uzstādīts starpsienas fizisko atmiņas ierīces . Vēstule x attiecas uz fizisku ierīci un numuru n attiecas uz šīs ierīces nodalījumu. Piemēram, / dev / sda1 ir pirmais nodalījums pirmajā fiziskajā atmiņas ierīcē.
  • / dev / cilpa n - cilpu ierīces. Tās ir īpašas ierīces, kas ļauj failu sistēmā failu izmantot kā bloķēšanas ierīci. Failā var būt visa pati failu sistēma, un tam var piekļūt tā, it kā tas būtu pievienots nodalījums fiziskajā atmiņas ierīcē. Piemēram, ISO diska attēla failu var uzstādīt kā cilpas ierīci.

Ja vēlaties uzzināt, cik liels bloks ir jūsu sistēmā, palaidiet ' blockdev --getbsz ierīci ' kā sakne piemēram:

sudo blockdev --getbsz /dev/sda1
4096

Šajā piemērā bloka izmērs ir 4096 baiti (4 kibibytes).

Rakstzīmju īpašie faili

TO rakstzīmju īpašais fails ir līdzīgs bloķēšanas ierīcei, bet dati tiek rakstīti ar vienu rakstzīmi (astoņi biti vai pa vienam baitam).

Īpašo rakstzīmju failu piemēri:

  • / dev / stdin ( Standarta ievade .)
  • / dev / stdout ( Standarta izeja .)
  • / dev / stderr ( Standarta kļūda .)
  • / dev / random ( PRNG kas var aizkavēt vērtības atdošanu, lai iegūtu papildu entropiju.)
  • / dev / urandom (PRNG, kas vienmēr atgriež vērtību nekavējoties, neatkarīgi no nepieciešamās entropijas.)
  • / dev / null (Nulles ierīce. Lasot no šī faila, vienmēr tiek iegūts nulles baits; rakstīšana uz šo failu veiksmīgi neko nedara.)

Linux failu tipi

Linux kodolā failu tipi tiek deklarēti galvenes failā sys / stat.h . Tipa nosaukums, simboliskais nosaukums un bitmasks katram Linux faila tipam ir norādīts zemāk.

Ierakstiet nosaukumu Simbolisks nosaukums Bitmasks
Kontaktligzda S_IFSOCK 0140000
Simboliska saite S_IFLNK 0120000
Parasts fails S_IFREG 0100000
Bloķēt īpašu failu S_IFBLK 0060000
Katalogs S_IFDIR 0040000
Rakstzīmju īpašais fails S_IFCHR 0020000
FIFO (nosaukta caurule) S_IFIFO 0010000

Kā es varu noteikt, vai fails ir īpašs?

Tests bloku īpašam

In bash , komanda ' pārbaude -b failu atgriež izejas statusu 0, ja failu ir īpašs bloks vai 1, ja failu ir cita veida vai nepastāv.

test -b /dev/sda1; echo $?  # check for block special,  echo  exit status of test  
0
test -b /dev/null; echo $?  # character special files are not block special  
1

Pārbaudiet īpašo rakstzīmi

Lai noteiktu, vai fails ir rakstzīmju īpašs, izmantojiet 'test -c failu ':

test -c /dev/null; echo $?
0

Izmantojot stat

Varat arī pārbaudīt faila tipu ar stat:

stat /dev/sda1
 File: /dev/sda1 Size: 0 Blocks: 0 IO Block: 4096  block special file  Device: 6h/6d Inode: 7998 Links: 1 Device type: 8,1 Access: (0660/brw-rw----) Uid: ( 0/ root) Gid: ( 6/ disk) Access: 2018-07-08 06:41:25.540000000 -0400 Modify: 2018-07-08 06:41:25.540000000 -0400 Change: 2018-07-08 06:41:25.540000000 -0400 Birth: -
stat /dev/random
 File: /dev/random Size: 0 Blocks: 0 IO Block: 4096  character special file  Device: 6h/6d Inode: 6518 Links: 1 Device type: 1,8 Access: (0666/crw-rw-rw-) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2018-07-08 06:41:19.676000000 -0400 Modify: 2018-07-08 06:41:19.676000000 -0400 Change: 2018-07-08 06:41:19.676000000 -0400 Birth: -