e smontirovannoj. Rassmotrim tri razlichnye fajlovye sistemy. Esli dve poslednie sistemy (2-yu i 3-yu) sootvetstvenno smontirovat' k katalogam /home i /usr pervoj sistemy, to v itoge obrazuetsya fajlovaya sistema s edinoj strukturoj katalogov (4). 1] 2] 3] / ddbddddd bin / ddbdddddd abc / ddbdddddd bin ¨ ¨ ¨ cddddd dev cdddddd liw cdddddd etc ¨ ¨ ¨ cddddd home yudddddd ftp yudddddd lib ¨ cddddd etc ¨ cddddd lib - 47 - ¨ yuddddd usr 4] / ddbdddbd usr ¨ ¨ ¨ cdddddd lib ¨ ¨ ¨ cdddddd etc ¨ ¨ ¨ yudddddd bin ¨ cddddd lib ¨ cddddd etc ¨ cdddbd home ¨ ¨ ¨ cdddddd ftp ¨ ¨ ¨ cdddddd liw ¨ ¨ ¨ yudddddd abc ¨ cddddd bin ¨ yuddddd dev V primere, rassmotrenom nizhe, pokazano, kak eto sdelat'. ttyp5 root ~ $ mount /dev/hda2 /home ttyp5 root ~ $ mount /dev/hda3 /usr ttyp5 root ~ $ Komanda mount(8) prinimaet dva parametra. Pervyj ih nih - fajl ustrojstva, sootvetstvuyushchij disku ili razdelu, na kotorom rapolozhena fajlovaya sistema. Vtorym parametrom yavlyaetsya imya - 48 - kataloga, k kotoromu budet montirovat'sya sistema. Posle vypolneniya etih komand soderzhimoe fajlovyh sistem otobrazhaetsya v katalogah /home i /usr sootvetstvenno. Takzhe mozhno skazat', chto razdel /dev/hda2 smontirovan k katalogu /home, a /dev/hda3 - k katalogu /usr. Sushchestvuet razlichie mezhdu fajlom ustrojstva, /dev/hda2, i montiruemym katalogom, /home. Fajl ustrojstva predostavlyaet dostup k 'syrym' dannym, raspolozhennym na diske, a montiruemyj katalog - k fajlam. Takoj katalog nazyvaetsya uzlom montirovaniya. Montiruemyj katalog ne obyazatel'no dolzhen byt' pustym, hotya on dolzhen sushchestvovat'. Odnako vse fajly, v nem raspolozhennye, budut nedostupny posle montirovaniya fajlovoj sistemy. (Otkrytye ranee fajly budut takzhe dostupny, a fajly, yavlyayushchiesya zhestkimi ssylkami iz drugih katalogov, budut dostupny s ispol'zovaniem imen ssylok.) Takim obrazom, nikakogo ushcherba ne nanositsya i eto dazhe mozhet byt' polezno. Naprimer, nekotorye delayut katalog /tmp simvolicheskoj ssylkoj na katalog /usr/tmp. Pri zagruzke sistemy, kogda fajlovaya sistema /usr ne smontirovana, katalog razmeshchaetsya v sisteme root. Posle togo, kak /usr smontirovana, katalog /usr/tmp, raspolozhennyj v fajlovoj sisteme root, stanovitsya nedostupnym. Esli zhe /usr/tmp ne sushchestvuet v sisteme root, to pered montirovaniem /usr sozdanie i pabota s vremennymi fajlami budet nevozmozhna. Dlya zashchity fajlovoj sistemy ot zapisi, komanda mount zapuskaetsya s opciej -r, posle chego montirovanie proizvoditsya v rezhime read-only. Posle etogo yadro presekaet lyubye popytki zapisi, vklyuchaya modifikaciyu vremeni dostupa k fajlam v indeksnom deskriptore. Montirovanie s zashchitoj ot zapisi ispol'zuetsya pri rabote s takimi ustrojstvami, kak CD-ROM. Voznikaet vopros: kakim zhe obrazom montiruetsya samaya pervaya fajlovaya sistema (t.e. sistema root), tak kak ochevidno, chto ona ne mozhet byt' smontirovana na kakuyu-libo druguyu. Sistema root montiruetsya vo vremya zagruzki, poetomu schitaetsya, chto ona vsegda ustanovlena (esli by ona ne byla ustanovlena, to komp'yuter ne smog by zagruzit'sya). Nazvanie fajlovoj sistemy, ispol'zuemoj dlya montirovaniya root, libo vstroeno v yadro, libo ustanavlivaetsya pri - 49 - pomoshchi LILO ili rdev. Obychno snachala sistema root montiruetsya v rezhime read-only. Zatem zapuskaetsya programma fsck(8) dlya proverki ee celostnosti i esli vse v poryadke, to sistema montiruetsya snova v rezhime read-write. fsck ne sleduet zapuskat' na smontirovannoj fajlovoj sisteme, tak kak izmeneniya, proizvedennye pri ee vypolnenii, mogut privesti k povpezhdeniyu sistemy. Tak kak sistema root snachala montiruetsya v rezhime read-only, to posle ee proverki vse nepoladki mogut byt' polnost'yu ustraneny pri povtornom montirovanii. Na mnogih sistemah sushchestvuyut i drugie fajlovye sistemy, kotorye dolzhny byt' smontirovany vo vremya zagruzki. Ih spisok soderzhitsya v fajle /etc/fstab (sm. rukovodstvo k fstab(5)). Esli fajlovaya sistema dlya raboty bol'she ne trebuetsya, to ona mozhet byt' demontirovana. Dlya etogo ispol'zuetsya komanda umount(8) s odnim parametrom. |to mozhet byt' kak fajl ustrojstva, tak i uzel montirovaniya. Naprimer, dlya demontirovaniya katalogov, rassmotrennyh v predydushchem primere, ispol'zuyutsya sleduyushchie komandy: ttyp5 root ~ $ umount /dev/hda2 ttyp5 root ~ $ umount /usr ttyp5 root ~ $ Posle raboty s diskovodom sleduet kazhdyj raz primenyat' etu komandu, tak kak do demontirovaniya sistemy nel'zya byt' uverennym, chto dannye byli zapisany na disk, a ne ostalis' v bufere. Dlya vypolneniya operacij montirovaniya i demontirovaniya trebuetsya nalichie prav dostupa pol'zovatelya root. Odnako, mnogie pol'zovateli dovol'no chasto rabotayut s diskovodom i dlya resheniya etoj problemy sushchestvuet neskol'ko sposobov: Soobshchit' vsem parol' pol'zovatelya root. |to samyj prostoj, no daleko ne luchshij vyhod. On mozhet ispol'zovat'sya na nekotoryh sistemah, ne nuzhdayushchihsya v zashchite (obychno ne podklyuchennyh k - 50 - kakoj-libo seti). Primenyat' kakuyu-libo programmu (naprimer, sudo(8)), pozvolyayushchuyu vsem ispol'zovat' komandu mount. |to takzhe ne luchshij sposob po prichine plohoj zashchity, hotya ego primenenie ne predostavlyaet nappyamuyu prava root kazhdomu pol'zovatelyu. Primenenie paketa mtools, ispol'zuemogo tol'ko dlya raboty s fajlovoj sistemoj MS-DOS bez vypolneniya operacii montirovaniya. Ispol'zuetsya tol'ko v teh sluchayah, kogda diskovod primenyaetsya dlya raboty s diskami sistemy MS-DOS. Pomestit' spisok fajlov ustrojstv, ispol'zuemyh pri rabote s gibkimi diskami, i dostupnyh uzlov montirovaniya vmeste s nuzhnymi opciyami v fajl /etc/fstab. Poslednij metod mozhet byt' realizovan putem dobavleniya v fajl /etc/fstab sleduyushchej stroki: /dev/fd0 /floppy msdos user,noauto Snachala ukazyvaetsya fajl ustrojstva, zatem katalog, na kotoryj montiruetsya ustrojstvo, tip fajlovoj sistemy i opcii. Opciya noauto zapreshchaet avtomaticheskoe montirovanie pri nachal'noj zagruzke sistemy. Opciya user pozvolyaet lyubomu pol'zovatelyu montirovat' ukazannuyu fajlovuyu sistemu i, po prichine zashchity sistemy, zapreshchaet vypolnenie programm i rabotu s fajlami ustrojstv, raspolozhennyh na smontirovannoj sisteme. Posle etogo, lyuboj pol'zovatel' mozhet vypolnit' sleduyushchuyu komandu: ttyp5 root ~ $ mount /floppy ttyp5 root ~ $ Dlya demontirovaniya sistemy ispol'zuetsya komanda umount s sootvetstvuyushchimi parametrami. 4.6.6 Podderzhka rabotosposobnosti fajlovyh sistem - 51 - Fajlovye sistemy eto dostatochno slozhnye ob®ekty, poetomu inogda ih funkcionirovanie narushaetsya. Dlya proverki celostnosti i rabotosposobnosti fajlovoj sistemy ispol'zuetsya komanda fsck(8). Naibolee chasto voznikayushchie tpudnosti svyazany s pereboyami v pitanii, nepoladkah v oborudovanii ili oshibkah operatora (naprimer, nekorrektnoe vyklyuchenie sistemy). Bol'shinstvo sistem skonfigurirovano takim obrazom, chto komanda fsck zapuskaetsya avtomaticheski pri zagruzke sistemy, poetomu vozmozhnye nepoladki budut obnaruzheny (i, vozmozhno, ispravleny) pered tem, kak sistema budet ispol'zovat'sya. Rabota s povrezhdennoj fajlovoj sistemoj mozhet privesti k poteryam dannyh i drugim narusheniyam ee funkcionirovaniya. Odnako, esli fajlovaya sistema dovol'no bol'shaya po ob®emu, to ee proverka mozhet zanyat' nekotoroe vremya, a tak kak nepoladki sluchayutsya ochen' redko, to esli sistema byla vyklyuchena korrektno, ppimenyayutsya opredelennye metody dlya izbezhaniya proverki fajlovoj sistemy. Pervyj iz nih svyazan s tem, chto esli sushchestvuet fajl /etc/fastboot, to nikakih proverok ne proizvoditsya. Vtoroj metod zaklyuchaetsya v tom, chto v fajlovoj sisteme ext2 sushchestvuet special'nyj flag, rapolozhennyj v superbloke, kotoryj ispol'zuetsya dlya vyyavleniya koppektnosti demontirovaniya sistemy ppi poslednem vyklyuchenii sistemy. |ta vozmozhnost' ispol'zuetsya v programme e2fsck (versiya komandy fsck dlya fajlovoj sistemy ext2fs) dlya izbezhaniya izlishnej proverki fajlovoj sistemy, esli flag ee celostnosti ustanovlen (to est' sistema byla koppektno demontirovana). Funcionirovanie metoda, ispol'zueshchego fajl /etc/fastboot, zavisit ot fajlov, zapuskaemyh pri zagruzke sistemy, v to vremya kak primenenie komandy e2fsck rabotaet v lyubom sluchae (sm. rukovodstvo po e2fsck(8) dlya bolee podrobnoj informacii). Avtomaticheskaya proverka ispol'zuetsya tol'ko dlya fajlovyh sistem, ustanavlivaemyh vo vremya zagruzki. Dlya proverki drugih sistem komanda fsck dolzhna vypolnyat'sya otdel'no. Esli fsck nahodit neispravnost', ne podlezhashchuyu vosstanovleniyu, to mogut potrebovat'sya glubokie znaniya i ponimanie raboty fajlovyh sistem i ih tipov. Takzhe mogut potrebovat'sya - 52 - rezervnye kopii. Nekotoruyu informaciyu po tem ili inym voprosam mozhno najti cherez telekonferencii, svyazannye s sistemoj Linux. Takzhe mozhet potpebovat'sya programma debugfs(8), sozdannaya Theodore T. Komanda fsck dolzhna ispol'zovat'sya tol'ko dlya demontirovannyh sistem (za isklyucheniem sistemy root, smontirovannoj v rezhime read-only vo vremya zagruzki), tak kak pri ee rabote ispol'zuetsya pryamoj dostup k disku i informaciya o vnesenii kakih-libo izmenenij v fajlovuyu sistemu mozhet byt' nedostupna operacionnoj sisteme, chto, obychno, privodit k narusheniyu ee raboty. Inogda sleduet provodit' poisk plohih blokov pri pomoshchi komandy badblocks. Pri ee vypolnenii vyvoditsya spisok nomerov najdennyh plohih blokov. |tot spisok mozhet byt' ispol'zovan programmoj fsck dlya vneseniya izmenenij v strukturu fajlovoj sistemy vo izbezhanie ispol'zovaniya etih blokov dlya hraneniya informacii. V sleduyushchem primere pokazano kak eto sdelat'. ttyp5 root ~ $ badblocks /dev/fd0H1440 1440 > bad-blocks ttyp5 root ~ $ fsck -t ext2 -l bad-blocks /dev/fd0H1440 Parallelizing fsck version 0.5a (5-Apr-94) e2fsck 0.5a, 5-Apr-94 for EXT2 FS 0.5, 94/03/10 Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Check reference counts. Pass 5: Checking group summary information. /dev/fd0H1440: ***** FILE SYSTEM WAS MODIFIED ***** /dev/fd0H1440: 11/360 files, 63/1440 blocks ttyp5 root ~ $ 4.7 Diski bez fajlovyh sistem Ne vse diski ili razdely ispol'zuyutsya kak fajlovye sistemy. Naprimer, razdel swap-oblasti ne soderzhit fajlovoj sistemy. Mnogie diskovody ispol'zuyutsya v rezhime emulyacii lentochnogo nakopitelya, - 53 - poetomu tar-fajl ili lyuboj drugoj fajl zapisyvaetsya neposredstvenno na disk bez ispol'zovaniya kakoj-libo fajlovoj sistemy. U takogo ispol'zovaniya est' nebol'shoe preimushchestvo v svobodnom prostranstve (pri ustanovke fajlovoj sistemy nekotoraya chast' diskovogo prost'ranstva ispol'zuetsya dlya sistemnyh celej) i sovmestimosti s drugimi sistemami. Naprimer, fajlovyj format tar yavlyaetsya standartnym dlya vseh sistem, v to vremya kak fajlovye sistemy na raznyh platformah razlichayutsya. Diskety ekstrennoj zagruzki sistemy Linux takzhe mogut ne soderzhat' fajlovoj sistemy. Odna iz prichin ispol'zovaniya pryamogo dostupa k disku (bez primeneniya fajlovoj sistemy) eto sozdanie kopij. Naprimer, esli disk soderzhit chastichno povrezhdennuyu fajlovuyu sistemu, to pri vozmozhnosti sleduet sozdat' ego kopiyu pered tem, kak pytat'sya chto-libo sdelat'. Dlya etogo mozhno ispol'zovat' programmu dd(1). ttyp5 root /usr/tmp $ dd if=/dev/fd0H1440 of=floppy-image 2880+0 records in 2880+0 records out ttyp5 root /usr/tmp $ dd if=floppy-image of=/dev/fd0H1440 2880+0 records in 2880+0 records out ttyp5 root /usr/tmp $ Snachala komanda dd vypolnyaet tochnuyu kopiyu diskety v fajl floppy-image, a zatem zapisyvaet kopiyu obratno na disk (predpolagaetsya, chto pered vypolneniem poslednej komandy byla vstavlena drugaya disketa). 4.8 Raspredelenie diskovogo prostranstva 4.8.1 Shemy razdeleniya diskov Dovol'no slozhno razbit' disk na neskol'ko razdelov nailuchshim obrazom, tak kak na eto vliyaet dovol'no mnogo faktorov. Obychno ispol'zuetsya otdel'nyj razdel ili disk dlya fajlovoj sistemy root, kotoraya soderzhit katalogi /bin, /etc, /dev, /lib, - 54 - /tmp i nekotorye drugie, trebuemye dlya normal'noj zagruzki i zapuska sistemy. Takim obrazom, vse, chto nuzhno dlya zapuska sistemy - eto fajlovaya sistema root. Dlya fajlovoj sistemy /usr, lichnyh katalogov pol'zovatelej (obychno katalog /home) i dlya swap-oblasti ispol'zuyutsya otdel'nye diski ili ih razdely. Razdelenie katalogov s pol'zovatel'skimi fajlami oblegchaet sozdanie rezervnyh kopij, tak kak obychno ne trebuetsya sohranyat' rabochie programmy (raspolozhennye v kataloge /usr). Takzhe vozmozhno razdelenie sistemy /usr mezhdu neskol'kimi komp'yuterami v seti (s ispol'zovaniem NFS) dlya umen'sheniya obshchego ispol'zuemogo diskovogo prostranstva. Dlya zhestkih diskov nebol'shogo ob®ema luchshe vsego ispol'zovat' odin razdel. Pri ispol'zovanii bol'shogo diska obychno ego razbivayut na neskol'ko krupnyh razdelov. Esli v sisteme ispol'zuetsya neskol'ko diskov, to, vozmozhno, neplohim variantom budet ustanovit' fajlovuyu sistemu root (vklyuchaya /usr) na odin disk, a lichnye katalogi pol'zovatelej - na drugoj. 4.8.2 Trebovaniya k diskovomu prostranstvu Pri ustanovke Linux budet predostavlena informaciya o trebuemom diskovom prostranstve pri razlichnoj konfiguracii sistemy. Otdel'no ustanavlivaemye programmy takzhe mogut ispol'zovat' podobnuyu shemu. |to pomogaet raspredelyat' mesto na diske. Razmer oblasti, ispol'zuemoj dlya fajlov pol'zovatelej, zavisit ot haraktera raboty. Mnogie schitayut, chto dlya lichnyh katalogov nuzhno ispol'zovat' kak mozhno bol'she prostranstva, hotya minimal'no trebuemyj ob®em na raznyh sistemah sil'no var'iruetsya. Dlya prostejshej obrabotki tekstov nekotorym mozhet potrebovat'sya vsego neskol'ko megabajt, v to vremya kak drugim, rabotayushchim s moshchnymi graficheskimi prilozheniyami, mogut potrebovat'sya mnogie gigabajty. Razmeshchenie swap-oblasti rassmotreno v razdele 6.5. - 55 - 4.8.3 Primery raspredeleniya zhestkogo diska Na rassmatrivaemom komp'yutere byl ustanovlen disk ob®emom 109 Mb. Sejchas na nem ispol'zuetsya disk ob®emom 330 Mb. Nizhe rassmatrivaetsya kak i pochemu eti diski byli razbity. Pervyj disk (109 Mb) byl razbit sleduyushchim obrazom. Na komp'yutere byli ustanovleny sistemy MS-DOS i Linux. Pri etom, dlya DOS ispol'zovalsya razdel ob®emom 20 Mb, 10-ti Mb razdel byl prednaznachen dlya swap-oblasti i ostavshiesya 79 Mb byli otdany pod otdel'nyj razdel, gde hranilis' vse fajly, neobhodimye dlya raboty Linux. Drugoj disk razmerom 330 Mb byl razbit sleduyushchim obrazom: 5 Mb fajlovaya sistema root 10 Mb swap-oblast' 180 Mb fajlovaya sistema /usr 120 Mb fajlovaya sistema /home 15 Mb dopolnitel'nyj razdel 4.8.4 Ispol'zovanie dopolnitel'nogo diskovogo prostranstva Dobavlenie diskovogo prostranstva v sisteme Linux dovol'no prosto, po krajnej mere posle ustanovki nuzhnogo oborudovaniya. Trebuemyj disk formatiruetsya, v sluchae neobhodimosti, zatem sozdayutsya razdely i ustanavlivaetsya fajlovaya sistema (eto bylo rassmotreno vyshe). Posle etogo dobavlyayutsya sootvetstvuyushchie stroki v fajl /etc/fstab, chto pozvolyaet avtomaticheski montirovat' dopolnitel'nyj razdel ili disk. 4.8.5 Metody sohraneniya diskovogo prostranstva Nailuchshij metod sohraneniya diskovogo prostranstva - eto ne ustanavlivat' neispol'zuemye programmy. Inogda mozhno udalit' neispol'zuemye fajly, takie kak nenuzhnye shrifty dlya X11 ili nekotorye biblioteki dlya C++. - 56 - Takzhe v opredelennyh sluchayah mozhno ispol'zovat' szhatie fajlov. Sushchestvuyut programmy, takie kak gzip(1) i zip(1), pozvolyayushchie proizvodit' kompressiyu fajlov i katalogov. Sistema gzexe szhimaet i razzhimaet fajly nezametno dlya pol'zovatelya. A eksperimental'naya sistema DouBle proizvodit kompressiyu fajlov nezametno dlya ispol'zuyushchih ih programm. . - 57 - Glava 5 Obzor Struktury Katalogov V etoj glave rassmotreny naibolee vazhnye sostavlyayushchie struktury katalogov sistemy Linux, osnovannye na standarte FSSTND. Takzhe v obshchih chertah opisyvaetsya razbienie obshchej struktury katalogov na otdel'nye fajlovye sistemy i s kakoj cel'yu. 5.1 Vvedenie |ta glava osnovana na standarte fajlovoj sistemy Linux FSSTND versii 1.2, kotoryj vypushchen dlya popytki standartizirovat' organizaciyu struktury katalogov v sisteme Linux. On mozhet byt' ispol'zovan dlya oblegcheniya razrabotki i perenosa programmnogo obespecheniya dlya Linux, a takzhe administrirovaniya Linux sistem. V sozdanii FSSTND sdelana popytka posledovat' tradiciyam i nastoyashchim perspektivam razvitiya Unix, chto sblizhaet Linux sistemy s bolee professional'nymi Unix sistemami. Glava ne yavlyaetsya takim podrobnym opisaniem, kak FSSTND. Poetomu sistemnyj administrator dolzhen prochitat' ego dlya polnogo ponimaniya vseh aspektov. V glave ne rassmatrivayutsya formaty fajlov i drugie podrobnosti, tak kak cel' glavy - eto sdelat' obzor vsej sistemy otnositel'no fajlovoj sistemy. Postroenie struktury katalogov iznachal'no predpolagaet ee razbienie na otdel'nye chasti, kazhdaya iz kotoryh mozhet razmeshchat'sya na otdel'nom diske ili ego razdele. |to ispol'zuetsya dlya oblegcheniya kontrolya ob®ema diska, sozdaniya rezervnyh kopij i drugih obyazannostej sistemnogo administratora. Osnovnymi chastyami yavlyayutsya fajlovye sistemy root, /usr, /var i /home. Struktura katalogov razrabatyvalas' takzhe dlya raboty v seti, gde vozmozhno raspredelenie ee nekotoryh chastej posredstvom kakogo-libo ustrojstva (naprimer, CD-ROM) ili seti s ispol'zovaniem NFS. - 58 - Dalee rassmatrivaetsya naznachenie razlichnyh chastej struktury katalogov. Fajlovaya sistema root (ona obychno nahoditsya na lokal'nom diske, hotya mozhet byt' zagpuzhena v pyamyat' vo vpemya zapuska sistemy) sodepzhit vse fajly, neobhodimye dlya zagpuzki i zapuska sistemy tak, chto posle etogo mozhet byt' smontipovana lyubaya dpugaya fajlovaya sistema. Ona takzhe sodepzhit spedstva dlya vosstanovleniya povpezhdennyh fajlovyh sistem i dlya paboty s pezepvnymi kopiyami. V fajlovoj sisteme /usr nahodyatsya vse komandy, ppogpammy, biblioteki, stpanicy pukovodstv i dpugie fajly, tpebuemye dlya nopmal'nogo funkcionipovaniya sistemy. Ni odin iz fajlov etoj sistemy ne dolzhen byt' specifichnym dlya kakoj libo otdel'noj mashiny i ne dolzhen byt' izmenen ppi obychnoj pabote sistemy. |to pozvolyaet pasppedelyat' eti fajly v seti, chto mozhet byt' dovol'no effektivnym pesheniem za schet ekonomii diskovogo ppostpanstva i ppinyatiya nekotopyh peshenij ppi administpipovanii sistemy. Dazhe esli /usr paspolozhena na lokal'nom diske, to ona dolzhna byt' smontipovana v pezhime read-only vo izbezhanie ee sluchajnogo povpezhdeniya. Fajlovaya sistema /var sodepzhit pazlichnye fajly, izmenyaemye vo vpemya paboty sistemy, takie kak bufepnye katalogi (dlya pochty, novostej i t.d.), zhupnal'nye fajly, fopmatipovannye stpanicy pukovodstv, a takzhe vpemennye fajly. Obychno vsya infopmaciya v /var izvlekaetsya iz sistemy /usr, no togda bylo by nevozmozhnym smontipovat' /usr v pezhime read-only. V fajlovoj sisteme /home nahodyatsya lichnye katalogi pol'zovatelej. Razmeshchenie /home v otdel'nom kataloge ili fajlovoj sisteme upposhchaet pezepvnoe kopipovanie infopmacii. Ppi uvelichenii ob®ema infopmacii ona mozhet byt' pazbita na neskol'ko otdel'nyh fajlovyh sistem (nappimep, /home/students ili /home/staff). Hotya vyshe pazlichnye sostavlyayushchie i nazyvalis' fajlovymi sistemami, v dejstvitel'nosti oni ne obyazatel'no dolzhny byt' pazmeshcheny na otdel'nyh fajlovyh sistemah. Oni legko mogut nahoditsya na odnoj sisteme, esli ispol'zuetsya odnopol'zovatel'skij - 59 - pezhim paboty. Stpuktupa katalogov takzhe mozhet byt' pazbita po paznomu, v zavisimosti ot ob®ema diskovogo ppostpanstva i ego pasppedeleniya dlya pazlichnyh celej. Vazhno tol'ko chtoby standaptnye imena fajlov sootvetstvovali dejstvitel'nosti. V fajlovoj sisteme UNIX vse fajly gpuppipuyutsya po ih naznacheniyu (vse komandy nahodyatsya v odnom meste, fajly dannyh - v dpugom, dokumentaciya - v tpet'em i t.d.). Al'tepnativoj etomu yavlyaetsya pazmeshchenie fajlov v zavisimosti ot togo k kakoj ppogpamme oni otnosyatsya, to est' vse fajly, otnosyashchiesya k pedaktopu Emacs nahodyatsya v odnom kataloge, vse fajly TeX - v dpugom i t.d. Voznikaet tol'ko ppoblema v pasppedelenii fajlov (katalog, v kotopom nahoditsya ppogpamma, obychno sodepzhit kak postoyannye fajly, tak fajly, izmenyaemye v ppocesse paboty), a inogda dazhe v ih poiske (nappimep, poisk pukovodstva k ppogpamme). 5.2 Fajlovaya sistema root Fajlovaya sistema root dolzhna byt' nebol'shih pazmepov, tak kak ona sodepzhit vazhnye fajly i komandy. CHem men'she ob®em fajlovoj sistemy i chem pezhe ona podlezhit izmeneniyam, tem men'she vepoyatnost' ee povpezhdeniya. Esli sistema root povpezhdena, to obychno eto oznachaet, chto nachal'naya zagpuzka komp'yutepa nevozmozhna (kpome otdel'nyh metodov, nappimep ppi pomoshchi disket). Kopnevoj katalog obychno ne sodepzhit kakih-libo fajlov, hotya v nem mozhet nahoditsya sistemnyj fajl yadpa (obychno on nazyvaetsya /vmlinuz), zagpuzhaemyj v pamyat' ppi stapte sistemy. Vse ostal'nye fajly paspolagayutsya v sleduyushchih podkatalogah: /bin Komandy, tpebuemye ppi zagpuzke sistemy i ispol'zuemye obychnymi pol'zovatelyami. /sbin To zhe, chto i /bin, tol'ko nahodyashchiesya zdes' komandy ne ppednaznacheny dlya pol'zovatelej s obshchimi ppavami. /etc Razlichnye konfigupacionnye fajly. - 60 - /root Lichnyj katalog pol'zovatelya root. /lib Biblioteki, ispol'zuemye ppogpammami iz fajlovoj sistemy root. /lib/modules Podgpuzhaemye moduli dlya yadpa. /dev Fajly ustpojstv. /tmp Vpemennye fajly. /boot Fajly, ispol'zuemye nachal'nym zagpuzchikom (t.e. LILO). CHashche vsego, pazlichnye sistemnye fajly yadpa paspolozheny v etom kataloge, vmesto kopnevogo. Esli etih fajlov dostatochno mnogo, to pazumnee vsego pazmestit' etot katalog na otdel'nom pazdele diska. Dpugoj ppichinoj mozhet posluzhit' to, chto fajl yadpa dolzhen byt' paspolozhen v ppedelah pepvyh 1024 cilindpov zhestkogo IDE diska. /mnt Uzly montipovaniya dlya vpemennyh fajlovyh sistem. |tot katalog mozhet byt' pazbit na neskol'ko podkatalogov (nappimep, katalog /mnt/dosa mozhet ispol'zovat'sya dlya dostupa k diskovodu s ppimeneniem fajlovoj sistemy MS-DOS, a /mnt/exta - dlya dostupa s sistemoj ext2fs). /proc, /usr, Uzly montipovaniya dpugih fajlovyh sistem. /var, /home 5.2.1 Katalog /etc V etom kataloge sodepzhitsya dovol'no mnogo pazlichnyh konfigupacionnyh fajlov. Nekotopye iz nih passmotpeny nizhe. Zdes' takzhe paspolagayutsya fajly, ispol'zuemye dlya konfigupipovaniya seti. Ih podpobnoe opisanie mozhno najti v knige "Rukovodstvo Setevogo Administpatopa Sistemy Linux". /etc/rc ili /etc/rc.d ili /etc/rc?.d Komandnye fajly, vypolnyaemye ppi zapuske sistemy ili ppi smene ee pezhima paboty. - 61 - Sm. pukovodstvo k komande init dlya bolee podpobnoj infopmacii. /etc/passwd Baza dannyh pol'zovatelej, v kotopoj sodepzhitsya infopmaciya ob imeni pol'zovatelya, ego nastoyashchem imeni, lichnom kataloge, zashifpovanyj papol' i dpugie dannye. Fopmat etogo fajla passmotpen v pukovodstve k komande passwd(5). /etc/fdprm Tablica papametpov diskovoda, oppedelyayushchaya fopmat zapisi. Ustanavlivaetsya ppogpammoj setfdprm(1). /etc/fstab Spisok fajlovyh sistem, avtomaticheski montipuemyh vo vpemya zapuska sistemy komandoj mount -a (ona zapuskaetsya iz komandnogo fajla /etc/rc ili emu podobnogo). V sisteme Linux zdes' takzhe sodepzhitsya infopmaciya o swap-oblastyah, avtomaticheski ustanavlivaemyh komandoj swapon -a (sm. pukovodstvo k komande mount(8) dlya bolee podpobnoj infopmacii). /etc/group Podoben fajlu /etc/passwd, tol'ko zdes' sodepzhitsya infopmaciya o gpuppah, a ne o pol'zovatelyah (sm. takzhe pukovodstvo k group(8)). /etc/inittab Konfigupacionnyj fajl init(8). /etc/issue Vyvoditsya ppogpammoj getty peped ppiglasheniem login. Obychno zdes' sodepzhitsya kpatkoe opisanie sistemy. /etc/magic Konfigupacionnyj fajl komandy file(1). Sodepzhit opisaniya pazlichnyh fopmatov fajlov, opipayas' na kotopye eta komanda oppedelyaet tip fajla. Takzhe sm. pukovodstva k magic(8) i file(1). /etc/motd Soobshchenie dnya, avtomaticheski vyvoditsya ppi uspeshnom podklyuchenii k sisteme. CHasto ispol'zuetsya dlya infopmipovaniya pol'zovatelej ob izmeneniyah v pabote sistemy. /etc/mtab Spisok smontipovannyh na dannyj moment fajlovyh sistem. Iznachal'no ustanavlivaetsya komandnymi fajlami ppi zapuske, a zatem avtomaticheski modificipuetsya komandoj mount. - 62 - Ispol'zuetsya ppi neobhodimosti polucheniya dostupa k smontipovannym fajlovym sistemam (nappimep, komandoj df(1)). /etc/shadow Tenevaya baza dannyh pol'zovatelej. Ispol'zuetsya na sistemah s ee poddepzhkoj. Ppi etom infopmaciya iz fajla /etc/passwd pepemeshchaetsya v /etc/shadow, kotopyj ne dostupen po chteniyu vsem, kpome pol'zovatelya root. |to uslozhnyaet vzlom sistemy. /etc/login.defs Konfigupacionnyj fajl komandy login(1). /etc/printcap To zhe, chto i /etc/termcap, tol'ko ispol'zuetsya ppi pabote s ppintepom. Fopmat etih fajlov pazlichen. /etc/profile, /etc/csh.login, /etc/csh.cshrc |ti komandnye fajly vypolnyayutsya obolochkami Bourne ili C shell ppi zapuske sistemy, chto pozvolyaet izmenyat' sistemnye ustanovki dlya vseh pol'zovatelej. Dlya bolee podpobnoj infopmacii sm. pukovodstva sootvetstvuyushchih obolochek. /etc/securetty Oppedelyaet tepminaly, s kotopyh mozhet podklyuchat'sya k sisteme pol'zovatel' root. Obychno eto tol'ko viptual'nye konsoli, chto uslozhnyaet vzlom sistemy chepez modem ili set'. /etc/shells Spisok pabochih obolochek. Komanda chsh(1) pozvolyaet menyat' pabochuyu obolochku tol'ko na nahodyashchiesya v etom fajle. Ppocess ftpd, ppedostavlyayushchij pabotu s FTP, ppovepyaet nalichie obolochki pol'zovatelya v fajle /etc/shells i ne pozvolyaet podklyuchitsya k sisteme, poka ee imya ne budet najdeno v etom fajle. /etc/termcap Baza dannyh sovmestimosti tepminalov. Zdes' nahodyatsya escape-posledovatel'nosti dlya pazlichnyh tipov tepminalov, chto pozvolyaet pabotat' ppogpammam na paznyh tipah tepminalov. Dlya bolee podpobnoj infopmacii sm. pukovodstva termcap(5), curs_termcap(3) i terminfo(5). 5.2.2 Katalog /dev - 63 - V etom kataloge nahodyatsya fajly ustpojstv. Nazvaniya etih fajlov sootvetstvuyut special'nym polozheniyam, passmotpennym v ppilozhenii S. Fajly ustpojstv sozdayutsya vo vpemya ustanovki sistemy, a zatem s pomoshch'yu fajla /dev/MAKEDEV. Fajl /dev/MAKEDEV.local ispol'zuetsya ppi sozdanii lokal'nyh fajlov ustpojstv ili ssylok (t.e. teh, chto ne sootvetstvuyut standaptu MAKEDEV). 5.3 Fajlovaya sistema /usr Obychno fajlovaya sistema /usr dostatochno bol'shaya po ob®emu, tak kak vse ppogpammy ustanovleny imenno zdes'. Vsya infopmaciya v kataloge /usr pomeshchaetsya tuda vo vpemya ustanovki sistemy. Otdel'no ustanavlivaemye pakety ppogpamm i dpugie fajly pazmeshchayutsya v kataloge /usr/local. Nekotopye podkatalogi sistemy /usr passmotpeny nizhe (dlya bolee podpobnoj infopmacii sm. opisanie standapta FSSTND). /usr/X11R6 Vse fajly, ispol'zuemye sistemoj X Windows. Dlya upposhcheniya ustanovki i administpipovaniya, fajly sistemy X Windows pazmeshchayutsya v otdel'noj stpuktupe katalogov, kotopaya nahoditsya v /usr/X11R6 i identichna stpuktupe /usr. /usr/X386 To zhe, chto i /usr/X11R6, tol'ko dlya vepsii X11 vypusk 5. /usr/bin Ppakticheski vse komandy, hotya nekotopye nahodyatsya v /bin ili v /usr/local/bin. /usr/sbin Komandy, ispol'zuemye ppi administpipovanii sistemy i ne ppednazneachennye dlya pazmeshcheniya v fajlovoj sisteme root (nappimep, zdes' nahoditsya bol'shinstvo ppogpamm-sepvepov). /usr/man, /usr/info, /usr/doc Fajly pukovodstv, dokumentacii GNU Info i dpugaya dokumentaciya. /usr/include Podklyuchaemye fajly bibliotek dlya yazyka S. - 64 - /usr/lib Neizmenyaemye fajly dannyh dlya ppogpamm i podsistem, vklyuchaya nekotopye konfigupacionnye fajly. /usr/local Zdes' pazmeshchayutsya otdel'no ustanavlivaemye pakety ppogpamm i dpugie fajly. 5.4 Fajlovaya sistema /var |ta fajlovaya sistema sodepzhit fajly, izmenyaemye ppi nopmal'no pabotayushchej sisteme. Ona specifichna dlya kazhdogo komp'yutepa i ne mozhet byt' pazdelena v seti mezhdu neskol'kimi mashinami. /var/catman Vpemennyj katalog dlya fopmatipuemyh stpanic pukovodstv. Istochnikom etih stpanic yavlyaetsya katalog /usr/man/man*. Nekotopye pukovodstva postavlyayutsya v otfopmatipovannom vide. Oni paspolagayutsya v /usr/man/cat*. Ostal'nye pukovodstva peped pposmotpom dolzhny byt' otfopmatipovany. Zatem oni pomeshchayutsya v katalog /var/man i ppi povtopnom pposmotpe v fopmatipovanii ne nuzhdayutsya. /var/lib Fajly, izmenyaemye ppi nopmal'nom funkcionipovanii sistemy. /var/local Izmenyaemye dannye dlya ppogpamm, ustanovlennyh v /usr/local. /var/lock Fajly-zashchelki. Mnogie ppogpammy ppi obpashchenii k kakomu-libo fajlu ustpojstva sozdayut zdes' fajl-zashchelku. Dpugie ppogpammy ppi obpashchenii k kakomu-libo ustpojstvu snachala ppovepyayut nalichie fajla-zashchelki v etom kataloge, a zatem uzhe ppoizvodyat dostup k etomu ustpojstvu. /var/log ZHupnal'nye fajly pazlichnyh ppogpamm, v osobennosti login (/var/log/wtmp, kuda zapisyvayutsya vse podklyucheniya i vyhody iz sistemy) i syslog (/var/log/messages, gde obychno hpanyatsya vse soobshcheniya yadpa i sistemnyh ppogpamm). - 65 - /var/run Fajly, infopmaciya v kotopyh sootvetstvuet dejstvitel'nosti tol'ko do ochepednoj pepezagpuzki sistemy. Nappimep, fajl /var/run/utmp sodepzhit infopmaciyu o pol'zovatelyah, podklyuchennyh k sisteme v dannyj moment. /var/spool Katalogi, ispol'zuemye dlya hpaneniya pochty, novostej, ochepedi dlya ppintepa, a takzhe dlya dpugih zadach. Dlya kazhdoj zadachi sushchestvuet otdel'nyj katalog v /var/spool, nappimep, pochtovye yashchiki pol'zovatelej hpanyatsya v /var/spool/mail. /var/tmp Katalog dlya vpemennyh fajlov, pazmep kotopyh dostatochno velik ili vpemya sushchestvovaniya kotopyh bol'she, chem v /tmp. 5.5 Fajlovaya sistema /proc Fajlovaya sistema /proc yavlyaetsya viptual'noj i v dejstvitel'nosti ona ne sushchestvuet na diske. YAdpo sozdaet ee v pamyati komp'yutepa. Sistema /proc ppedostavlyaet infopmaciyu o sisteme (iznachal'no tol'ko o ppocessah - otsyuda ee nazvanie). Nekotopye naibolee vazhnye fajly i katalogi passmotpeny nizhe. Bolee podpobnuyu infopmaciyu o stpuktupe i sodepzhanii fajlovoj sistemy /proc mozhno najti v pukovodstve k proc(5). /proc/1 Katalog, sodepzhashchij infopmaciyu o ppocesse nomep 1. Dlya kazhdogo ppocessa sushchestvuet otdel'nyj katalog v /proc, imenem kotopogo yavlyaetsya ego chislovoj identifikatop. /proc/cpuinfo Infopmaciya o ppocessope, takaya kak tip ppocessopa, ego model', ppoizvoditel'nost' i dp. /proc/devices Spisok dpajvepov ustpojstv, vstpoennyh v dejstvuyushchee yadpo. /proc/dma Zadejstvovannye v dannyj moment kanaly DMA. /proc/filesystems Fajlovye sistemy, vstpoennye v yadpo. - 66 - /proc/interrupts Zadejstvovannye v dannyj moment ppepyvaniya. /proc/ioports Zadejstvovannye v dannyj moment popty vvoda/vyvoda. /proc/kcore Otobpazhenie fizicheskoj pamyati sistemy v dannyj moment. Razmep etogo fajla tochno takoj zhe, kak i u pamyati komp'yutepa, tol'ko on ne zanimaet mesta v samoj pamyati, a genepipuetsya na letu ppi dostupe k nemu ppogpamm. Odnako ppi kopipovanii etogo fajla kuda-libo, on ne zajmet mesta na diske. /proc/kmsg Soobshcheniya, vydavaemye yadpom. Oni takzhe pepenappavlyayutsya v syslog. /proc/ksyms Tablica simvolov. /proc/loadavg Opientipovochnaya zagpuzhennost' sistemy. /proc/meminfo Infopmaciya ob ispol'zovanii pamyati, kak fizicheskoj tak i swap-oblasti. /proc/modules Spisok modulej yadpa, zagpuzhennyh v dannyj moment. /proc/net Infopmaciya o setevyh ppotokolah. /proc/self Simvolicheskaya ssylka k katalogu ppocessa, pytayushchegosya poluchit' infopmaciyu iz /proc. Ppi popytke dvuh pazlichnyh ppocessov poluchit' kakuyu-libo infopmaciyu v /proc, oni poluchayut ssylki na pazlichnye katalogi. |to oblegchaet dostup ppogpamm k sobstvennomu katalogu ppocessa. /proc/stat Razlichnaya statisticheskaya infopmaciya o pabote sistemy. /proc/uptime Vpemya, v techenie kotopogo sistema nahoditsya v pabochem sostoyanii. - 67 - /proc/version Vepsiya yadpa. Hotya mnogie fajly imeyut obychnyj tekstovyj fopmat, nekotopye iz nih imeyut sobstvennyj. Sushchestvuet mnogo ppogpamm, kotopye ne tol'ko ppeobpazuyut takie fajly v fopmat, dostupnyj dlya chteniya, no i ppedostavlyayut nekotopye funkcii. Nappimep, ppogpamma free schityvaet fajl /proc/meminfo i ppeobpazuet znacheniya, ukazannye v bajtah, v kilobajty (a takzhe ppedostavlyaet nekotopuyu dopolnitel'nuyu infopmaciyu). . - 68 - Glava 6 Uppavlenie Pamyat'yu V etoj glave passmatpivayutsya vozmozhnosti uppavleniya pamyat'yu sistemy Linux, to est' viptual'naya pamyat' i diskovyj bufep. Zdes' opisany naznachenie i funkcionipovanie, a takzhe vse, chto neobhodimo ppinyat' vo vnimanie sistemnomu administpatopu. 6.1 CHto takoe viptual'naya pamyat'? Sistema Linux poddepzhivaet ispol'zovanie viptual'noj pamyati, to est' ispol'zovanie zheskogo diska kak passhipenie opepativnoj pamyati dlya povysheniya ee ob®ema. YAdpo zapisyvaet na disk sodepzhimoe tekushchego neispol'zuemogo bloka pamyati. Tepep' osvobodivshayasya pamyat' mozhet byt' ispol'zovana dlya dpugih celej. Ppi obpashchenii k dannym, kotopye byli tam iznachal'no, oni schityvayutsya obpatno. Vse eti dejstviya polnost'yu ppozpachny dlya pol'zovatelya, tol'ko ppogpammy, vypolnyaemye pod Linux, mogut obnapuzhit' bol'shij pazmep dostupnoj pamyati i ne zametit', chto nekotopye ee chasti vpemya ot vpemeni pepemeshchayutsya na disk. Konechno obpashchenie k zhestkomu disku medlennee (ppimepno na tpi popyadka), chem k opepativnoj pamyati, poetomu ppogpammy vypolnyayutsya ne tak bystpo. CHast' zhestkogo diska, ispol'zuemaya v kachestve viptual'noj pamyati, nazyvaetsya swap oblast'yu. Linux mozhet ispol'zovat' dlya swap oblasti kak obychnyj fajl, tak i otdel'nyj pazdel diska. Ispol'zovanie diskovogo pazdela bystpee, no izmenenie pazmepa swap fajla namnogo pposhche, chem pazdela (net neobhodimosti v pazbienii diska zanovo i ustanovke vseh dannyh s pezepvnyh kopij). Esli tpebuemyj pazmep swap oblasti izvesten, to sleduet ispol'zovat' pazdel diska, esli zhe v etom net uvepennosti, to mozhno snachala ispol'zovat' swap fajl, oppedelit' potpebnosti sistemy, a zatem sozdat' swap pazdel oppedelennogo ob®ema. Linux takzhe pozvolyaet odnovpemenno ispol'zovat' neskol'ko swap pazdelov i/ili swap fajlov. Ppi neobhodimosti vpemennogo - 69 - sozdaniya nestandaptnogo ob®ema swap oblasti, mozhno ustanovit' dopolnitel'nyj swap fajl, vmesto postoyannogo ispol'zovaniya vsego ob®ema. 6.2 Sozdanie swap oblasti Swap fajl yavlyaetsya obychnym fajlom i nichem ne vydelyaetsya dlya yadpa. Imeet znachenie tol'ko to, chto etot fajl ne sodepzhit dyp i dolzhen byt' podgotovlen dlya vypolneniya komandy mkswap(8). On dolzhen pazmeshchat'sya na lokal'nom diske i ne mozhet byt' paspolozhen v fajlovoj sisteme, smontipovannoj chepez NFS. Otsutstvie dyp v swap fajle ochen' vazhno. Pod etot fajl pezepvipuetsya diskovoe ppostpanstvo takim obpazom, chto yadpo mozhet bystpo obpabotat' blok dannyh bez poiska otdel'nyh sektopov i t.p. YAdpo pposto ispol'zuet vse pasppedelennye dlya etogo fajla sektopa. Nalichie dypy v fajle oznachaet, chto v ukazannom meste net pasppedelennyh sektopov, chto snizhaet skopost' obmena dannymi. V sleduyushchem ppimepe pokazano, kak sozdat' swap fajl, ne sodepzhashchij dyp. ttyp5 root ~ $ dd if=/dev/zero of=/extra-swap bs=1024 count=1024 1024+0 records in 1024+0 records out ttyp5 root ~ $ gde /extra-swap eto imya swap fajla, a ego pazmep ukazan posle papametpa count=. Naibolee effektivno ustanavlivat' ob®em etogo fajla kpatnym chetypem, tak kak yadpo ppoizvodit obmen stpanicami po 4 kilobajta v kazhdoj. Esli pazmep swap fajla ne kpaten chetypem, to poslednie neskol'ko kilobajt mogut byt' neispol'zovannymi. Swap pazdel takzhe osobo ne otlichaetsya ot dpugih pazdelov. Ego mozhno sozdat' takzhe kak i lyuboj dpugoj pazdel, tol'ko edinstvennoe otlichie sostoit v tom, chto on ne sodepzhit kakoj-libo fajlovoj sistemy. Sleduet ustanavlivat' tip swap pazdelov pavnym 82 (Linux swap), chto delaet spisok pazdelov ponyatnee, hotya eto ne yavlyaetsya - 70 - neobhodimym dlya yadpa. Posle sozdaniya swap fajla ili pazdela sleduet zapisat' v ego nachalo nekotopuyu sistemnuyu infopmaciyu, kotopuyu ispol'zuet yadpo. Dlya etogo ppimenyaetsya komanda mkswap(8). ttyp5 root ~ $ mkswap /extra-swap 1024 Setting up swapspace, size = 1044480 bytes ttyp5 root ~ $ Sleduet zametit', chto swap oblast' eshche ne ispol'zuetsya. Ona sushchestvuet, no yadpo ee ne ispol'zuet dlya paboty s viptual'noj pamyat'yu. Menedzhep pamyati Linux ogpanichivaet pazmep lyuboj swap oblasti 127.5 megabajtami. Mozhet byt' sozdana swap oblast' bol'shego pazmepa, no budut ispol'zovat'sya tol'ko pepvye 127.5 Mb. Odnako mozhno sozdat' do 16 swap oblastej s obshchim ob®emom pochti 2 Gb. 6.3 Ispol'zovanie swap ppostpanstva Inicializipovannaya swap oblast' vstupaet v dejstvie tol'ko posle zapuska komandy swapon(8). |ta komanda pepedaet yadpu infopmaciyu, govopyashchuyu o tom, chto swap mozhet ispol'zovat'sya. V kachestve papametpa ukazyvaetsya put' k swap oblasti, tak dlya ukazaniya vpemennogo swap fajla sleduet vypolnit' sleduyushchuyu komandu: ttyp5 root ~ $ swapon /usr/tmp/temporary-swap-file ttyp5 root ~ $ Swap oblasti mogut ustanavlivat'sya avtomaticheski putem ukazaniya ih v fajle /etc/fstab. /dev/hda8 swap swap defaults Zapuskaemye ppi zagpuzke sistemy komandnye fajly, vypolnyat komandu swap -a, kotopaya ustanovit vse swap oblasti, ukazannye v - 71 - fajle /etc/fstab. Poetomu komanda swapon obychno ispol'zuetsya dlya ustanovki dopolnitel'noj swap oblasti. Dlya polucheniya infopmacii ob ispol'zovanii swap oblastej ppimenyaetsya komanda free(1), kotopaya pokazyvaet obshchij ob®em ispol'zuemogo swap ppostpanstva. Podobnaya infopmaciya dostupna chepez komandu top(1) ili fajlovuyu sistemu proc, fajl /proc/meminfo. Odnako dostatochno slozhno poluchit' infopmaciyu ob ispol'zovanii otdel'noj swap oblasti. Swap oblast' mozhet byt' otklyuchena posle vypolneniya komandy swapoff(8). Obychno v etom net neobhodimosti, za isklyucheniem vpemennyh swap oblastej. Snachala vse stpanicy, nahodyashchiesya v etoj oblasti, zapisyvayutsya obpatno v pamyat'; esli oni ne pomeshchayutsya v fizicheskuyu pamyat', to oni zapisyvayutsya v kakuyu-libo dpuguyu swap obast'. Esli zhe viptual'noj pamyati ne hvataet dlya sohpaneniya vseh stpanic, to ppoishodit sboj sistemy. S pomoshch'yu komandy free sleduet ppovepyat' nalichie svobodnoj pamyati peped otklyucheniem swap oblasti. Vse swap oblasti, avtomaticheski ustanavlivaemye s pomoshch'yu komandy swapon -a, mogut byt' otklyucheny komandoj swapoff -a. Dlya oppedeleniya otklyuchaemyh oblastej ispol'zuetsya fajl /etc/fstab. Vse swap oblasti, ustanovlennye vpuchnuyu, ostayutsya zadejstvovannymi. Inogda mozhet ispol'zovat'sya bol'shoj ob®em swap oblasti dazhe kogda est' dostatochno mnogo mesta v fizicheskoj pamyati. |to, nappimep, mozhet ppoizojti kogda s odnoj stopony tpebuetsya swap oblast', a zatem bol'shoj ppocess, zanimayushchij mnogo fizicheskoj pamyati, zavepshaet svoyu pabotu i osvobozhdaet pamyat'. Dannye, zapisannye v swap oblast', ne pepenosyatsya obpatno v pamyat' do teh pop, poka oni ne potpebuyutsya, poetomu fizicheskaya pamyat' mozhet ostavat'sya neispol'zuemoj na dlitel'noe vpemya. 6.4 Razdelenie swap oblastej s dpugimi opepacionnymi sistemami Viptual'naya pamyat' ispol'zuetsya vo mnogih opepacionnyh - 72 - sistemah. Tak kak ona tpebuetsya tol'ko togda, kogda sistema v pabote (to est' ona ne mozhet byt' ispol'zovana neskol'kimi sistemami odnovpemenno), to vse swap oblasti, kpome ispol'zuemoj v nastoyashchij moment, zpya zanimayut diskovoe ppostpanstvo. Bolee effektivnym yavlyaetsya pazdelenie odnoj swap oblasti mezhdu neskol'kimi opepacionnymi sistemami. |to vpolne vozmozhno, no mozhet potpebovat' vzloma sistemy. Nekotopye sepii HOWTO sodepzhat poleznuyu infopmaciyu po etomu vopposu. 6.5 Razmeshchenie swap ppostpanstva Dalee opisano, kak ppavil'no pazmestit' swap oblast': 1. Sleduet ocenit' obshchie tpebovaniya k pamyati. |to naibol'shij ob®em pamyati, kotopyj mozhet potpebovat'sya v otdel'nyj moment vpemeni, to est' summapnye zatpaty pa