Documente Academic
Documente Profesional
Documente Cultură
Admin5 PDF
Admin5 PDF
sistemelor Linux
Cursul 5
Notiuni de configurare de baza – partea I
Dragoş Acostăchioaie
http://www.unixinside.org
Pornirea si oprirea sistemului
Pornirea sistemului
pornirea nucleului Linux
initializeaza echipamentele cunoscute
monteaza sistemul de fisiere radacina in mod readonly
executa /sbin/init
init devine parintele tuturor proceselor care vor fi pornite ulterior
executa scriptul /etc/rc.d/rc.sysinit
verifica integritatea sistemului radacina apeland fsck
verifica integritatea celorlalte sisteme de fisiere din /etc/fstab
monteaza sistemele de fisiere locale
initializeaza memoria virtuala
initializeaza ceasul sistemului
executa rc.serial pentru a initializa porturile seriale speciale
Pornirea sistemului (continuare)
citeste configurarile din /etc/inittab, care descrie fiecare nivel de executie
si stabileste nivelul implicit
executa scripturile asociate nivelului implicit de executie, aflate in
directorul /etc/rc.d/rcN (N = nivelul de executie)
executa scriptul /etc/rc.d/rc.local, care efectueaza initializari locale
Nivelurile de executie
standardul UNIX System V defineste o serie de stari ale sistemului,
denumite niveluri de executie (run levels)
la un moment dat, sistemul se gaseste in una din aceste stari
poate fi trecut oricand intro alta stare (nivel)
nivelurile de executie:
0 – starea de oprire (halt): starea in care sistemul poate fi oprit in
siguranta
1 – starea de reparare a sistemului (single user): nu este montata decat
partitia radacina, reteaua nu este activata iar serviciile nu sunt pornite;
este pornit doar un interpretor de comenzi; se foloseste atunci cand
apar defectiuni in sistem, de ex. defectiunea unei partitii
2 – starea normala a sistemului, fara NFS (multiuser without NFS)
3 – starea normala a sistemului (multiuser)
4 – neutilizata
Nivelurile de executie (continuare)
5 – starea normala a sistemului, cu login X Window
6 – starea de repornire (reboot)
exista o serie de niveluri de executie aditionale, desemnate prin litere
nu reprezinta stari distincte, ci folosesc pentru a comunica programului
init sa execute anumite operatiuni
schimbarea nivelului de executie se face prin telinit (legatura simbolica la
init), primind ca argument un caracter si executa o actiune:
0, 1, 2, 3, 4, 5, 6 – schimba nivelul de executie
q, Q – reciteste /etc/inittab
s, S – trece in mod singleuser
u, U – reexecuta programul init
Utilizarea modului single
nivelul de executie single se foloseste pentru activitati administrative
pentru a initializa acest mod, init executa un interpretor de comenzi
sub utilizatorul root
serviciile sistemului nu sunt disponibile, nefiind disponibila executia
daemonilor sau altor programe in fundal
sistemul poate fi pornit in mod single furnizand nucleului Linux optiunea
single, la promptul incarcatorului de comenzi
este posibil ca sistemul sa porneasca automat in mod single, atunci cand
in cadrul procesului de pornire apar probleme care nu pot fi rezolvate
automat (de exemplu cand fsck detecteaza erori care nu pot fi reparate in
mod implicit)
pornirea sistemului poate continua terminand executia shellului
Fisierele de configurare System V
fisierul /etc/inittab contine intrari care definesc actiunile sistemului atunci
cand acesta intra in fiecare nivel de executie, cu formatul:
eticheta : lista_stari : actiune : proces
eticheta – eticheta unica ce identifica fiecare intrare (maxim 4 car.)
lista_stari – lista nivelurilor la care se aplica intrarea; daca este vida,
intrarea se aplica la toate nivelurile de executie
proces – programul care va fi executat
actiune – indica modul in care init trateaza procesul executat de intrare
atunci cand sistemul intra intrun nou nivel de executie, init prelucreaza
toate intrarile specificate pentru respectivul nivel, in ordinea aparitiei
in fisierul de configurare:
wait – porneste procesul si asteapta sa se incheie inainte de a trece
la urmatoarea intrare
Fisierele de configurare System V (continuare)
respawn – porneste procesul si il reporneste daca aceste isi termina executia
(utilizata in general pentru procesele de tip getty)
once – porneste procesul doar daca acesta nu ruleaza deja; nu asteapta
incheierea lui
boot – executa procesul doar la pornirea sistemului; nu asteapta incheierea
bootwait – executa procesul doar la pornirea sistemului; asteapta incheierea
initdefault – stabileste nivelul de executie implicit; de obicei are valoarea 3
off – daca procesul ruleaza, il opreste
ondemand – procesul va fi executat cand respectivul nivel este apela; nu va
avea loc o schimbare de nivel de executie; nivelurile de acest tip pot fi a, b
sau c
ctrlaltdel – procesul va fi executat cand init primeste semnalul SIGINT
(cand sa apasat Ctrl+Alt+Del la consola)
Fisierele de configurare rc
la schimbarea nivelului de executie, init apeleaza scriptul /etc/rc.d/rc, care
executa toate scripturile din directorul /etc/rc.d/rcn.d, unde n este numarul
noului nivel
toate numele de fisiere incep cu un caracter initial (S sau K), urmat de un
numar format din doua cifre, sfarsinduse cu numele serviciului
sunt executate mai intai scripturile care incep cu K (folosite pentru a
incheia procese), urmate de cele care incep cu S (utilizate pentru a porni
procese), in ordine alfabetica
scripturile din directoarele rcn.d sunt de obicei legaturi la scripturile aflate
in /etc/rc.d/init.d
atunci cand un script K este executat, acesta primeste parametrul stop,
iar scriptul S, parametrul start
Oprirea sistemului
se foloseste comanda shutdown
atentioneaza utilizatorii ca sistemul urmeaza sa fie oprit
sunt blocate intrarile utilizatorilor in sistem
trece sistemul in nivelul de executie 0 (pentru oprire)
sau 6 (pentru repornire)
este trimis proceselor semnalul SIGTERM, oferindule
timp pentru asi incheia executia
este trimis proceselor semnalul SIGKILL
sunt demontate toate sistemele de fisiere montate
calculatorul este oprit sau repornit
shutdown [ optiuni ] timp [ mesaj ]
t sec – asteapta sec secunde intre trimiterea semnalului SIGTERM si
SIGKILL
r – reporneste sistemul
Oprirea sistemului (continuare)
h – opreste sistemul
c – anuleaza un apel shutdown in curs
timp – timpul la care va fi inceputa procedura de oprire
hh:mm – timp absolut
+m – numar de minute dupa care va fi oprit sistemul
now – imediat
mesaj – mesajul de atentionare trimis utilizatorilor
alte comenzi
halt
poweroff (trimite si comanda de oprire)
reboot, Ctrl+Alt+Del
Pornirea, repornirea si oprirea serviciilor
se apeleaza scriptul /etc/rc.d/init.d/nume_serviciu cu parametrul:
start – porneste serviciul
stop – opreste serviciul
restart – reporneste serviciul
status – verifica daca serviciul este activ
se foloseste comanda service nume_serviciu actiune
Daemonul xinetd
daemonul xinetd are rolul de a superviza activitatea unor servicii (FTP,
POP3, telnet etc.)
xinetd asteapta conexiuni pe o serie de porturi, iar cand apare o cerere
lanseaza un program care o trateaza
dupa ce programul sia incheiat executia, xinetd continua sa accepte
conexiuni
se configureaza prin intermediul /etc/xinetd.conf
serviciile prin intermediul xinetd se gestioneaza cu chkconfig
Utilitarul chkconfig
chkconfig configureaza serviciile sistemului:
chkconfig [ list ] [ add ] [ del ] [ level lista_niveluri ] serviciu
[ actiune ]
lista_niveluri – lista de niveluri de executie in care se doreste activarea/
dezactivarea serviciului
actiune – poate fi on sau off – pentru activarea/dezactivarea serviciului
list – afiseaza toate serviciile inregistrate, precum si setarile pentru
fiecare nivel de executie in parte
add – adauga serviciul specificat in lista de servicii inregistrate
del – sterge serviciul din lista de servicii inregistrate