Din moment ce presupunem de la bun început că această carte este un calculator personal, este necesar să se acorde o anumită atenție la sarcini de administrare a sistemului. La urma urmei, nu aveți un administrator de sistem, care poate fi contactat în fața oricărei provocări. Ar fi de dorit numai de la bun început să se amintească faptul că, în cele mai multe cazuri, configurația sistemului trebuie să fie rădăcină superutilizator.
Și o altă remarcă preliminară, care vă va ajuta să înțeleagă mai bine și să stăpânească principiile de management Linux: toate setările sistemului de operare poate fi efectuată prin editarea fișierelor script (sau scripturi) și fișierele de configurare, care sunt citite de script-uri. Iar cei care și alții (de ex. E., și script-urile și fișierele de configurare) sunt fișiere text simple. Desigur, în Linux, există o varietate de instrumente speciale și sisteme de management a configurației (cum ar fi linuxconf sau printtool), dar rezultatele acestor programe sunt încă înregistrate în aceleași fișiere de configurare. Figurat vorbind, despre Linux (UNIX și, în general), se poate spune „acest lucru este aproape în întregime de tratare a textului.“ Dacă de la început să-și amintească despre această caracteristică poate fi mult mai ușor de a învăța Linux probleme de administrare a sistemului.
sarcini de administrare a sistemului de bază. Procese și identificatorii acestora
Sarcinile administratorului de sistem includ, de obicei, următoarele sarcini:
- conectarea și configurarea dispozitivelor hardware;
- instalarea și actualizarea software-ului;
- înființat și de a gestiona servicii la nivel de sistem (de configurare a sistemului);
- Gestionarea utilizatorilor;
- managementul proceselor;
- alocarea resurselor;
- de securitate.
Conexiuni Întrebări și setările de hardware, precum și procedurile de instalare și actualizări de software vor fi discutate în următoarele două conferințe. Restul sarcinilor de administrare a sistemului vor fi discutate pe scurt în această secțiune. Începem prin luarea în considerare modul în care are loc procesul de boot sistem de operare. Faptul că acest pas determină în mare măsură modul de funcționare ulterioară a sistemului și configurația acestuia. Dacă pot influența procesul de boot, atunci va fi deja capabil de a realiza configurația dorită după încărcare.
Dar pentru a înțelege procedura de pornire, trebuie să aveți o idee generală despre ceea ce un proces în sistem, deoarece acest concept va continua să fie utilizat în viitor.
În primă aproximație, putem presupune că procesul - acesta este încărcat în programul de memorie RAM. Dar acest lucru nu este tocmai corect să spunem că „procesul de executare a unui program.“ Faptul că Linux început procesul care încarcă în memorie programul din fișierul specificat la el și începe să-l pună în aplicare. Acest lucru înseamnă că fiecare proces ar trebui să fie pornit (cum se spune - „generat“) un alt proces. Aceasta înseamnă că pentru fiecare proces unic definit prin „părinte“ (sau „strămoș“), pentru care procesul este un „copil“ (sau „descendent“). Dacă doriți să vedeți un „arbore“ a proceselor care rulează pe sistemul dvs., urmați echipa Pstree. Ieșirea acestei comenzi arată că „părintele“ tuturor proceselor din sistem (sau „rădăcina arborelui de proces“) este procesul de inițializare. care începe după primul kernel-ul este încărcat.
Fiecare proces din sistem are un ID unic - PID. alocat procesului de pornire. Procesul de ID-1 realizează programul de inițializare. Este pentru aceste identificatorii de sistem face distincția între procese. Fiecare proces care rulează în orice moment, este într-una din următoarele stări: activ (R), suspendat (T) sau „adormit“ (S). Stadiul actual al procesului este numit starea de proces.
Mai mult identificator și starea fiecărui proces în structurile speciale ale nucleului următoarele date sunt stocate (lista de mai jos nu este completă):
Deoarece Linux - sistem multitasking, pot fi în același timp rulează o mulțime de procese. Cu toate acestea, se aplică cuvântul „simultan“ nu este în întregime corectă, pentru că, de fapt, în fiecare moment de timp, se realizează un singur proces. (Pentru a fi precis, trebuie remarcat faptul că într-un sistem multiprocesor în care Linux poate lucra de asemenea, pot rula simultan mai multe procese, dar considerăm un singur sistem cu un singur procesor). proces de planificator atribuie fiecărui proces un mic cuantum de timp și după aceea cuantică trece de control la procesul următor. intervale de timp alocate fiecărui proces, atât de mic încât utilizatorul creează iluzia de executarea simultană a mai multor procese. Și la unele dintre cele mai importante procese primesc mai mult timp de procesor pentru fiecare proces, este setat prioritate.
Utilizatorii pot „comunica“ cu procesele prin trimiterea acestora semnale. Procesele de asemenea, să comunice între ele prin intermediul semnalelor. Când am apăsați combinația de taste
Un tip special de procese sunt demoni. De fapt, nu este nimic special. Este pur și simplu, procesele care rulează în fundal, fără a afișa date la terminal. Demonii sunt de obicei utilizate pentru a îndeplini funcțiile de serviciu, cereri de servicii de la alte procese, nu neapărat rulează pe calculator.
De asemenea, trebuie menționat faptul că procesele pot rula ( „interior“) filamente individuale (fire), sau fire. Subiect - o execuție în paralel a aceluiași program, care sunt implementate ca Linux, procesele rulate cu un steag special. Din punct de vedere al sistemului care sunt diferite de alte procese, doar celor care nu creează un mediu separat, acestea sunt realizate într-un mediu al procesului părinte.
Aceste date despre procesul nostru până suficient (în procesul de revizuire, vom reveni mai târziu).