Unix na rabochej stancii Besta s tochki zreniya administratora Tekst podgotovlen NPO "KLOTO"   ³SODERZHANIE ´ 1. Vvedenie ¶2 2. Process zagruzki sistemy ¶3 2.1. Zadanie zagruzhaemogo fajla ¶3 2.2. Process init. Ponyatie urovnya vypolneniya ¶4 2.3. Fajl /etc/inittab ¶5 2.4. Nekotorye dejstviya po inicializacii ¶7 2.5. Proverka fajlovyh sistem ¶9 3. Vyklyuchenie sistemy ¶12 3.1. Procedura /etc/shutdown ¶12 3.2. Procedura /etc/finito ¶13 4. Registraciya novyh pol'zovatelej ¶14 4.1. Procedura /etc/nuser ¶14 4.2. Fajly /etc/passwd i /etc/group ¶14 5. Vhod pol'zovatelya v sistemu ¶17 5.1. Fajl /etc/profile ¶17 5.2. Fajl .profile ¶18 6. Sozdanie novogo yadra OS UNIX ¶20 6.1. Fajly io.h, master i dfile ¶20 6.2. Process peregeneracii sistemy ¶22 7. Sohranenie i vosstanovlenie sistemy ¶24 7.1. Sozdanie minimal'nogo varianta sistemy na floppi-diske i lente ¶24 7.2. Zapis' sistemnoj informacii na lentu i vosstanovlenie ee s lenty ¶24 8. Sistema menyu dlya vypolneniya administrativnyh dejstvij ¶27 Prilozhenie A. Naznachenie nekotoryh katalogov i fajlov ¶29 Prilozhenie B. Komandy administratora OS UNIX ¶33 Prilozhenie C. Svodka sintaksisa komand administratora ¶35  ³1. VVEDENIE ´ Administrirovanie OS UNIX - bol'shaya i slozhnaya tema. V dannom rukovodstve zatragivayutsya lish' nekotorye ee aspekty. V pervuyu ochered' podrobno rassmatrivayutsya processy zagruzki sistemy i ee vyklyucheniya. Cel' rassmotreniya - nauchit'sya upravlyat' etimi pro- cessami. Dalee s toj zhe cel'yu rassmatrivayutsya registraciya novyh pol'zovatelej i process vhoda pol'zovatelya v sistemu. Sleduyushchaya tema - peregeneraciya sistemy, sozdanie minimal'nogo varianta sistemy na floppi-diske i strimernoj lente. Kratko opisana sis- tema dlya interaktivnogo vypolneniya administrativnyh funkcij sy- sadm(1M). V prilozhenii opisyvaetsya naznachenie nekotoryh katalo- gov i fajlov. Vne rassmotreniya ostalis' takie temy, kak administrirovanie printerov, sbor i obrabotka statistiki, rabota s udalennymi sistemami i nekotorye drugie.  ³2. PROCESS ZAGRUZKI SISTEMY ´  ³2.1. Zadanie zagruzhaemogo fajla ´ Posle vklyucheniya pitaniya stancii BESTA na ekrane konsol'nogo terminala poyavlyaetsya priglashenie boot: kotoroe vydaet programma nachal'noj zagruzki, hranyashchayasya v PZU. Srazu zhe otmetim, chto stroka, kotoraya nabiraetsya v otvet, dolzh- na zakanchivat'sya simvolom <CR>. V kachestve otveta nuzhno zadat' imya fajla, kotoryj budet zagru- zhen v operativnuyu pamyat' i nachnet vypolnyat'sya. Voobshche govorya, fajl zadaetsya s pomoshch'yu konstrukcii ustrojstvo:imya_fajla Dlya standartnoj konfiguracii stancii BESTA ustrojstvo dolzhno vybirat'sya iz sleduyushchego spiska: a Vinchesterskij disk. f Floppi-disk. t Strimernaya lenta. r Disk v pamyati. Obychno v kachestve imeni_fajla ukazyvaetsya unix, no v principe mozhno, vo-pervyh, zagruzhat' operacionnuyu sistemu iz drugogo fajla, a, vo-vtoryh, mozhno zagruzhat' voobshche ne operacionnuyu sistemu, a svoyu programmu (esli ona sumeet upravit'sya s appa- ratnym okruzheniem). Esli v otvet na priglashenie boot: vvesti znak voprosa (i, es- testvenno, <CR>), na ekran budet vydana spravochnaya informaciya o vozmozhnyh otvetah. Nakonec, nazhatie odnoj klavishi <CR> ekvivalentno zadaniyu konst- rukcii a:/unix, to est' fajla unix, raspolozhennogo v kornevom kataloge fajlovoj sistemy na vinchesterskom diske. V posleduyushchih razdelah budut opisany procedury polucheniya flop- pi-diskov i lent, s kotoryh mozhno vypolnit' zagruzku. Zdes' zhe otmetim, chto pri zagruzke s lenty avtomaticheski sozdaetsya disk v pamyati, kuda i perepisyvaetsya soderzhimoe lenty, posle chego nachinaetsya process zagruzki s etogo diska. Netrudno ponyat', chto v takoj konfiguracii sistema budet rabotat' znachitel'no byst- ree, chem posle zagruzki s floppi-diska, poetomu celesoobrazno imet' zagruzhaemyj variant sistemy imenno na lente. Bolee podrobno process nachal'noj zagruzki opisan v stat'e bo- ot(8) Spravochnika administratora.  ³2.2. Process init. Ponyatie urovnya vypolneniya ´ V kachestve poslednego shaga zagruzki OS UNIX zapuskaetsya process init - glavnyj dispetcher processov. Ego osnovnaya zadacha - soz- danie i perezapusk processov v sootvetstvii so shemoj, hranya- shchejsya v fajle /etc/inittab [sm. inittab(4)]. Process init dol- zhen sushchestvovat' vse vremya, poka funkcioniruet sistema. S tochki zreniya processa init sistema v lyuboj moment vremeni na- hoditsya na opredelennom urovne vypolneniya. Uroven' vypolneniya mozhet rassmatrivat'sya kak programmnaya konfiguraciya sistemy, prichem kazhdaya konfiguraciya dopuskaet sushchestvovanie tol'ko opre- delennoj gruppy processov. Processy, zapuskaemye init'om na kazhdom urovne vypolneniya, opisany v fajle /etc/inittab. Uroven' vypolneniya zadaetsya cifroj ot 0 do 6 ili bukvoj S. V poslednem sluchae govoryat, chto sistema nahoditsya v odnopol'zova- tel'skom rezhime. V etom rezhime aktiven tol'ko konsol'nyj termi- nal, za kotorym rabota vedetsya ot imeni pol'zovatelya root. Dej- stviya, trebuyushchie monopol'nogo dostupa k komp'yuteru (naprimer, perekonfigurirovanie sistemy) sleduet vypolnyat' imenno v odno- pol'zovatel'skom rezhime. Obychno posle zagruzki sistemy s flop- pi-diska ili lenty ona okazyvaetsya na urovne S. Uroven' 2 nazyvayut mnogopol'zovatel'skim. |to obychnyj rezhim funkcionirovaniya sistemy, v kotoryj ona popadaet posle zagruzki s vinchestera. Uroven' 6 prednaznachen dlya raboty procedur vyklyucheniya komp'yute- ra. Dlya ostal'nyh urovnej net standartnogo prednaznacheniya. Otmetim tol'ko, chto uroven' 3 zarezervirovan za mnogopol'zovatel'skim rezhimom, v kotorom dostupny setevye uslugi. Process init prosmatrivaet fajl /etc/inittab i zapuskaet uka- zannye tam processy, esli zaprashivaetsya perehod na novyj uro- ven' vypolneniya, proizoshla oshibka pitaniya ili zavershaetsya odin iz potomkov init'a. Esli nuzhno vyzvat' prinuditel'nyj prosmotr fajla /etc/inittab bez perehoda na novyj uroven', sleduet vy- polnit' komandu /etc/init q Tonkosti raboty processa init izlozheny v stat'e init(1M) Spra- vochnika administratora.  ³2.3. Fajl /etc/inittab ´ Fajl /etc/inittab - eto tablica, kotoraya upravlyaet programmoj init(1M) kak glavnym dispetcherom processov. Programma init pe- riodicheski prosmatrivaet stroki fajla inittab i, esli nuzhno, zapuskaet zadannye v nekotoryh strokah processy. Pervaya stroka fajla inittab zadaet nachal'nyj uroven' vypolne- niya, na kotoryj sistema perejdet posle zagruzki. |ta stroka dolzhna imet' sleduyushchij format: imya:uroven'_vypolneniya:initdefault: Esli v kachestve urovnya_vypolneniya zadana dvojka, posle zagruzki sistema okazhetsya v mnogopol'zovatel'skom rezhime. Esli posmot- ret' na pervuyu stroku fajla /etc/inittab , raspolozhennogo na vinchesterskom diske, to okazhetsya, chto ona vyglyadit tak: is:2:initdefault: Fajl /etc/inittab iz minimal'nogo varianta sistemy na floppi­ diske ili lente v kachestve pervoj stroki soderzhit is:S:initdefault: V rezul'tate posle zagruzki minimal'nogo varianta sistema oka- zyvaetsya v odnopol'zovatel'skom rezhime. Posleduyushchie stroki fajla inittab dolzhny imet' takoj format: imya:uroven'_vypolneniya:dejstvie:process Perechislennye polya imeyut sleduyushchij smysl. Naznachenie imeni ­ odnoznachno identificirovat' stroku. Pole uroven'_vypolneniya soderzhit perechen' urovnej, na kotoryh process iz dannoj stroki mozhet sushchestvovat'. Pri perehode na novyj uroven', voobshche govorya, zapuskayutsya novye processy i unichtozhaetsya chast' staryh. Pole dejstvie opredelyaet disciplinu obrabotki processa, ukazan- nogo v dannoj stroke. Programma init sredi prochih raspoznaet sleduyushchie dejstviya: bootwait´ |ta stroka budet obrabotana odin raz pri perehode init iz odnopol'zovatel'skogo rezhima v mnogopol'- zovatel'skij posle zagruzki sistemy. (Esli dejst- vie initdefault sootvetstvuet urovnyu vypolneniya 2, to ukazannyj v stroke process budet zapushchen srazu posle zagruzki sistemy). Programma init zapuskaet process, dozhidaetsya ego zaversheniya i posle etogo ne perezapuskaet process. wait´ Pri perehode na uroven'_vypolneniya, sovpadayushchij s ukazannym v stroke, zapustit' process i ozhidat' ego zaversheniya. Pri vseh posleduyushchih prosmotrah fajla inittab na tom zhe urovne vypolneniya ignori- rovat' stroku. respawn´ Esli process ne sushchestvuet, to zapustit' ego, ne zhdat' zaversheniya (prodolzhat' prosmotr fajla init- tab), posle zaversheniya processa perezapustit' ego. Esli process uzhe sushchestvuet, nichego ne delat' i prodolzhat' prosmotr fajla inittab. off´ Esli process, associirovannyj s dannoj strokoj, vypolnyaetsya, emu posylaetsya preduprezhdayushchij signal SIGTERM i daetsya 20 sekund na zavershenie, posle chego on prinuditel'no terminiruetsya signalom SIG- KILL. Esli process ne sushchestvuet, stroka ignoriru- etsya. powerfail´ Vypolnyat' ukazannyj v stroke process tol'ko pri poluchenii init'om signala ob oshibke pitaniya. V pole process zadaetsya komanda shell'a, kotoruyu nuzhno vypol- nit'. CHtoby upotrebit' v etoj komande kommentarij, nuzhno vos- pol'zovat'sya zapis'yu ;#kommentarij. Obychno dejstvie respawn soprovozhdaet process getty(1M), kotoryj vydaet na terminal priglashenie dlya vhoda v sistemu. Esli po ka- koj-libo prichine priglashenie bol'she vydavat' ne nuzhno (slomalsya terminal ili vmesto terminala podklyuchili grafopostroitel'), dejstvie respawn nuzhno zamenit' na off. Naprotiv, kogda trebu- etsya podklyuchit' novyj terminal, off zamenyaetsya na respawn. Na- pomnim, chto dlya nemedlennogo prosmotra init'om izmenennogo faj- la /etc/inittab sluzhit komanda /etc/init q Podcherknem, chto pri podklyuchenii k posledovatel'nym ili paral- lel'nym portam novyh ustrojstv ili otklyuchenii staryh ne trebu- etsya peregenerirovat' sistemu - dostatochno izmenit' fajl /etc/ inittab.  ³2.4. Nekotorye dejstviya po inicializacii ´ Rassmotrim nekotorye stroki fajla /etc/inittab, upravlyayushchego processom zagruzki sistemy na stancii BESTA: is:2:initdefault: bc:2345:bootwait:/etc/bcheckrc /dev/console 2>&1 br::bootwait:/etc/brc >/dev/console 2>&1 r0:0:wait:/etc/rc0 >/dev/console 2>&1 r2:2:wait:/etc/rc2 >/dev/console 2>&1 co::respawn:/etc/getty console console 03::off:/etc/getty tty3 9600A 04::respawn:/etc/getty tty4 9600A Pervaya iz strok predpisyvaet processu init v kachestve posledne- go dejstviya po zagruzke sistemy perejti na uroven' 2. Stroka bc prinimaetsya vo vnimanie pri perehode iz odnopol'zova- tel'skogo rezhima na urovni so vtorogo po pyatyj. Pri etom vypol- nyaetsya shell-procedura /etc/bcheckrc , ustanavlivayushchaya chasovoj poyas dannoj vychislitel'noj ustanovki i proveryayushchaya korrektnost' fajlovyh sistem. Posle zaversheniya procedury /etc/bcheckrc process init perehodit k sleduyushchej stroke i zapuskaet shell-proceduru /etc/brc , koto- raya zanosit kornevuyu fajlovuyu sistemu v tablicu smontirovannyh fajlovyh sistem. Napomnim, chto pustoe soderzhimoe polya uroven'_- vypolneniya ekvivalentno upominaniyu vseh urovnej. Stroka s imenem r0 v processe zagruzki sistemy budet propushchena, poskol'ku vypolnyaetsya perehod ne na nulevoj, a na vtoroj uro- ven'; sleduyushchim zapushchennym processom budet /etc/rc2. |tu shell­ proceduru stoit rassmotret' podrobnee: set `who -r` if [ $9 = "S" ] then echo "The system is coming up. Please wait." elif [ -d /etc/rc2.d ] then for f in /etc/rc2.d/K* do if [ -s ${f} ] then /bin/sh ${f} stop fi done fi if [ -d /etc/rc2.d ] then for f in /etc/rc2.d/S* do if [ -s ${f} ] then /bin/sh ${f} start fi done fi if [ $9 = "S" ] then echo "\n ****** MULTI-USER MODE `/bin/date` ****** \n" fi Napomnim, chto komanda who -r vydaet informaciyu o tekushchem i pre- dydushchem urovnyah vypolneniya, a takzhe o vremeni poslednej smeny urovnej. V chastnosti, devyatym iz vydavaemyh slov budet predydu- shchij uroven'. V processe zagruzki on raven S, tak chto proveryae- moe uslovie ($9 = "S") okazhetsya istinnym i procedura vydast so- obshchenie o tom, chto sistema na podhode. Esli by perehod na uroven' 2 vypolnyalsya ne iz odnopol'zovatel'- skogo rezhima, v cikle byli by zapushcheny fajly iz kataloga /etc/ rc2.d, imena kotoryh nachinayutsya na K. Naznachenie etih procedur - likvidirovat' processy, kotorye ne dolzhny sushchestvovat' na urovne 2; poetomu procedury i zapuskayutsya s argumentom stop. Dalee sleduet cikl, v kotorom s argumentom start zapuskayutsya fajly, imena kotoryh nachinayutsya na S. Oni prednaznacheny dlya vy- polneniya takih inicializacionnyh dejstvij, kak montirovanie fajlovyh sistem, zapusk planirovshchika strochnyh printerov i dru- gih demonov i t.p. Po povodu fajlov, vypolnyayushchih dejstviya po terminirovaniyu i/ili inicializacii, prinyaty sleduyushchie soglasheniya. Vse podobnye fajly pomeshchayutsya v katalog /etc/init.d pod mnemonichnymi imenami (nap- rimer, MOUNTFSYS ili lineprinter). V katalogah /etc/rcn.d (n - nomer urovnya) sozdayutsya ssylki na sootvetstvuyushchie fajly iz /etc/init.d s imenami vida [KS]??imya_v_/etc/init.d Pervaya bukva - K ili S - pokazyvaet, dlya chego ispol'zuetsya v dannom kataloge fajl: dlya terminirovaniya ili inicializacii. V kachestve dvuh sleduyushchih simvolov zadayutsya cifry. Delo v tom, chto vmesto shablona fajlov shell podstavlyaet podhodyashchie imena v alfavitnom poryadke. CHem men'she dvuznachnoe chislo v imeni fajla, tem ran'she etot fajl budet vypolnen. Naprimer, v kataloge /etc/rc2.d est' fajly S03MOUNTFSYS i S04RMTMPFILES. Poskol'ku pervoe iz etih imen leksikograficheski men'she vtorogo, snachala budut smontirovany fajlovye sistemy, a uzhe zatem udaleny vre- mennye fajly. Process sbora informacii ob oshibkah oborudovaniya (fajl S80errlog) budet zapushchen v konce cikla. Tem samym para cifr - sredstvo dlya uporyadocheniya dejstvij po terminirovaniyu i inicializacii. Esli nuzhno isklyuchit' kakoe-libo dejstvie iz ciklov terminirova- niya ili inicializacii, nuzhno ili udalit' sootvetstvuyushchuyu ssyl- ku, ili pereimenovat' ee, chtoby ona ne nachinalas' s K ili S. Mozhno porekomendovat' pri pereimenovanii delat' pervuyu bukvu strochnoj (k ili s) - togda legko poluchit' spisok isklyuchennyh dejstvij i pri neobhodimosti vernut' to ili inoe dejstvie v chislo vypolnyaemyh. Vernemsya k rassmotreniyu fajla /etc/inittab. Posle zaversheniya procedury /etc/rc2 init perejdet k interpretacii posleduyushchih strok. On zapustit process getty(1M), ukazannyj v stroke s ime- nem co, no ne budet zhdat' ego zaversheniya, poskol'ku v kachestve dejstviya zadano respawn. Kogda zhe process getty vse zhe zaver- shitsya (a sluchitsya eto posle vhoda pol'zovatelya v sistemu s dan- nogo terminala i posleduyushchego vyhoda iz nee), on (process get- ty) budet zapushchen snova. Sleduyushchaya stroka fajla /etc/inittab budet proignorirovana, poskol'ku dejstviem yavlyaetsya off. Obra- botka stroki s imenem 04 sovershenno analogichna obrabotke stroki co. Zatem init budet ozhidat' zaversheniya kakogo-libo iz svoih potomkov, posle chego vnov' vypolnit prosmotr fajla /etc/init- tab, chtoby obespechit' svoevremennyj perezapusk processov.  ³2.5. Proverka fajlovyh sistem ´ Iz shell-procedury /etc/bcheckrc vyzyvaetsya utilita fsck(1M), vypolnyayushchaya proverku i korrektirovku fajlovyh sistem v interak- tivnom rezhime. Opishem etu utilitu podrobnee. Obrashchenie k fsck sredi prochih mozhet vklyuchat' sleduyushchie argumen- ty: /etc/fsck [-y] [-n] [fajlovaya_sistema ...] Proveryaemaya fajlovaya sistema zadaetsya imenem soderzhashchego ee special'nogo fajla. Esli fajlovaya_sistema ne ukazana, proverya- yutsya fajlovye sistemy iz spiska, hranyashchegosya v fajle /etc/ checklist. Po umolchaniyu na vypolnenie dejstvij po ustraneniyu povrezhdenij fajlovoj sistemy u pol'zovatelya zaprashivaetsya podtverzhdenie. V sluchae polozhitel'nogo otveta (yes) povrezhdenie likvidiruetsya. Opcii imeyut sleduyushchij smysl: -y Schitat', chto na vse voprosy daetsya polozhitel'nyj otvet. -n Schitat', chto na vse voprosy daetsya otricatel'nyj otvet. Ne pytat'sya likvidirovat' povrezhdeniya i ne otkryvat' fajlovuyu sistemu na zapis'. Utilita fsck pri ustranenii povrezhdenij vedet sebya dostatochno razumno. Rekomenduetsya polozhit'sya na nee i ukazyvat' opciyu -y - eto izbavit Vas ot lishnih somnenij. Vyyavlyayutsya sleduyushchie narusheniya celostnosti fajlovoj sistemy: ª Na blok imeetsya bolee odnoj ssylki iz opisatelej fajlov i/ili spiska svobodnyh blokov. ª Blok, na kotoryj ssylaetsya opisatel' fajla ili spisok svobodnyh blokov, nahoditsya za predelami fajlovoj sis- temy. ª Imeyutsya nekorrektnye schetchiki chisla ssylok. ª Pri proverke razmerov: vyyavleno nekorrektnoe chislo blokov; razmer kataloga okazalsya ne kraten 16. ª Obnaruzhen opisatel' fajla, imeyushchij nekorrektnyj format. ª Vyyavleny neuchtennye bloki. ª Pri proverke katalogov: obnaruzhen element kataloga, ukazyvayushchij na svobod- nyj opisatel' fajla; vyyavlen nedopustimyj nomer opisatelya fajla. ª Pri proverke superbloka: opisatelej fajlov okazalos' bolee 65536; okazalos', chto pod opisateli fajlov vydeleno bol'- she blokov, chem est' v fajlovoj sisteme. ª Obnaruzheno narushenie formata spiska svobodnyh blokov. ª Vyyavleny nekorrektnye znacheniya schetchikov svobodnyh blo- kov i/ili svobodnyh opisatelej fajlov. Nepustye fajly, na kotorye net ssylok, s soglasiya pol'zovatelya (a katalogi - obyazatel'no) peremeshchayutsya v katalog lost+found. Esli ne ukazana opciya -n, pustye fajly i katalogi udalyayutsya. Katalog lost+found dolzhen sushchestvovat', raspolagat'sya v korne proveryaemoj fajlovoj sistemy i imet' svobodnye mesta dlya zane- seniya novyh elementov. CHtoby udovletvorit' vsem trebovaniyam, nado pered vypolneniem fsck sozdat' katalog /lost+found, zapi- sat' v nego neskol'ko fajlov, a potom udalit' ih. Dlya standartnoj konfiguracii stancii BESTA v fajle /etc/check- list zadan sleduyushchij podrazumevaemyj spisok proveryaemyh fajlo- vyh sistem: /dev/dsk/hd0s0 /dev/dsk/hd0s1 Imenno oni proveryayutsya i korrektiruyutsya v processe zagruzki OS UNIX. Kogda fajlovaya sistema nahoditsya v nekorrektnom sostoyanii, ee nel'zya smontirovat'. Esli pri popytke smontirovat' floppi-disk OS UNIX otvechaet otkazom, popytajtes' ispravit' polozhenie ko- mandoj /etc/fsck -y /dev/dsk/fd posle chego povtorite popytku montirovaniya. K sozhaleniyu, esli v nekorrektnom sostoyanii okazalsya opisatel' otkrytogo fajla, utilita fsck ne smozhet ispravit' polozhenie. CHashche vsego takim otkrytym fajlom s narushennym chislom ssylok na nego okazyvaetsya /dev/console; v rezul'tate kornevuyu fajlovuyu sistemu ne udaetsya privesti v korrektnoe sostoyanie, i process zagruzki OS UNIX raz za razom terpit neudachu. Edinstvennyj vy- hod iz sozdavshegosya polozheniya - zagruzit' minimal'nyj variant OS s floppi-diska ili lenty i vypolnit' komandu /etc/fsck -y /dev/dsk/hd0s0 Otkrytyj fajl /dev/console budet nahodit'sya ne na vinchesterskom diske, poetomu fsck smozhet skorrektirovat' chislo ssylok. Prakticheskij vyvod sostoit v tom, chto esli OS UNIX ne udaetsya zagruzit' s vinchesterskogo diska, sleduet vypolnit' zagruzku s floppi-diska ili lenty, a zatem popytat'sya ispravit' ili voss- tanovit' fajlovuyu sistemu na ustrojstve /dev/dsk/hd0s0.  ³3. VYKLYUCHENIE SISTEMY ´ CHtoby nachat' process vyklyucheniya sistemy BESTA, sleduet vojti s konsol'nogo terminala v pol'zovatelya down ili, buduchi pol'zova- telem root i nahodyas' v kornevom kataloge, vypolnit' komandu /etc/shutdown ili, nakonec, v otvet na priglashenie Console login: vvesti sysadm reboot V lyubom sluchae budet ispol'zovat'sya procedura /etc/shutdown, kotoruyu my i rassmotrim.  ³3.1. Procedura /etc/shutdown ´ Shell-procedura shutdown(1M) prednaznachena dlya perevoda sistemy iz mnogopol'zovatels'kogo rezhima na ukazannyj uroven' (po umol- chaniyu na uroven' S, to est' v odnopol'zovatel'skij rezhim). Pered nachalom dejstvij po izmeneniyu urovnya vypolneniya utilita posylaet snachala preduprezhdayushchee, a posle zaderzhki i final'noe soobshcheniya. Po umolchaniyu pered terminirovaniem processov zapra- shivaetsya podtverzhdenie. Utilita shutdown vyzyvaetsya sleduyushchim obrazom: /etc/shutdown [-y] [-gzaderzhka] [-iuroven'_vypolneniya] Opciyam pripisan sleduyushchij smysl: -y Otmenit' zapros podtverzhdeniya. Komanda budet rabo- tat' bez vmeshatel'stva pol'zovatelya. Po umolchaniyu, mezhdu preduprezhdayushchim i final'nym soobshcheniyami pre- dusmotrena zaderzhka v 60 sekund; takaya zhe zaderzhka vypolnyaetsya mezhdu final'nym soobshcheniem i zaprosom podtverzhdeniya. -gzaderzhka´ Izmenit' standartnuyu velichinu zaderzhki. Novaya za- derzhka zadaetsya v sekundah. Naprimer, argument -g0 oznachaet otsutstvie zaderzhki. -iuroven'_vypolneniya´ Uroven'_vypolneniya peredaetsya utilite init(1M). Sistema perejdet na etot uroven' posle vseh soob- shchenij, zaderzhek i podtverzhdenij. Podrazumevaemyj uroven' est' S. Rekomenduemye urovni_vypolneniya i dejstviya pri perehode na nih: 0 Ostanovit' sistemu, podgotoviv ee k bezopasnomu vyklyucheniyu pitaniya. Vyklyuchit' pitanie, esli pozvo- lyaet apparatura. Dlya vypolneniya etih dejstvij vy- zyvaetsya shell-procedura /etc/rc0. 1, s, S´ Perevesti sistemu v odnopol'zovatel'skij rezhim, ispol'zuya proceduru /etc/rc0. Raznica mezhdu urov- nyami S i 1 sostoit v tom, chto na urovne S vse pro- cessy, porozhdennye init, zaversheny, no fajlovye sistemy ne razmontirovany. Na urovne 1 razmontiro- vany vse fajlovye sistemy, krome kornevoj, i za- versheny vse pol'zovatel'skie processy, krome kon- sol'nyh. 6 Ostanovit' sistemu i podgotovit'sya k perezagruzke. Pri vhode v pol'zovatelya down proishodit avtomaticheskoe vypol- nenie komandy /etc/shutdown -g0 to est' s nulevoj zaderzhkoj nachinaetsya process perevoda sistemy v odnopol'zovatel'skij rezhim.  ³3.2. Procedura /etc/finito ´ Shell-procedura finito(1M) sluzhit dlya ostanovki sistemy i pod- gotovki ee k perezagruzke, esli ishodnym urovnem vypolneniya yav- lyaetsya S. Utilita finito vypolnyaet razmontirovanie vseh smonti- rovannyh fajlovyh sistem (krome kornevoj), vytalkivaet bufera i vyzyvaet komandu init 6 V fajle /etc/inittab imeetsya stroka rb:6:wait:/etc/uadmin 2 2 >/dev/console 2>&1