nie versii fajlov bolee starymi. . - 6-32 - OPISANIE UROVNEJ DUBLIROVANIYA Samyj prostoj i nadezhnyj sposob obespecheniya bezopasnosti dannyh - kazhdyj raz delat' rezervnuyu kopiyu vsego soderzhimogo fajlovoj sistemy. Odnako fajlovye sistemy mogut okazat'sya bol'- shimi (400 MB i bol'she) i budut kopirovat'sya chasami. Koncepciya urovnej dublirovaniya (ili inkrementnyh dublirovanij) vyzvana etoj problemoj. Osnovnaya ideya inkrementnogo dublirovaniya - de- lat' kopiyu tol'ko teh fajlov, kotorye izmenilis' s predydushchego dublirovaniya. Tem samym mozhno znachitel'no sokratit' razmer re- zervnoj kopii i prodolzhitel'nost' dublirovaniya. Rassmotrim sle- duyushchuyu shemu: ezhemesyachno - polnoe dublirovanie; ezhenedel'no - vse, chto poyavilos' s predydushchej nedeli; ezhednevno - vse, chto poyavilos' s predydushchego dnya. |to znachit, chto v konce kazhdogo mesyaca dubliruetsya vsya fajlovaya sistema. Kazhduyu nedelyu dubliruyutsya fajly, izmenivshiesya posle predydushchej nedeli, i kazhdyj den' - fajly, izmenivshiesya za den'. Esli v nekotoryj moment fajlovaya sistema poluchaet povrezhdenie, vam pridetsya prosto vosstanovit' poslednyuyu polnuyu (ezhemesyachnuyu) rezervnuyu kopiyu, poslednyuyu ezhenedel'nuyu kopiyu i vse ezhednevnye kopii, sdelannye do incidenta. Takim obrazom, vsegda mozhno re- konstruirovat' fajlovuyu sistemu, imeya nabor rezervnyh kopij. Hotya eto i vyglyadit prosto, realizovat' inkrementnoe dubli- rovanie slozhnee. Principy urovnej inkrementnogo dublirovaniya CHtoby process dublirovaniya byl bolee effektivnym, v sreds- tve dublirovaniya predusmotren posledovatel'nyj ryad urovnej, kazh- dyj iz kotoryh baziruetsya na poslednem dublirovanii bolee nizko- go urovnya. Podderzhivaetsya do desyati razlichnyh urovnej dublirova- niya, chto pozvolyaet administratoru sistemy proyavlyat' znachitel'nuyu gibkost' v organizacii dublirovaniya. . - 6-33 - Uroven' Sohranyaemye fajly ---------------------------------------------- 0 Vse fajly fajlovoj sistemy 1 Fajly, izmenivshiesya posle poslednego dublirovaniya urovnya 0 2 Fajly, izmenivshiesya posle poslednego dublirovaniya urovnya 1 3 Fajly, izmenivshiesya posle poslednego dublirovaniya urovnya 2 .............................................. 9 Fajly, izmenivshiesya posle poslednego dublirovaniya urovnya 8 Vse desyat' urovnej mogut ispol'zovat'sya v komp'yuterah s massivnymi fajlovymi sistemami; obychnye sistemy ispol'zuyut lish' neskol'ko urovnej. Urovni prednaznacheny dlya razbieniya dublirova- niya na upravlyaemye elementy. Vazhno usvoit', chto dublirovanie kazhdogo urovnya sozdaet rezervnuyu kopiyu na osnove kopii predydu- shchego (blizhajshego bolee nizkogo) urovnya. |to znachit, chto poryadok dublirovanij nesushchestvenen, no sushchestvenen nomer urovnya. Predpolozhim, naprimer, chto za nedelyu byli sdelany sleduyushchie rezervnye kopii: Den' Uroven' Skopirovannye fajly -------------------------------------------------------- Poned. 0 Vse fajly fajlovoj sistemy Vtor. 5 Vse fajly, izmenivshiesya s ponedel'nika Sreda 2 Vse fajly, izmenivshiesya s ponedel'nika CHetv. 7 Vse fajly, izmenivshiesya so vtornika Pyatn. 5 Vse fajly, izmenivshiesya so sredy |tot primer nelogichen, no ego mozhno ispol'zovat' dlya de- monstracii raboty urovnej. Pomnite, chto pri kazhdom dublirovanii sohranyayutsya fajly, izmenivshiesya posle dublirovaniya s blizhajshim bolee nizkim urovnem (samyj nizkij uroven' - 0). Sledovatel'no, v pyatnicu na urovne 5 budet sdelana rezervnaya kopiya fajlov, iz- menivshihsya posle dublirovaniya s blizhajshim bolee nizkim urovnem, urovnem 2, kotoroe vypolnyalos' v sredu. Vo vtornik na urovne 5 budut sohraneny tol'ko te fajly, kotorye izmenilis' s predydushche- go dnya, tak kak edinstvennyj predydushchij bolee nizkij uroven' dublirovaniya - uroven' 0. Esli by vse dublirovaniya, krome pone- del'nika, vypolnyalis' na urovne 5, v kazhdom sluchae dublirovalis' by vse fajly, izmenivshiesya posle dublirovaniya urovnya 0 v pone- del'nik. Kak rabotaet raspisanie, prinyatoe po umolchaniyu Fajl schedule, prinimaemyj po umolchaniyu, postavlyaetsya s distribuciej; v nem ispol'zuetsya tol'ko chetyre urovnya, i ego mozhno optimizirovat' dlya primeneniya v sistemah umerennogo pol'- zovaniya (8-10 pol'zovatelej s obshchej diskovoj pamyat'yu 200-400 MB). . - 6-34 - +--------------------------------------------------------------+ | # 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10| | # Filesystem M T W T F M T W T F M T W T F M T W T F | | /dev/rroot 0 x 9 x 9 8 x 9 x 9 1 x 9 x 9 8 x 9 x 9 | | /dev/ru 9 0 9 9 9 9 8 9 9 9 9 1 9 9 9 9 8 9 9 9 | +--------------------------------------------------------------+ Risunok 6-5. Raspisanie, prinimaemoe po umolchaniyu Fajlovaya sistema /u Fajlovaya sistema /dev/ru yavlyaetsya intensivno ispol'zuemym resursom. Kazhdyj den' delaetsya rezervnaya kopiya nekotorogo urov- nya. |ta shema sluzhit dlya minimizacii resursov pri maksimizacii nadezhnosti; esli odna ili neskol'ko rezervnyh kopij za etu nede- lyu poteryaetsya ili isportitsya, sushchestvuyushchej izbytochnosti budet dostatochno dlya minimizacii lyuboj poteri dannyh. Soglasno raspisaniyu, prinyatomu po umolchaniyu, polnoe dubli- rovanie (urovnya 0) fajlovoj sistemy /dev/ru vypolnyaetsya v nachale mesyaca. (Tak kak rezervnaya kopiya urovnya 0 dlya kornevoj fajlovoj sistemy delaetsya v ponedel'nik, to rezervnaya kopiya urovnya 0 dlya /u delaetsya vo vtornik.) V sredu pri dublirovanii urovnya 9 budut sohraneny tol'ko te fajly /dev/ru, kotorye izmenilis' posle dub- lirovaniya urovnya 0. K koncu nedeli budet zadejstvovano gorazdo men'shee chislo disket ili lent, chem nuzhno pri ezhednevnom polnom dublirovanii. Znachitel'no sokrashchaetsya i vremya dublirovaniya. Esli nuzhno vosstanovit' fajlovuyu sistemu v poslednee zaregistrirovan- noe sostoyanie, vam pridetsya vosstanovit' poslednyuyu rezervnuyu ko- piyu urovnya 0, a zatem - vse rezervnye kopii bolee nizkogo urov- nya, sdelannye s teh por. Zamet'te, chto kazhdyj vtornik proishodit dublirovanie nizshe- go urovnya (0, 1 ili 8), pri kotorom sohranyaetsya vse s nachala me- syaca; teper' kazhdoe posleduyushchee dublirovanie urovnya 9 budet ba- zirovat'sya po etoj nedele. V itoge rezervnye kopii urovnya 9 ne budut chrezmerno bol'shimi i izbytochnymi. Fajlovaya sistema root Kornevaya fajlovaya sistema soderzhit operacionnuyu sistemu i drugie sistemnye fajly. Ona izmenyaetsya rezhe, i ee ne nuzhno dub- lirovat' kazhdyj den'. Kazhdyj ponedel'nik delaetsya rezervnaya ko- piya nizshego urovnya, i dvazhdy v nedelyu - rezervnaya kopiya urovnya 9. Kak i dlya fajlovoj sistemy /u, dublirovanie urovnya 9 svoditsya k tem tol'ko fajlam, kotorye izmenilis' za etu nedelyu. . - 6-35 - Kak ispol'zuyutsya rezervnye kopii dlya vosstanovleniya fajlo- voj sistemy Teper' predpolozhim, chto proizoshel apparatnyj sboj, razru- shivshij informaciyu na zhestkom diske. Dopustim, eto sluchilos' v poslednij chetverg mesyaca, kak raz pered tem, kogda dolzhna byla byt' sdelana rezervnaya kopiya. Posle togo, kak problema s appara- turoj ustranena i sistema zanovo ustanovlena, nuzhno kak-to vos- stanovit' rezervnye kopii. Vosstanovite poslednij variant kazhdo- go urovnya dublirovaniya v ubyvayushchem poryadke: * uroven' 0 (sdelannyj v pervyj vtornik mesyaca) * uroven' 1 (sdelannyj v tretij vtornik) * uroven' 8 (sdelannyj v chetvertyj vtornik) * uroven' 9 (sdelannyj v sredu vecherom) Vam ne nuzhno vosstanavlivat' rezervnuyu kopiyu urovnya 8, sde- lannuyu vo vtoroj vtornik, tak kak posledovavshaya za nej kopiya urovnya 1 pokryla te zhe fajly. Edinstvennaya informaciya, kotoroj ne hvataet, - chto izmenilos' za chetverg do sboya. |to glavnaya prichina neobhodimosti dublirovaniya; vosstanovlenie posle sboya projdet prosto i s minimal'nymi poteryami. Glava 7 Dobavlenie drajverov ustrojstv v srede konstruktora svyazej ________________________________________________________________ Vvedenie 7-1 Drajvery ustrojstv 7-2 Ustanovka drajverov ustrojstv 7-2 Ustanovka drajverov s predvaritel'noj konfiguraciej 7-3 Ustanovka drajverov bez procedury nastrojki obolochki 7-3 - 7-2 - ________________________________________________________________ Drajvery ustrojstv Drajver ustrojstva v srede UNIX predstavlyaet soboj nabor programm, kotorye obespechivayut svyaz' s fizicheskimi ustrojstvami i yavlyayutsya sredstvami, s pomoshch'yu kotoryh operacionnaya sistema mozhet upravlyat' vypolneniem operacij vvoda/vyvoda dlya etih ust- rojstv. Drajver ustrojstva obychno postavlyaetsya v vide odnogo prog- rammnogo modulya. Ustanovka etogo programmnogo modulya v yadro yav- lyaetsya vazhnoj i neobhodimoj chast'yu dlya ustanovki fizicheskih ustrojstv. Ona dolzhna byt' polnost'yu zavershena do togo kak ust- rojstvo budet ispol'zovat'sya. Drajver obychno dopolnyaetsya vspomo- gatel'noj programmoj ili proceduroj nastrojki obolochki, kotorye pomogayut sformirovat' svyazi mezhdu drajverom i yadrom. CHtoby podgotovit' ustanovku novogo drajvera ustrojstva ne- obhodimo vypolnit' sleduyushchie dejstviya: * Posle zakrytiya sistemy i otklyucheniya pitaniya ustanovit' fizicheskoe ustrojstvo v sistemnyj blok v sootvetstvii s instrukciyami ego proizvoditelya. * Zagruzit' sistemu i vybrat' rezhim podderzhki sistemy. Vse operacii, opisannye v processe ustanovki, dolzhny vypol- nyat'sya v etom rezhime. * Ubedit'sya, chto ustanovlen konstruktor svyazej. Esli on eshche ne ustanovlen, ustanovite ego ispol'zuya komandu custom(ADM). * Ustanovite katalog, soderzhashchij konstruktor svyazej tak, chtoby mozhno bylo zapustit' sredstva konfiguracii. cd /etc/conf/cf.d Bol'shinstvo procedur ustanovki, opisannyh nizhe, dolzhny vypolnyat'sya v etom kataloge.  Ustanovka drajverov ustrojstv Instrukcii po ustanovke novyh drajverov ustrojstv otlichayut- sya dlya kazhdogo tipa ustrojstv. Neobhodimo pol'zovat'sya tol'ko instrukciej po ustanovke, postavlyaemoj vmeste s programmnym obespecheniem konkretnogo drajvera ustrojstva. - 7-3 - Posle togo, kak ustanovlen konstruktor svyazej i izuchena in- strukciya po ustanovke, mozhno pristupit' k sleduyushchim shagam po us- tanovke drajvera, kotorye zavisyat ot togo kak, mnogo raboty uzhe bylo sdelano postavshchikom drajvera. Mnogie postavshchiki drajverov komponuyut drajvery utilitami avtomaticheskoj ustanovki drajvera, sovmestimymi s custom. Vstav'te gibkij disk, poluchennyj ot postavshchika drajvera, v dis- kovod i vvedite : custom sysadmsh vybor pol'zovatelya: Sistema->Programmnoe obespechenie Vyberite opciyu dobavleniya podderzhivaemyh produktov, i sledujte instrukciyam, poyavlyayushchimsya na ekrane. Custom zapustit postavlyaemoe vmeste s drajverom V-sovmestimoe s sistemoj UNIX programmnoe obespechenie avtomaticheskoj ustanovki. Ono ustanavli- vaet programmnoe obespechenie drajvera ustrojstva i ustanavlivaet svyazi s versiej yadra UNIXa, kotoroe soderzhit novyj drajver ust- rojstva. Posle togo kak custom zavershit svoyu rabotu, sleduet pe- rejti k sleduyushchemu shagu ustanovki, obychno zaklyuchayushchemsya v testi- rovanii sozdannogo yadra. Dlya polucheniya detal'nogo opisaniya obratites' k dokumentacii ustanavlivaemogo drajvera ustrojstva. Esli drajver imeet predvaritel'nuyu konfiguraciyu sleduet vy- polnit' instrukcii, opisannye v "Ustanovke drajverov s predvari- tel'noj konfiguraciej". Esli eto ne tak, sledujte "Ustanovke drajverov bez procedury nastrojki obolochki", gde opredeleny dejstviya, neobhodimye dlya vklyucheniya drajvera v konfiguraciyu sis- temy. Ustanovka drajverov s predvaritel'noj konfiguraciej Gibkij disk ustanovki drajvera mozhet postavlyat'sya s proce- duroj ustanovki obolochki, ispol'zuemoj dlya vklyucheniya novogo drajvera v sistemu. Esli takaya procedura prisutstvuet na diske, zapustite ee, vvedya: ./<imya procedury> - 7-3a - gde imya procedury est' imya procedury ustanovki obolochki. Bol'shinstvo procedur ustanovki obolochki takzhe sozdaet vse speci- al'nye fajly neobhodimye dlya raboty ustrojstva; esli eto tak, perezagruzite yadro, kotoroe teper' vklyuchaet novyj drajver. Esli procedura ustanovki obolochki ne sozdala sootvetstvuyushchie speci- al'nye fajly v /dev, Vy dolzhny sozdat' ih s pomoshch'yu komandy mknod(C). Dlya polucheniya bolee podrobnoj informacii po sozdaniyu special'nyh fajlov smotrite shag 10 v "Ustanovka drajverov bez procedury nastrojki obolochki" ili obratites' k rukovodstvu po komande mknod(C). Ustanovka drajverov bez procedury nastrojki obolochki Esli na gibkom diske, postavlyaemom s drajverom, ne sushchest- vuet procedury ustanovki obolochki, sledujte dejstviyam opisannym nizhe (esli u Vas vozniknut problemy, obratites' k postavshchiku drajvera dlya polucheniya pomoshchi): - 7-4 - 1. Sozdajte rezervnuyu kopiyu yadra s pomoshch'yu sleduyushchej koman- dy: cp/unix/unix.old 2. Vvedite imya programmy drajvera iz modulya drajvera. Mo- dul' drajvera yavlyaetsya .o fajl (obychno Driver.o) v instalyacionnoj oblasti. Vvedite komandu : ./routines Driver.o ________________________________________________________________ Primechanie Esli Vy vidite neskol'ko .o fajlov, to eto znachit, chto ustanovochnaya oblast' soderzhit bolee chem odin drajver. Kazhdyj .o fajl yavlyaetsya modulem drajvera. Imena etih fajlov dlya kazhdogo drajvera obychno soderzhat nekotoryj prefiks, kotoryj yavlyaetsya imenem sootvetstvuyushchego ustrojstva. Naprimer, modul' drajvera dlya serijnogo ustrojstva vvoda/vyvoda mozhet imet' imya sioDriver.o. Vy dolzhny povtorit' shagi 2-10 procedury, kotoraya opisyvaetsya v dannom razdele, dlya kazhdogo drajvera, kotoryj Vy hotite ustanovit'. ________________________________________________________________ 3. Opredelite uroven' prioriteta preryvanij. Uroven' prio- riteta drajvera imeet imya, sostoyashchee iz stroki spl, za kotorym sleduet nomer ot 0 do 7. Naibol'shij nomer sledu- yushchij za spl i est' uroven' prioriteta preryvanij. Napri- mer, esli imya spl6 yavlyaetsya naibol'shim urovnem priorite- ta, to uroven' prioriteta preryvanij ustrojstva est' 6. Zatem vycherknite vse spl programmy iz spiska. 4. Najdite sootvetstvuyushchie imena programm drajvera. Vse programmy drajvera s perestraivaemoj konfiguraciej imeyut obshchij prefiks, takoj kak sio. Za kazhdym prefiksom sle- duet odin iz suffiksov:open, slose, read, write, ioctl, startup, exit, fork, exec, init, halt, poll, strategy, print, _tty, ili intr. Esli imya programmy obrazovano ne po etomu pravilu vycherknite ego iz spiska. Naprimer, es- li ¬3routines dlya sioDriver.o porozhdaet bol'shoj spisok programm, nachinayushchihsya s sio, i odnu ttinit programmu, to Vy dolzhny vycherknut' ee iz spiska, tak kak imya ee na- chinaetsya ne s sio. Sio drajver soderzhit neskol'ko drugih programm, kotorye takzhe dolzhny byt' vycherknuty, takie kak siopinit - iz-za "p". Sio - isklyuchitel'nyj sluchaj: bol'shinstvo drajverov ne imeyut takie nepravil'nye imena programm. - 7-5 - 5. Opredelite yavlyayutsya li periferijnye ustrojstva blok-orien- tirovannymi ili simvol-orientirovannymi ustrojstvami. Esli sushchestvuet programma s suffiksom strategy ili print, to ustrojstvo yavlyaetsya blok-orientirovannym. Esli suffiks - read, write ili ioctl, to ustrojstvo sim- vol-orientirovannoe. Esli net programm ni s odnim iz vy- sheperechislennyh suffiksov, to schitajte, chto ustrojstvo - simvol-orientirovannoe. 6. Sozdajte podkatalog v /etc/conf/pack.d , v kotoryj nado pomestit' nabor fajlov ustanavlivaemogo drajvera. V kachestve imeni podkataloga primite obshchij prefiks faj- lov. ¬2mkdir /etc/conf/pack.d/prefix Esli vy planiruete ispol'zovat' imya drajvera otlichnoe ot obshchego prefiksa (sm. ispol'zovanie opcii -h v komande configure, opisannoj dal'she), ispol'zujte eto imya dlya imeni podkataloga vmesto prefiksa. Pomestite fajly, svyazannye s drajverom v etot novyj pod- katalog. Spisok fajlov budet po krajnej mere vklyuchat' fajl Driver.o. Esli nabor fajlov drajvera takzhe soderzhit fajly space.c i stub.c, pomestite eti fajly takzhe v soz- dannyj podkatalog. ¬2mv Driver.o space.c stubs.c /etc/conf/pack.d/prefix _______________________________________________________________ Primechanie Esli vybrannye Vami fajly iz ustanovochnoj oblasti otnosyatsya bolee chem k odnomu drajveru (neskol'ko .o fajlov), to imena etih fajlov nachinayutsya s imeni sootvetstvuyushchego drajvera dlya kazhdogo drajvera iz ustanovochnoj oblasti (naprimer, sioDriver.o, siospace.c i siostubs.c). Kogda Vy razmestite fajly v podkata- loge kataloga /etc/conf/pack.d, udalite prefiks iz imen faj- lov takim obrazom, chtoby imena ih byli prosto Driver.o, space.c i stubs.c. Naprimer : mv sioDriver.o /etc/conf/pack.d/sio/Driver.o mv space.c /etc/conf/pack.d/sio/space.c mv stubs.c /etc/conf/pack.d/sio/stubs.c Ne zabud'te sozdat' podkatalog i pomestit' v nego fajly dlya kazhdogo drajvera, kotoryj Vy ustanavlivaete. _______________________________________________________________ - 7-6 - 7. Poluchite glavnyj nomer ustrojstva s pomoshch'yu sleduyushchej komandy i zapomnite ego dlya dal'nejshego ispol'zovaniya : ./configure -j NEXTMAJOR 8. Vyberite vektor preryvanij dlya konkretnogo ustrojstva. Esli sushchestvuet programma s imenem intr, obratites' k rukovodstvu po tehnicheskomu obespecheniyu dlya togo, chtoby najti kakie vektor ili vektora dostupny dlya ispol'zova- niya konkretnym ustrojstvom dlya preryvaniya. CHtoby polu- chit' spisok uzhe aktivizirovannyh vektorov, vvedite ko- mandu : ./vectorsinuse Nekotorye drajvery napisany takim obrazom, chto pozvolyayut razdelenie vektorov, odnako dlya nailuchshego ispol'zovaniya sistemy rekomenduetsya kazhdomu ustrojstvu predostavlyat' svoj sobstvennyj vektor ili vektora, esli eto vozmozhno. Vyberite podhodyashchie vektor ili vektora dlya dannogo ust- rojstva i zapishite ih. 9. Ispol'zujte komandu configure dlya zaneseniya informacii o novom drajvere v fajly konfiguracii sistemy. Vse opcii komandy configure podrobno opisany v rukovodstve po etoj komande (ADM). Komanda configure imeet sleduyushchij sintak- sis i vvoditsya v odnoj stroke, t.e. bez nazhatiya klavishi Return do togo, poka ne budet polnost'yu vvedena komanda: ./configure -b -c -m <glavnyj nomer ustrojstva> -s -m \ <spisok vektorov> -l <uroven' prioriteta preryvanij> -h \ <imya ustrojstva> |ti opcii imeyut sleduyushchie naznacheniya i ogranicheniya is- pol'zovaniya : -b ispol'zuetsya, esli ustanavlivaetsya blok-orientiro- vannoe ustrojstvo. -c ispol'zuetsya, esli ustanavlivaetsya simvol-orientirovannoe ustrojstvo. -m dolzhna predshestvovat' glavnomu nomeru ustrojstva, opredelennomu ranee. -s ispol'zuetsya vmeste s opciej -h, kogda dobavlyaetsya ili udalyaetsya nekotoryj posledovatel'nyj modul' i zamenyaet -m,-b i -c. Dlya potok-orientirovannogo drajvera ispol'zuetsya s opciyami -m i -c. -v ispol'zuetsya tol'ko esli drajver imeet intr prog- rammu; predshestvuet spisku vektorov opredelennym ranee. -a predshestvuet spisku imen programm drajvera, opre- delennym komandoj routines i vycherkivaniem isklyu- chitel'nyh elementov. - 7-7 - -l ispol'zuetsya tol'ko esli drajver imeet spl prog- rammu; predshestvuet urovnyu prioriteta preryvanij, opredelennomu ranee. -h ispol'zuetsya tol'ko dlya togo, chtoby ukazat' imya ustrojstva, otlichnoe ot prefiksa programm drajve- ra, ili vmeste so stream module kogda ne ukazan prefiks; podkatalog kataloga /etc/conf/pack.d, prednaznachennyj dlya hraneniya fajlov drajvera, dolzhen imet' imya etogo ustrojstva. Naprimer, dlya ustanovki v konfiguraciyu serijnogo drajve- ra vvoda/vyvoda, ispol'zuetsya komanda: ./configure -c -m 5 -v 3 4 -a sioopen sioread siowrite\ sioioctl siopoll sioinit sio_tty -l 7 Ustanovka drajvera virtual'nogo diska yavlyaetsya bolee prostym primerom, dlya vneseniya ego v konfiguraciyu is- pol'zuetsya komanda: ./configure -b -m 31 -a ramopen ramclose ramstrategy \ ramprint Ispol'zuya opcii -s i -h, Vy mozhete vnesti v konfiguraciyu potok-orientirovannyj modul': ./configure -a nmi_init -s -h nmi 10. Dlya togo, chtoby programmy mogli poluchit' dostup k vnov' ustanovlennomu ustrojstvu, sozdajte special'nyj fajl ustrojstva v /dev. Special'nye instrukcii po ustanovke, postavlyaemye vmeste s ustrojstvom, soderzhat bolee toch- nye svedeniya po imeni special'nogo fajla i drugim para- metram, svyazannym s nim. Dlya sozdaniya special'nogo faj- la ustrojstva ispol'zuetsya komanda mknod. Opredelite imya special'nogo fajla, tip ustrojstva( "b" - dlya blok- orientirovannogo, "c" - dlya simvol-orientirovannogo), glavnyj nomer ustrojstva i mladshij nomer ustrojstva (pokazyvayushchij nomer ustrojstva, drajvera ili linejnyj nomer). Naprimer, dlya togo chtoby sozdat' special'nyj fajl dlya serijnogo drajvera vvoda/vyvoda, vvedite : /etc/mknod /dev/ttyla c 5 1 Dalee privodyatsya primery sozdaniya special'nyh fajlov ustrojstv: /etc/mknod /dev/hcd0 b 1 0 /etc/mknod /dev/rhcd0 c 1 0 /etc/mknod /dev/hqp c 7 0 Uchityvajte soglasheniya UNIX po ustanovke imen diskovyh ustrojstv. Vy mozhete prisoedinit' cifru k mnemonichesko- mu kodu dlya ukazaniya nomera drajvera. Imya special'nogo simvol-orientirovannogo ustrojstva dolzhno imet' prefiks "r". - 7-8 - 11. Postrojte yadro, soderzhashchee novye drajvery, ispol'zuya sleduyushchuyu komandu: ./link_unix sysadmsh vybor pol'zovatelya: Sistema->Konfiguraciya->YAd- ro->Postroenie Ustanovka svyazej zajmet nekotoroe vremya, poetomu sledu- et osushchestvlyat' etu operaciyu posle togo, kak budut us- tanovleny vse drajvery. 12. Zagruzite novoe yadro, ispol'zuya sleduyushchuyu komandu : /etc/shutdown sysadmsh vybor pol'zovatelya: Sistema->Zavershenie Poyavitsya soobshchenie o zagruzke. Po nazhatiyu klavishi <Return> aktiviziruetsya perezagruzka sistemy i zagru- zitsya novoe yadro. ________________________________________________________________ Primechanie Esli  vozniknut   problemy  s  novym  yadrom, perezagruzite /unix.old ________________________________________________________________ Glava 8 Nastrojka raboty sistemy ________________________________________________________________ Vvedenie 8-1 Primery special'nogo raspredeleniya resursov 8-3 Pereraspredelenie resursov yadra s pomoshch'yu utility konfiguracii 8-4 Ispol'zovanie komandnoj stroki configure 8-5 Rekonfiguraciya v sluchae postoyannyh soobshchenij ob oshibkah 8-7 Rekonfiguraciya dlya vypolneniya zadach 8-8 Kogda nastraivat' i chto nastraivat' 8-8 Special'nye trebovaniya 8-8 Uluchshenie ispol'zovaniya diska 8-9a CHto nado sdelat' kogda dobavlyaetsya pamyat' 8-10a Organizaciya fajlovoj sistemy 8-11 Opredelenie effektivnogo sposoba ispol'zovaniya sistemy 8-14 Komanda ps 8-14 Peremennye pol'zovatelya $PATH 8-15 Ispol'zovanie sredstv izmereniya proizvoditel'nosti dlya diagnostirovaniya neeffektivnosti sistemy 8-16 Ispol'zovanie pamyati: Bufery i stranicy 8-17 Ispol'zovanie buferov: sar -b 8-17 Proizvoditel'nost' processa: sar -q 8-18 Ispol'zovanie processora: sar -u 8-19 Sistemnye tablicy: sar -v 8-20 Svoping: sar -w 8-21 Proverka raboty sistemy po komandam: timex 8-22 Opisanie nastraivaemyh sistemnyh parametrov 8-23 Diski i bufery 8-23 Simvol'nye bufery 8-25 Fajly, indeksnye deskriptory fajla i fajlovye sistemy 8-26 Processy, upravlenie pamyat'yu i svoping 8-29 CHasy 8-31 Mul'tiekrany 8-32 Ochered' soobshchenij 8-32 Semafory 8-33 Razdelennye dannye 8-34 Imya sistemy 8-35 Potoki dannyh 8-35 Ochepedi sobytij i ustpojstva 8-38 Appapatno-zavisimye papametpy 8-38 Papametpy pazdeleniya udalennyh fajlov 8-38 - 8-1 - ________________________________________________________________ Vvedenie Konstruktor svyazej soderzhit utilitu configure(ADM), kotoraya ispol'zuetsya dlya izmeneniya chisla parametrov, vliyayushchih na rabotu sistemy. V etoj glave ob®yasnyaetsya kak izmenit' eti parametry primenitel'no trebovaniyam Vashej sistemy. Krome togo, vklyucheny osnovnye procedury, kotorye pomogut uluchshit' ispol'zovanie re- sursov i rabotu sistemy. Sistema UNIX optimizirovana dlya ispol'zovaniya s raznoobraz- nymi konfiguraciyami tehnicheskih sredstv i yavlyaetsya bazoj dlya razlichnyh primenenij. YAdro, kotoroe yavlyaetsya serdcem operacion- noj sistemy, upravlyaet chislom resursov postoyanno ispol'zuyushchihsya, osvobozhdayushchihsya i povtorno podklyuchayushchihsya. |ti resursy vklyuchayut: bufery nekotoryj nabor blokov vnutrennej pamyati, ispol'zue- myh dlya hraneniya v nih ispol'zuemyh dannyh. (Bufery uvelichivayut effektivnost', tak kak dannye hranyatsya vo vnutrennej pamyati, chto umen'shaet chislo operacij chteniya s diska). tablichnye elementy nekotoraya oblast' v kakih-libo tablicah, kotoraya is- pol'zuetsya yadrom dlya hraneniya informacii o tekushchih zadachah, resursah i sobytiyah. drugie parametry Drugie opredelyaemye znacheniya, upravlyayushchie special'- nymi resursami (takie kak chislo dostupnyh mul'tiek- ranov ili kolichestvo signal'nyh ustrojstv). Ispol'zovanie etih resursov opredelyaetsya nekotorymi grani- cami, kotorye mozhno suzit' ili rasshirit', inogda za schet drugih resursov. Nastrojka raboty sistemy obyazatel'no potrebuet vnimaniya pri pervichnoj ustanovke sistemy UNIX. Kogda Vy pervyj raz zagruzhaete sistemu, ona avtomaticheski nastroena na standartnuyu konfigura- ciyu, kotoraya udovletvoryaet bol'shinstvu situacij. |ta konfigura- ciya, odnako, ne mozhet schitat'sya obrazcom ispol'zovaniya sistemy dlya konkretnogo primeneniya. Poetomu struktura sistemy pozvolyaet provesti ee rekonfiguraciyu dlya uvelicheniya effektivnosti konkret- nogo ispol'zovaniya sistemy po sravneniyu so standartnoj konfigu- raciej sistemy. - 8-2 - ________________________________________________________________ Primechanie Hotya sushchestvuyut sredstva, kotorye uproshchayut process nastroj- ki, my ne rekomenduem izmenyat' parametry yadra bez osoboj neobhodimosti. ________________________________________________________________ Sushchestvuet neskol'ko prichin dlya pereraspredeleniya resursov sistemy : * Vy ustanavlivaete dopolnitel'nuyu pamyat' i poetomu hotite raspredelit' bol'she pamyati. * Postoyanno poyavlyayutsya soobshcheniya ob oshibkah, kotorye poka- zyvayut, chto zanyaty opredelennye resursy, takie kak in- deksnye deskriptory fajla ili elementy tablicy. * Vremya reakcii sistemy postoyanno slishkom veliko, a eto oz- nachaet, chto resursy ochen' maly dlya effektivnoj raboty sistemy (naprimer, ochen' malo ustanovleno fizicheskoj pa- myati). * Resursy neobhodimo perestroit' dlya togo. chtoby oni otve- chali trebovaniyam konkretnogo prilozheniya. Krome togo, vazhno opredelit', kakie iz resursov okazalis' izlishnimi ili neeffektivno raspredelennymi. Opredelennye nastra- ivaemye parametry otvechayut trebovaniyam k sisteme, kogda ustanav- livaetsya dopolnitel'naya pamyat' s cel'yu podderzhki sistemoj bol'- shego kolichestva pol'zovatelej. Odnako, dlya komp'yutera, ispol'zuemogo v kachestve vysoko-proizvoditel'nogo personal'nogo komp'yutera ili specializirovannogo processora, net neobhodimosti uvelichivat' nastraivaemye parametry yadra, kogda ustanavlivaetsya dopolnitel'naya pamyat'. Konechno, nastrojka opredelennyh paramet- rov obychno svyazana s ustanovkoj dopolnitel'noj pamyati dlya pod- derzhki bol'shego kolichestva pol'zovatelej (NBUF, NCLIST i dr.) mozhet na samom dele umen'shit' obshchuyu proizvoditel'nost', tak kak eti parametry uvelichivayut razmer trebuemoj oblasti dannyh yadra, chto umen'shaet dostupnyj razmer novoj pamyati dlya raboty pol'zova- telej. Proshche govorya, ozhidaemoe ispol'zovanie Vashego komp'yutera i Vashi plany, kak eto delat', dolzhny ispol'zovat'sya kak rukovods- tvo pri opredelenii trebovanij po nastrojke parametrov. Sushchestvuyut drugie storony nastrojki konfiguracii sistemy, privodyashchie k otricatel'nomu vliyaniyu na rabotu sistemy. Naprimer: * organizaciya fajlovoj sistemy * organizaciya katalogov * effektivnost' ispol'zovaniya $PATH - 8-3 - * ispol'zovanie ps, sar, ucheta raboty, profilirovanie yadra i drugie sistemnye utility dlya opredeleniya stepeni is- pol'zovaniya sistemy. V etoj glave takzhe obsuzhdaetsya vopros o tom, kak ubedit'sya, chto sistema rabotaet s maksimal'noj effektivnost'yu v konkretnyh oblastyah primeneniya. Primery special'nogo raspredeleniya resursov Special'nye prilozheniya zachastuyu trebuyut pereraspredeleniya klyuchevyh resursov sistemy dlya optimizacii raboty. Naprimer, pol'zovateli, rabotayushchie s bol'shimi bazami dannyh, mogut reshit', chto neobhodimo uvelichit' chislo raspredelennyh fajlov po otnoshe- niyu k tekushchemu chislu fajlov, ustanovlennyh v sisteme. Pol'zova- teli, kotorym ne trebuetsya special'nyh sredstv, naprimer, takih kak upravlenie soobshcheniyami, mogut reshit', chto oni poluchat neko- toroe uvelichenie skorosti raboty sistemy pri otsoedinenii etih sredstv. Reshenie ob optimizacii ispol'zovaniya konkretnyh resursov rassmatrivaetsya kak reshenie o nastrojke yadra. Kazhdyj resurs ili ogranichenie predstavlyaetsya otdel'nym parametrom yadra. Tekushchie znacheniya etih parametrov izmenyayutsya s pomoshch'yu utility configure. - 8-4 - ________________________________________________________________ Pereraspredelenie resursov yadra s pomoshch'yu utility CONFIGURE Utilita configure yavlyaetsya legko ispol'zuemoj menyu-orienti- rovannoj programmoj, kotoraya predstavlyaet kazhdyj resurs i zapros na modifikaciyu, ustanavlivaet raspredelenie sootvetstvuyushchih re- sursov,  redaktiruet  yadro,  vklyuchaya  procedury  ustanovki sredy link_unix, kopiruet yadro v kornevoj katalog, perezagruzhaet i testiruet novoe yadro. CHtoby izmenit' kakoj-libo parametr yadra neobhodimo vypol- nit' sleduyushchie dejstviya: 1. Perezagruzite sistemu i vyberite odnopol'zovatel'skij rezhim(rezhim soprovozhdeniya). 2. Ispol'zujte komandu custom (ADM) dlya togo, chtoby oprede- lit' ustanovlen li paket konstruktora svyazej (LINK). Es- li net, - ustanovite ego s pomoshch'yu komandy custom. 3. Posle togo, kak Vy ubedites', chto konstruktor svyazej us- tanovlen, vvedite sleduyushchie komandy: cd /etc/conf/cf.d ./configure sysadmsh vybor pol'zovatelya: Sistema-> Konfiguraciya-> YAdro-> Parametry 4. Na ekrane otobrazitsya menyu utility configure: +---------------------------------------------------------------+ | 1. Diskovye bufery | | 2. Simvol'nye bufery | | 3. Fajly, indeksnye deskriptory i fajlovye sistemy | | 4. Processy, upravlenie pamyat'yu i svopping | | 5. CHasy | | 6. Mul'tiekrany | | 7. Ochered' soobshchenij | | 8. Semafory | | 9. Razdelennye dannye | | 10. Imya sistemy | | 11. Potoki dannyh | | 12. Ochered' sobytij i ustrojstva | | 13. Apparatno-zavisimye parametry | | 14. Parametry razdelennyh udalennyh fajlov | | | | Vyberite kategoriyu parametrov, podlezhashchih rekonfigura- | | cii, nabrav ee nomer ot "1" do "14" ili "q" dlya vyhoda: | +---------------------------------------------------------------+ - 8-5 - Vyberite kategoriyu s pomoshch'yu vvoda sootvetstvuyushchego no- mera. Togda na ekrane otobrazyatsya odin za drugim resursy etoj kategorii, kazhdyj so svoim tekushchim znacheniem. Vve- dite novoe znachenie dlya etogo resursa ili ostav'te ego tekushchee znachenie prostym nazhatiem klavishi <Return>. Pos- le togo kak budut otobrazheny vse resursy vybrannoj kate- gorii, utilita configure vozvrashchaetsya k menyu so spiskom kategorij parametrov. Vyberite druguyu kategoriyu paramet- rov dlya izmeneniya ili pokin'te utilitu nazhatiem klavishi "q". ________________________________________________________________ Primechanie Sleduet otmetit', chto programmnyj paket, sootvetstvuyushchij izmenyaemomu parametru, dolzhen sushchestvovat', chtoby dejstvitel'no ispol'zovat' resurs sootvetstvuyushchij parametru. Naprimer, paket Stream dolzhen byt' ustanovlen dlya parametrov potokov, chtoby byl effekt. ________________________________________________________________ 5. Posle togo, kak Vy zakonchite izmenyat' parametry, nado vklyuchit' ih v novoe yadro. Vvedite sleduyushchuyu komandu: ./link_unix sysadmsh vybor pol'zovatelya: Sistema-> Konfiguraciya-> YAdro-> Postroenie |ta komanda sobiraet kazhdyj iz modulej yadra v novoe yad- ro, kotoroe dolzhno byt' teper' ustanovleno. Sledujte in- strukciyam razdela "Testirovanie i ustanovka novogo yad- ra" v glave "Dobavlenie drajverov ustrojstv s pomoshch'yu konstruktora svyazej". Ispol'zovanie komandnoj stroki configure Utilita configure imeet takzhe interfejs komandnoj stroki, ispol'zuemyj dlya razrabotchikov programmnyh prilozhenij. Naprimer, razrabotchik baz dannyh reshaet, chto emu neobhodimo razmestit' od- novremenno 70 fajlov vmesto 50, togda on mozhet ispol'zovat' pro- ceduru ustanovki sredy dlya togo, chtoby vypolnit' rekonfiguraciyu. Dlya togo, chtoby opredelit' tekushchee znachenie nekotorogo resursa konfiguracii, ispol'zuya interfejs komandnoj stroki, sleduet vvesti: - 8-6 - ¬2./configure -y RESOURCE gde RESOURCE - imya nastraivaemogo parametra (nabiraetsya propisnymi bukvami). Dlya togo chtoby izmenit' znachenie nekotorogo resursa, ispol'zuya komandnuyu stroku, vvedite: ¬2./configure RESOURCE=<znachenie> |tot interfejs yavlyaetsya dopolneniem k interaktivnomu; odni i te zhe resursy mogut vklyuchat'sya v konfiguraciyu s pomoshch'yu oboih interfejsov. Sleduyushchij razdel opisyvaet dejstviya neobhodimye dlya rekon- figuracii resursov yadra. - 8-7 - ________________________________________________________________ Rekonfiguraciya v sluchae postoyannyh soobshchenij ob oshibkah Byvayut situacii, kogda operacionnaya sistema vydaet soobshche- niya, chto prevysheny sistemnye ogranicheniya. |ti soobshcheniya vydayutsya v vide strok na ekrane konsoli. Nekotorye iz nih yavlyayutsya chisto informacionnymi. Drugie predshestvuyut avarijnomu sostoyaniyu siste- my, v etom sluchae vyvodyatsya dopolnitel'nye diagnosticheskie soob- shcheniya i sistema "podvisaet", trebuya vmeshatel'stva dlya perezag- ruzki. Ne sleduet izmenyat' konfiguraciyu yadra, esli soobshchenie polucheno odin raz, ili dazhe neskol'ko raz, a tol'ko v tom slu- chae, kogda odno i tozhe soobshchenie poyavlyaetsya postoyanno. Esli Vy vstrechaete odno iz soobshchenij perechislennyh v tabli- ce 8.1, obratite vnimanie na sootvetstvuyushchie parametry nastrojki dlya polucheniya dopolnitel'noj informacii. Esli voznikla neobhodi- most' v regulirovke resursa, poprobujte uvelichit' dlya nachala ego znachenie na nebol'shuyu velichinu, esli problema ostaetsya, to sle- duet uvelichit' znachenie resursa na 100% ili bolee otnositel'no ego pervonachal'nogo znacheniya. Esli problema vse eshche ne budet re- shena, to sleduet bolee detal'no issledovat' situaciyu i oprede- lit', kakaya programma ili posledovatel'nost' privodyat k oshibke. - 8-7a - Tablica 8.1  Soobshcheniya ob oshibkah i svyazannye s nimi nastraivaemye parametry +-----------------------------------------------+--------------+ | Soobshcheniya ob oshibkah yadra | Parametry | +-----------------------------------------------+--------------+ |iget-inode table overflow | NINODE | |(perepolnenie tablicy iget-inode) | | +-----------------------------------------------+--------------+ |timeout table overflow | NCALL | |(perepolnenie tablicy tajmautov) | | +-----------------------------------------------+--------------+ |file table overflow | NFILE | |(perepolnenie tablicy fajlov) | | +-----------------------------------------------+--------------+ |mfree map overflow n(*) | SPTMAP | |(perepolnenie plana mfree) | | +-----------------------------------------------+--------------+ |Region table overflow | NREGION | |(perepolnenie tablicy regionov) | | +-----------------------------------------------+--------------+ |configured value of NOFILES n(*) is less than | NOFILES | |minimum(greater of the maximum) | | |[znachenie NOFILES v konfiguracii men'she | | |minimal'nogo(bol'she maksimal'nogo)] | | +-----------------------------------------------+--------------+ |stropen: out of streams | NSTREAM | |(vyhod za vozmozhnoe chislo otkrytyh potokov) | | +----------