Mediu interactiv care permite comunicarea directa cu calculatorul si primirea imediata a raspunsurilor si mesajelor. Mediu multiuser care imparte resursele calculatorului prin tehnica "time sharing". Mediu multitasking care permite executia mai multor programe in acelasi timp. Sistemul contine: un Kernel (nucleu) care coordoneaza functionarea interna a calculatorului (de ex. alocarea resurselor) si mai multe Shell-uri (la noi fiecare user are ca shell BASH) actioneaza ca o legatura intre utilizator si kernel prin interpretarea si executia comenzilor introduse interactiv.
Pentru a se conecta, un utilizator trebuie sa tasteze: numele utilizatorului (login: nume utilizator) si parola (password:parola)
Sistemul nu lucreaza cu nume ci el lucreaza doar cu numere ca de exemplu: cu numar de utilizator (UID), cu numar de grup de lucru (GID), cu director de intrare ($HOME). Deci sistemul stie doar ca ulilizatorul xxx are numarul 512 (UID) si in continuare va lucra numai cu numarul 512 pentru utilizatorul xxx.
Un utilizator conectat poate sa ceara numele sau de utilizator (prin comanda ), sa intre ca alt utilizator definit ( Exemplu: sunt pe userul dragos si vreau sa intru pe userul root, deci voi da comanda login root unde imi va cere parola ), sa-si schimbe parola (). Exemplu: vreau sa-mi schimb parola, deci voi da dupa care aceasta imi va cere vechia parola (pentru a fi sigur ca nu este un impostor) dupa care trebuie sa introduc noua parola de doua ori (pentru a fi sigur ca nu am gresit), sa ceara numele si numerele UID, GID ().
In general se aseamana cu sistemul de operare DOS, exista fisiere care sunt unitate de memorare a informatiilor, director (catalog) care contine sau poate sa nu contina mai multe fisiere sau un singur fisier.
Linuxul are o structura bine precizata la inceput ea putanduse modifica pe parcurs.
Structura de directoare initiala arata cam asa:
Director |
|
/ |
-directorul radacina in care sunt toate fisierele sistemului |
/bin |
-fisiere executabile si utilitare des folosite |
/dev |
-fisiere speciale asociate dispozitivelor periferice, |
/home |
-radacina unui sub arbore format din directoarele |
/tmp |
-fisiere temporale folosite in anumite aplicatii |
/mnt |
-directorul in care se pot monta unele "periferice" |
"Drumul" de la radacina la un fisier se numestet cale de acces,
aceasta poate fi de doua tipuri:
a) calea absoluta : de la radacina la fisier
Exemplu: /home/dragos/mail/mboxb) calea relativa : de la directorul curent la fisier
Exemplu: daca directorul curent este /home fisierul mbox se acceseazaIn linux exista directoare uzuale ca:
a) directorul radacina (/)
b)
directorul curent (.), acesta este returnat de comanda (), el se poate schimba
cu comanda cd cale_director.
c) directorul HOME ($HOME) este radacina subarborelui atasat utilizatorului; un utilizator se poate intoarce in directorul HOME atasat lui folosind comanda fara nici un argument
Exemplu: echo $HOME va avea ca efect tiparirea prin comandad) directorul superior (..)
Exemplu: dam cd /usr/lib/uucp, deci suntem in directorulSper sa va descurcati cu trecerea dintr-un director in altul, este aproape ca si in dos, dar in loc de \ (backslash) se pune /(slash). Cu astea clarificate sa trecem la fisiere.
Comanda
de afisare a fisierelor este , sintaxa ei este:
ls [optiuni] director
daca
lipseste "director" aceasta afiseaza fisierele din directorul curent.
In loc de director se poate pune numele unui fisier.
Optiuni pot fi:
Schimbati directorul in /usr/lib/uucp cd /usr/lib/uucp si dati acolo urmatoarele exemple:
[ls
-l], [ls -al], [ls -si], [ls -lS] , iar daca fisierele defileaza prea repede pe
ecran se poate da: [ls [optiuni] director | more]
Observatie : In tot acest
capitol in numele de fisier sau director se pot folosi semnele '*' si '?' cea
ce inseamna inlocuirea unui grup de caractere respectiv a unei singur caracter.
Exemplu: Presupunem ca in directorul curent avem fisierele test,test1,teze,carte,mail,revista si in acel director dam:
ls te* -> afisarea fisierelor test,test1,teze (toate care incep cu te)Accesul
la un fisier se face prin prisma drepturilor user-ului asupra acestuia.
Proprietarul fixeaza drepturile de acces la fisierele sale. Exemplu: din
directorul /usr/lib/uucp dam se va obtine:
I |
II |
III |
IV |
V |
VI |
VII |
VIII |
IX |
X |
15652 |
8 |
-r--r--r-- |
1 |
root |
uucp |
7597 |
May 9 |
1994 |
README |
Zona |
Ce se gaseste in ea |
I |
-numarul nodului |
II |
-numarul de blocuri |
III |
-drepturi de acces |
IV |
-numarul de legaturi spre acel fisier |
V |
-proprietarul fisierului |
VI |
-grupul din care face parte |
VII |
-lungimea fisierului |
VIII |
-data la care s-a modificat |
IX |
-anul sau ora la care s-a modificat |
X |
-numele fisierului |
In Zona a III avem drepturi
de acces asupra fisierelor si a directoarelor, astfel aceste drepturi se impart
la randul lor in patru zone si anume:
Zona i ne da tipul fisierului care poate fi:
d DirectorZona ii ne da drepturile proprietarului fisierului.
Zona iii ne da drepturile grupului din care face parte proprietarul.
Zona iv ne drepturile pe care le au altii asupra fisierului.
Drepturile unui fisier pot fi: r
(read) de citire a fisierului, w
(write) de scriere in fisier, x
de executie. Dreprurile la nivel de directoare sunt: r autorizeaza citirea; w autorizeaza crearea sau distrugerea unui
element al directorului; x
autorizeaza intrarea in director.
Din acesta afisare se trag concluzile:
README este fisier obisnuit (rezulta din zona i).
proprietarul (root) lui are drept de citire (r) si scriere (w) in el (rezulta din zona ii). grupul (uucp) din care face parte are drept de citire (r) si executie (x) (rezulta din zona iii) .
toti useri au dreptul sa citeasca fisierul (rezulta din zona iv).
Exemplu 2) : 1651 2 drwxr-xr-- 2 uucp bin 1024 May 9 21:30 Mail/Din acesta afisare se trag concluzile:
Mail este un director ( => din zona i)
proprietarul (uucp) lui are drept de citire (r), scriere (w) in el si dreptul de a intra in acest director ( => din zona ii).
grupul (bin) din care face parte are drept de citire (r) si de intrare in director (x) (rezulta din zona iii) .
toti useri au dreptul sa citeasca directorul,
adica sa-l vada ca exista (rezulta din zona iv).
Comanda pentru schimbarea acestor drepturi este , cu urmatoarea sintaxa:
chmod [optiuni] nume_fisier
Optinuile au o sintaxa de de genul: clasa_operator_drept (Ex. g+rx) Unde:
clasa: poate fi
operator: poate fi
drept: poate fi combinatii de r,w si x
(r,w,x,rw,rx,wx etc).
Unde u,g,o inseamna schimabarea drepturilor proprietarului, grupului, pentru
toti, iar a schimba aceleasi drepturi la u,g,o.
+ (plus) inseamna ca se pun drepturile
- (minus) i se ia drepturile si
= (egal) se distruge drepturile vechi si se pun cele noi
Exemplu: chmod u+rw test => i se da dreptul proprietarului de rw asupraObservatie : Drepturile de acces pot fi setate si prin folosirea unei notatii octale.
proprietar grup altii pentru fiecare clasa de utilizatori , notatia
octala se obtine prin insumarea drepturilor acordate.
Observatie : Mai exista in
plus fata de drepturile (rwx) si drepturile s sau t, daca intalniti la listarea
in format lung (ls -l) ceva de genul:
-rwsr--r-- 1 root bin 320 Jan 4 20:56 fisier* inseamna ca oricine executa acest fisier are pe perioada executiei dreptul proprietarului fisierului (in exemplul nostru are drept de root).
-rwxrwsr-- 1 root bin 320 Jan 4 20:56 fisier* inseamna ca oricine executa acest fisier devine pe perioada executiei membru la grupul din care face parte fisierul (in cazul nostru devine membru al grupului bin).
-rwxrwsr-t 1 root bin 320 Jan 4 20:56
fisier* inseamna ca fisierul executabil ramane rezident.
Aceste drepturi se pot schimba numai de catre root astfel:
in primul caz cu chmod u+s fisier
in al doilea chmod g+s fisier
iar in al treilea cu chmod +t fisier
Comanda de schimbare a proprietarului unui fisier este:
chown [optiune] nume_proprietar_nou fiser
unde ca optiune poate sa apara -R (recursiv) ceea ce inseamna ca daca se schimba proprietarul la un director se va schimba la toate fisierele pe care acesta le contine.
- nume_proprietar_nou este numele noului propritar al fisierului "fisier"
Exemplu : chown -R root mail/ceea ce inseamna ca schimba atat proprietarulComanda de schimbare a grupului unui fisier este:
chgrp [optiune] nume_grup fisier
optiune poate fi -R ceea ce insemna schimbarea grupului atat pentru director cat si pentru tot ce contine acesta.
nume_grup este numele noului grup.
fisier este numele fisierului (directorului) ale carui grup se schimba.
Exemplu: Aceleasi ca si la comanda chown.Comanda de vizualizare a unui fisier este:
less nume_fisier
Comanda permite vizualizarea continutului unui fisier sau a unui grup de fisiere. Iesirea din vizualizare se face prin apasarea tastei 'q' si nu 'Q'. In general se afiseaza continutul unui singur fisier.
Exemplu : less mbox are ca efect vizualizarea fisierului mbox (daca acestaUn
fisier se mai poate vizualiza si cu comanda more. Sintaxa ei este: more
[optiuni] nume_fisier
Unde:
Optiuni pot fi:
-nr_linii
= afiseaza pe ecran atatea linii cate specifica nr_linii.
c = sterge ecranul dupa care afiseaza.
Nume_fisier poate fi atat numele unui fisier cat si a unui grup de fisiere.
Linuxul pune la dispozitie si un editor de fisiere asemanator cu WS din Dos. Acesta poarta numele de joe si se lanseaza prin:
joe nume_fisier
ceea
ce are ca efect crearea unui fisier cu numele nume_fisier daca acesta nu exista
si editarea lui daca acesta exista. In acest editor sunt valabile sagetile de
pozitionare,
pentru inserarea unui bloc: Ne pozitionam pe inceputul acestuia si tastam ^KB (Ctrl+k apoi b) dupa care mergem la sfarfitul blocului si tastam ^KK (Ctrl+k apoi k) si in cele din urma trebuie sa ne apara blocul inserat (adica scris alb pe negru).
pentru stergerea unui bloc (^KY): Ctrl+k apoi y dupa ce blocul a fost marcat.
pentru mutarea unui bloc (^KM): Dupa ce blocul a fost marcat ne pozitionam cu cursorul in pozitia in care vrem sa-l mutam si apasam Ctrl+k apoi pe m.
pentru copierea unui bloc (^KC): asemanator cu mutarea dar textul ramane si unde a fost marcat.
pentru salvarea fisierului se da combinatia ^KD, iar pentru salvare si iesire din editor se da ^KX.
pentru stergerea unei lini se da ^KY.
pentru inserarea unui alt fisier ^KR dupa care se introduce calea si fisierul dorit.
pentru scrierea in fisier a rezultatului unei comenzi se foloseste ^K/(Ctrl+K apoi /). Exemplu ^K/dupa care scriem ls -al rezultatul va fi scrierea in fisier a tuturor fisierelor din directorul curent in format lung.
pentru a abandona editarea fara modificari se tasteaza ^C (Ctrl+c)
Comanda pentru afsiarea numarului de linii, cuvinte si caract ere dintr-un fisier este:
wc [optiuni] fisiere
Unde optiuni pot fi:
-l
afiseaza doar numarul de linii
-w afiseaza doar numarul de cuvinte
-c afiseaza doar numarul de caractere
In cazul in care lipsesc optiunile rezultatul este de forma:
nr.linii nr.cuvinte nr.caractere nume_fisierUrmatoarele comenzi se refera la lucrul cu fisiere (creeare, mutare, copiere, stergere, cautare):
Comanda mkdir creeaza unul sau mai multe
directoare sau subdirectoare in interiorul directorului curent. Sintaxa
comenzii este:
mkdir lista_directoare
Comanda cp realizeaza o copie a unui fisier in altul; poate copia unul sau mai multe fisiere dintr-un director in altul, fisierele initiale pastrandu-si locul. Sintaxa comenzi este:
cp [optiune] fis_sursa
fis_destinatie
cp [optiune] lista_fis_sursa director_destinatie
Optiune poate fi -r sau -R ceea ce inseamna ca copierea se face recursiv.
Exemplu: Presupunem ca avem fisierele test,test1,teza si directoarele mail/,Comanda mv muta si redenumeste un fisier: redenumeste fisierul in acelasi director sau muta si redenumeste fisierul in alt director; permite si modificarea numelui unui director cu conditia de a ramane in subarborele HOME atasat utilizatorului
mv [optiune] fis_sursa
fis_destinatie
mv [optiune] lista_fis_sursa director_destinatie
Optiune poate fi -r sau -R cea ce inseamna ca mutarea se face recursiv. Comanda este asemanatoare cu cu diferenta ca aceasta muta fisierele (le sterge) din sursa in destinatie (le pune)
Exemplu : mv mail//tmp/mail muta directorul mail/(din directorul curent) inComenzile rmdir si rm
o
rmdir sterge un director daca acesta nu
contine nici un fisier
Sintaxa: rmdir nume_director
o
rm cu opriunea -r permite stergerea
recursiva a tuturor fisierelor dintr-un director si a directorului insusi.
Sintaxa rm [optiune] director sau rm nume_fisier Optiuni :
-i (interactiv, pune intrebare
la stergere fiecarui fisier)
-r (parcurgere recursiva)
Comanda find cauta in directoare si in subdirectoare fisierele specificate care indeplinesc anumite conditii descrise in linia ei de comanda.
find cale lista_expresii
Unde:
Comanda de afisare a inceputului sau sfarsitului unui fisier este head respectiv tail, sintaxa lor este:
head [optiune] nume_fisier
tail [optiune] nume_fisier
Unde optiune poate fi :
-c m : pentru afisarea a m caractere din fisier -n m : pentru afisarea a m lini din fisier
Comanda de cautare a unui sir intr-un fisier este sintaxa este:
grep [optiuni] sir nume_fisier
Unde:
o optiuni pot fi
-c = se afiseaza numarul de linii ce contin sirul dat prin sir. -l = in loc sa se afiseze linile in care apare sirul se afiseaza numele fisierului ce contine sirul dat. -n = se afiseaza si numarul liniei in care apare sirul. -v = se afiseaza linile care nu contin sirul dat. -y = nu se face deosebire de litera mare si mica.
o sir este un sir de caractere scrise intre "".
o nume_fisier poate fi numele unui singur fisier sau a unui grup de fisiere.
Exemple : grep "care" mail = cauta cuvantul care in fisierul mail si afiseazaComanda de ordonare a unui fiser este sort sintaxa ei este:
sort [optiuni] nume_fisier
Unde : optiunile sunt:
-o fis_nou = sorteaza fisierul
dat in fisierul care are numele fis_nou.
-d = sorteaza fisierul in ordine alfabetica (sunt semnificative doar
caracterele, cifrele si spatiile libere).
-n = sorteaza liniile unui fiser functie de valoarea numerica inscrisa la
inceputul liniei (un sir care incepe cu un numar va fi sortat dupa valoarea
aritmetica).
-r = inverseaza ordinea de sortare.
-f = ia in consideratie literele mici si mari la sortare.
-c = verifica daca fisierul sortat este deja in secventa dorita.
-u = elimina dublurile liinilor.
Comenzi orientate pe comunicare intre utilizatori |
talk nume_user [terminal]
Are ca efect vorbirea (scriere) in tip real intre doi useri conectati la sistem.
Celui ce este chemat sa scrie ii va aprea pe ecran ceva de genul:
> Message from Talk_Daemon@lbzbph at 10:39 ...iar acest trebuie sa scrie talk user , dupa care ecranul se va imparti in doua zone si anume zona de sus in care scrie si zona de jos in care primeste raspuns.
Terminal inseamna terminalul la care sa incerce vorbirea (vezi mai jos comanda who ).
write nume_user [terminal]
Transmite un mesaj la userul cu numele specificat in nume_user.
mesg [optiuni] >
Unde optiunile pot fi . Aceasta comnda inhiba (scoate) sau activeaza receptia de mesaje.
Exemplu : mesg no = dezactveaza primirea de mesaje.who [optiuni]
Ne da informatii despre useri
legati in sistem.
Optiuni:
-H = afiseaza antetul.
-T = afiseaza toti useri cu starea mesajelor (daca poate sau nu primi mesaje)
-i = afiseaza cat timp nu au stat de pomana useri legati in sistem.
-q = afiseaza toti useri si numarul lor.
Mai exista comanda care ne da numele masini si userului curent (cel care lanseaza comanda) si care ne da numele userului curent.
finger [nume_user]
Ne da informatii despre userul specificat prin nume_user. Iar daca nume lipseste ne da informati despre toti useri conectati in sistem.
|