Mājas lapa » » Ko „viss ir fails” nozīmē Linux?

    Ko „viss ir fails” nozīmē Linux?

    Viena no Linux un citu UNIX līdzīgu operētājsistēmu iezīmēm ir tā, ka „viss ir fails.” Tas ir pārmērīgs vienkāršojums, bet saprotot, ko tas nozīmē, palīdzēs jums saprast, kā darbojas Linux.

    Daudzas lietas Linux sistēmā parādās jūsu failu sistēmā, bet tās nav faktiski faili. Tie ir īpaši faili, kas attēlo aparatūras ierīces, sistēmas informāciju un citas lietas, tostarp nejauša skaitļu ģeneratoru.

    Šie īpašie faili var atrasties pseido vai virtuālajās failu sistēmās, piemēram, / dev, kas satur īpašus failus, kas pārstāv ierīces, un / proc, kas satur īpašus failus, kas pārstāv sistēmas un procesa informāciju.

    / proc

    Piemēram, pieņemsim, ka vēlaties atrast informāciju par savu CPU. / Proc direktorijā ir īpašs fails - / proc / cpuinfo -, kas satur šo informāciju.

    Jums nav nepieciešama īpaša komanda, kas informē jūsu CPU informāciju - jūs varat izlasīt šī faila saturu, izmantojot jebkuru standarta komandu, kas darbojas ar vienkārša teksta failiem. Piemēram, varat izmantot komandu kaķis / proc / cpuinfo izdrukāt šī faila saturu terminālā - izdrukāt CPU informāciju terminālim. Jūs varētu pat atvērt / proc / cpuinfo teksta redaktorā, lai apskatītu tā saturu.

    Atcerieties, ka / proc / cpuinfo faktiski nav teksta fails, kas satur šo informāciju - Linux kodols un proc failu sistēma pakļauj šo informāciju mums kā failu. Tas ļauj mums izmantot pazīstamus rīkus, lai apskatītu un strādātu ar šo informāciju.

    / Proc direktorijā ir arī citi līdzīgi faili, piemēram:

    • / proc / uptime - jūsu Linux kodola darbības laiku - citiem vārdiem sakot, cik ilgi jūsu sistēma ir ieslēgta, neizslēdzot.
    • / proc / version - atver jūsu Linux kodola versiju.

    / dev

    / Dev direktorijā jūs atradīsiet failus, kas pārstāv ierīces - kā arī failus, kas attēlo citas īpašas lietas. Piemēram, / dev / cdrom ir jūsu CD-ROM diskdzinis. / dev / sda ir jūsu pirmais cietais disks, bet / dev / sda1 ir pirmais nodalījums jūsu pirmajā cietajā diskā.

    Vai vēlaties pievienot CD-ROM? Palaidiet pievienošanas komandu un norādiet / dev / cdrom kā ierīci, kuru vēlaties pievienot. Vai vēlaties sadalīt savu pirmo cieto disku? Palaidiet disku nodalīšanas utilītu un norādiet / dev / sda kā cieto disku, kuru vēlaties rediģēt. Vai vēlaties formatēt pirmo nodalījumu savā pirmajā cietajā diskā? Palaidiet formatēšanas komandu un pastāstiet to formātam / dev / sda1.

    Kā redzat, šo ierīču kā failu sistēmas sastāvdaļas atainošanai ir savas priekšrocības. Failu sistēma nodrošina konsekventu “vārdu vietu”, ko visas lietojumprogrammas var izmantot, lai adresētu un piekļūtu ierīcēm.

    / dev / null, / dev / random un / dev / nulle

    / Dev failu sistēma ne tikai satur failus, kas pārstāv fiziskās ierīces. Šeit ir trīs visnozīmīgākās īpašās ierīces, kas satur:

    • / dev / null - Izmet visus tajā ierakstītos datus - domājiet par to kā miskasti vai melnu caurumu. Ja jūs kādreiz redzēsiet komentāru, kas jums saka nosūtīt sūdzības uz / dev / null - tas ir geeky veids, kā pateikt „mest tos atkritumos”.
    • / dev / random - Izveido nejaušību, izmantojot vides troksni. Tas ir nejaušs skaitļu ģenerators, kuru varat izmantot.
    • / dev / zero - ražo nulles - pastāvīgu nulles plūsmu.

    Ja jūs domājat par šiem trim failiem, jūs tos neredzēsit. Tā vietā domājiet par tiem kā instrumentiem.

    Piemēram, pēc noklusējuma Linux komandas rada kļūdas ziņojumus un citu izeju, ko tās drukā standarta izvadā, parasti terminālī. Ja vēlaties palaist komandu un nerūpēties par tā izvadi, šo izvadi var novirzīt uz / dev / null. Komandas izejas novirzīšana uz / dev / null nekavējoties to izmet. Tā vietā, lai katrai komandai būtu savs „klusais režīms”, varat izmantot šo metodi ar jebkuru komandu.

    komanda> / dev / null

    Ja vēlaties iegūt nejaušības avotu - teikt, lai izveidotu šifrēšanas atslēgu, jums nebūtu jāraksta savs izlases numuru ģenerators - jūs varētu izmantot / dev / random.

    Lai dzēstu cietā diska saturu, rakstot to 0, jums nav nepieciešama īpaša utilīta, kas veltīta diska nullei - jūs varētu izmantot standarta utilītprogrammas un / dev / nulli. Piemēram, dd komanda nolasa no vietas un raksta uz citu vietu. Nākamā komanda nolasītu nulles no / dev / nulles un raksta tos tieši uz jūsu sistēmas pirmo cietā diska nodalījumu, pilnībā izdzēšot tās saturu.

    (Brīdinājums: Šī komanda izdzēsīs visus datus jūsu pirmajā nodalījumā, ja to palaidīsit. Šo komandu var palaist tikai tad, ja vēlaties iznīcināt datus.)

    dd if = / dev / nulle = / dev / sda1

    Šeit mēs izmantojam dd ar īpašiem failiem (/ dev / zero un / dev / sda1), bet mēs varētu arī izmantot dd, lai lasītu un rakstītu faktiskajiem failiem. Tā pati komanda darbojas gan, lai manipulētu ar ierīcēm, gan strādājot ar failiem.

    Noskaidrošana

    Praksē ir precīzāk teikt, ka „viss ir baitu plūsma”, nevis “viss ir fails.” / Dev / random nav fails, bet tas noteikti ir baitu plūsma. Un, lai gan šīs lietas tehniski nav faili, tās ir pieejamas failu sistēmā - failu sistēma ir universāla „vārdu vieta”, kur viss ir pieejams. Vai vēlaties piekļūt izlases numuru ģeneratoram vai lasīt tieši no ierīces? Jūs atradīsiet gan failu sistēmā; nav nepieciešama cita veida adresēšana.

    Protams, dažas lietas nav faktiski faili - procesi, kas darbojas jūsu sistēmā, nav daļa no failu sistēmas. “Viss ir fails” ir neprecīzs, bet daudzas lietas rīkojas kā faili.