Explorați Cărți electronice
Categorii
Explorați Cărți audio
Categorii
Explorați Reviste
Categorii
Explorați Documente
Categorii
Ce este Linux-ul ?
Este o versiune a Unix-ului scrisa de mii de oameni pentru procesor INTEL (P.C. obisnuit).
Ce este UNIX ?
Conectarea in sistem
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:
/
+-----+-----+------+---------------+----------------+--------+
bin dev home tmp usr lib mnt
+ +---+----+----+-----+------+
ftp src man etc sbin local lib
+------+ +----+----+
lilo sendmail uucp joe kbd
Director
Cam ce gasim in el
/ -directorul radacina in care sunt toate fisierele sistemului
/bin -fisiere executabile si utilitare des folosite
-fisiere speciale asociate dispozitivelor periferice,
/dev
cum ar fi consola, imprimanta, modemul,etc.
-radacina unui sub arbore format din directoarele
/home
utilizatorilor din sistem
/tmp -fisiere temporale folosite in anumite aplicatii
/mnt -directorul in care se pot monta unele "periferice"
Protectia fisierelor
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:
i ii iii iv
- r-- r-- r--
Zona i ne da tipul fisierului care poate fi:
d Director
- Fisier obisnuit
l Legatura simbolica
c Fisier special corespunzator unui echipament periferic
orientat pe caractere (care transfera datele caracter cu
caracter), de exemplu consola, modem, imprimanta etc.
b Fisier special corespunzator unui echipament periferic
orientat pe blocuri (care transfera datele cate un bloc la o
operatie, de exemplu disk magnetic.
Zona 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.
Exemplu 1) : 15652 8 -rw-r-xr-- 1 root uucp 7597 May 9 1994
README
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 {u,g,o,a}
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 asupra
fisierul cu numele test.
chmod a-r test => li se ia dreptul de citire proprietarului,
grupului si altora
chmod o-wrx test => li se ia dreptul de wrx altor useri asupra
fisierului test.
chmod g=w test => grupul va avea numai dreptul de scriere asupra
fisierului test.
Observatie : Drepturile de acces pot fi setate si prin folosirea unei notatii octale.
proprietar grup altii
Notatia simbolica : rwx rwx rwx
Notatia octala: 421 421 421
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:
1) -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).
2) -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).
3) -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 1) : chown -R root mail/ ceea ce inseamna ca schimba atat proprietarul
directorului mail cat si proprietarul tuturor fisierelor din director.
Exemplu 2) : chown root mail/ schimba proprietarul doar pe directorul
mail/ si nu schimba in interiorul directorului.
Comanda 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 1) : less mbox are ca efect vizualizarea fisierului mbox (daca acesta
exista).
Exemplu 2): Presupunem ca in directorul curent avem fisierele
test,test1,teze,carte,mail,revista si in acel director dam: less *e => se
afiseaza continutul fisierelor teze si carte. In cazul afisari mai multor
fisiere trecerea de primul la al doilea si asa mai departre se face
apasand
':' urmate de 'n'.
Un 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.
Editor 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, Del,
Backspace, PgUp, PgDn, Home, End. Avem si combinati de taste printre care:
Comanda pentru afsiarea numarului de linii, cuvinte si caractere 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_fisier
Exemplu: wc test rezultatul este '24 50 125 test' ceea ce inseamna ca
fisierul test contine 24 de linii, 50 cuvinte si 125 de caractere.
wc -l test rezultatul este '24 test' ceea ce inseamna ca
fisierul test contine 24 de linii.
Urmatoarele comenzi se refera la lucrul cu fisiere (creeare, mutare, copiere, stergere,
cautare):
o Comanda mkdir creeaza unul sau mai multe directoare sau subdirectoare in interiorul
directorului curent. Sintaxa comenzii este:
mkdir lista_directoare
o 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:
o Comenzile rmdir si rm
rmdir sterge un director daca acesta nu contine nici un fisier
Sintaxa: rmdir nume_director
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 :
o cale -reprezinta directorul de unde incepe cautarea; cautarea se face recursiv in toate
directorele in care utilizatorul are dreptul de r si x.
o lista_expresii -reprezinta expresii logice ce sunt evaluate pentru fiecare fisier din
directoarele parcurse.
Expresiile logice pot fi expresii logice primare sau compuse folosind atat operatorii logici
NEGATIE (prin semnul !), respectiv SAU (prin semnul -o), cat si parantezele \( si \).
Cele mai des folosite expresii logice primare sunt urmatoarele:
name nume_fisier : cauta fisierul cu numele nume_fisier. Se pot folosi
caracterele * sau ?.
o type tip : unde tip poate fi {b,c,p,f} cauta fisierele orientate pe blocuri (b), fisiere
orientate pe caractere (c), fisiere de tip pipe (p) sau fisiere obisnuite (f).
o links n : cauta toate fisierele care are un numar egal cu n de legaturi spre el.
o size n : cauta fisierele care au n blocuri lungime; (pentru a specifica mai mare se
foloseste semnul '+', iar pentru mai mic semnul '-' ).
o atime n : cauta fisierele care au fost accesate ultima oara acum n zile.
o mtime n : cauta fisierele care au fost modificate cel tarziu acum n zile.
o exec cmd : executa comanda cmd specificata avand ca argument fisierul curent.
o ok cmd : face acelasi lucru ca si comanda -exec dar cere consimtamantul
utilizatorului.
• Comanda de afisare a inceputului sau sfarsitului unui fisier este head respectiv tail, sintaxa
lor este:
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.
Exemple : grep "care" mail = cauta cuvantul care in fisierul mail si afiseaza
toate liniile care il contin.
grep -c "mai" test = afiseaza numarul de linii care contin cuvantul
mai din fisierul test.
grep -l "si" * = cauta cuvantul si in toate fisierele din
directorul curent si afiseaza numele lor.
grep -v "mai" test = afiseaza toate liniile din fisierul test care nu
contin cuvantul mai.
grep -n "ce" te* = afiseaza numele fisierului nr. liniei si linia care
contine cuvantul ce din fisierele care incep
cu te aflate in directorul curent.
grep -y "a" test = afiseaza toate liniile care contin literea a
si A
• Comanda talk:
• Comanda write:
• Comanda mesg:
mesg [optiuni]
Unde optiunile pot fi {no,yes}. Aceasta comnda inhiba (scoate) sau activeaza receptia de
mesaje.
Exemplu : mesg no = dezactveaza primirea de mesaje.
mesg yes = activeaza primirea de mesaje.
mesg = afiseaza daca este sau nu activata primirea de
mesaje.
• Comanda who:
who [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.
• Comanda finger:
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.