Sunteți pe pagina 1din 27

Ghid de utilizare Linux (II) :

Comenzi UNIX . Sisteme de fisiere UNIX


Cristian Vidrascu
vidrascu@info.uaic.ro

Comenzi UNIX . Sisteme de fisiere UNIX p.1/24

Sumar
Introducere
Comenzi de help
Editoare de texte
Compilatoare, depanatoare, s .a.
Sistemul de fisiere
Structura arborescenta a sistemului de fisiere
Montarea volumelor n structura arborescenta
Protectia fisierelor prin drepturi de acces

Comenzi UNIX . Sisteme de fisiere UNIX p.2/24

Sumar

(cont.)

Comenzi de baza n lucrul cu fisiere s i directoare


Comenzi pentru prelucrarea continutului fisierelor
Alte comenzi utile pentru fisiere
Comenzi ce ofera diverse informatii
Alte categorii de comenzi
Troubleshooting

o comanda)

(Ce sa faceti daca vi se blocheaza

Comenzi UNIX . Sisteme de fisiere UNIX p.3/24

Introducere
n UNIX exista doua categorii de comenzi:
comenzi interne: sunt implementate n interpretorul de
comenzi. Exemple: cd, help, s .a.
ator

comenzi externe: sunt implementate de sine stat


(i.e.,

se gasesc
fiecare n cte un fisier, avnd acelasi nume cu
n:
comanda respectiva),
fisiere executabile (i.e., programe executabile obtinute prin
compilare din programe sursa scrise n C sau alte limbaje).
Exemple: passwd, ls, s .a.

fisiere text cu comenzi, numite script-uri.


Exemple: .profile, .bashrc, s .a.

Comenzi UNIX . Sisteme de fisiere UNIX p.4/24

Introducere

(cont.)

Forma generala de lansare n executie a unei comenzi:


UNIX> comanda [op
tiuni] [argumente]
Optiunile s i argumentele pot lipsi, dupa caz.
Prin conventie, optiunile sunt precedate de caracterul - .
Argumentele sunt cel mai adesea nume de fisiere.
Separatorul ntre numele comenzii s i parametrii ei, precum s i ntre
fiecare dintre parametri, este caracterul SPACE sau TAB.
Comenzile externe pot fi specificate s i prin calea, absoluta sau
a fisierului respectiv.
relativa,
O comanda poate fi scrisa pe mai multe linii, caz n care fiecare
linie trebuie terminata cu caracterul \ , cu exceptia ultimei linii.

Comenzi UNIX . Sisteme de fisiere UNIX p.5/24

Comenzi de help
UNIX> help
afiseaza lista tuturor comenzilor interne disponibile.
a_intern
a
UNIX> help nume_comand

afiseaza pagina de help pentru comanda specificata.

Pentru a obtine help despre comenzile externe (si despre

functiile de biblioteca C) sunt disponibile urmatoarele


comenzi: man, whatis, whereis, apropos, info.
UNIX> whatis nume
afiseaza lista comenzilor s i functiilor existente cu numele
specificat, precum s i sectiunile de manual ce le contin.

Comenzi UNIX . Sisteme de fisiere UNIX p.6/24

Comenzi de help

(cont.)

UNIX> man [sec


tiune] nume
pentru
afiseaza pagina de manual (din sectiunea specificata)

comanda sau functia specificata.


UNIX> whereis nume
afiseaza locatia comenzii s i a paginii de manual asociate.
UNIX> apropos cuvnt
cauta cuvntul specificat n descrierile comenzilor.
UNIX> info [op
tiuni] [cuvnt ...]
afiseaza documentatia n format I NFO pentru cuvntul sau
cuvintele specificate.

Comenzi UNIX . Sisteme de fisiere UNIX p.7/24

Editoare de texte
editoare de texte obisnuite:
a) n mod text: mcedit, joe, pico, vi, vim, ed, s .a.
b) n mod grafic: gedit, s .a.
editorul emacs: este un editor n mod text, ce face parte
ti puternice, utilizabil ca s i
din proiectul GNU, cu facilita
mediu integrat de programare
editorul TEX / LATEX: este un editor (de fapt, un mediu de
lucru) ce permite tehnoredactarea de documente
s tiintifice n limbajul TEX / LATEX
suite de birou: O PEN O FFICE, L IBRE O FFICE

(pentru mediul grafic)

Comenzi UNIX . Sisteme de fisiere UNIX p.8/24

Compilatoare, depanatoare, s.a.


Sub UNIX exista compilatoare s i interpretoare pentru
majoritatea limbajelor de programare existente, mai noi sau
mai vechi: C, C++, Pascal, Fortran, Java, Ada, s .a.
Compilarea unui program C se face cu comanda:
UNIX> gcc sursa.c [-o executabil]
Compilarea unui program C++ se face cu comanda:
UNIX> g++ sursa.cpp [-o executabil]
Pentru depanarea programelor se poate utiliza depanatorul
GNU DeBugger, accesibil prin comanda gdb.

Comenzi UNIX . Sisteme de fisiere UNIX p.9/24

Sistemul de fisiere

n sistemul de operare UNIX, datele s i programele sunt pastrate


n
fisiere, identificate prin nume.
Numele fisierelor pot avea pna la 255 de caractere s i pot contine
tite sub forma 8.3, nume.extensie, ca n sistemul
oricte caractere . (nu sunt mpar
de fisiere FAT din MS-DOS sau Windows), singurele restrictii fiind nefolosirea
caracterelor neprintabile, sau a caracterelor NULL, / s i a spatiilor
albe TAB s i SPACE.
Numele fisierelor n UNIX sunt case-sensitive (spre deosebire de
sistemele de fisiere FAT s i NTFS din Windows).
Desi UNIX-ul nu impune nici o conventie privitoare la numirea fisierelor, exista totusi sufixe
utilizate n mod standard, precum ar fi: .c s i .h pentru fisiere sursa n limbajul C, .tar
pentru arhive tar, s .a.

Comenzi UNIX . Sisteme de fisiere UNIX p.10/24

Sistemul de fisiere

(cont.)

Fisierele n UNIX pot fi de urmatoarele


tipuri:
normale sunt fisiere ordinare
directoare sunt cataloage de fisiere

link-uri (legaturi
simbolice) sunt un fel de alias-uri pentru alte fisiere
fisiere speciale, n mod bloc sau n mod caracter sunt drivere de
periferice

fisiere de tip fifo sunt folosite pentru comunicatia ntre procese, rulate pe
acelasi sistem

fisiere de tip socket sunt folosite pentru comunicatia prin retea ntre procese,
rulate pe sisteme diferite

Comenzi UNIX . Sisteme de fisiere UNIX p.11/24

Structura arborescenta a sistemului de fisiere


Sistemul de fisiere

n UNIX este ierarhizat (arborescent), adica


este ca un arbore: avem directoare ce contin subdirectoare s i
fisiere propriu-zise (la fel ca n MS-DOS sau Windows).
acin
a,
referita prin / (i.e., nu avem
nsa acest arbore are o singura rad
ti de discuri logice C:, D:, . . . , ca n MS-DOS sau Windows), iar ca
mai multe unita
de subdirectoare se utilizeaza caracterul /
separator pentru caile
(n locul caracterului \ folosit n MS-DOS sau Windows).
acina

Fisierele pot fi accesate (specificate) fie relativ la rad


/ sistemului
fie relativ la directorul
de fisiere (i.e., specificare prin cale absoluta),
curent de lucru (i.e., specificare prin cale relativa la directorul curent).

Comenzi UNIX . Sisteme de fisiere UNIX p.12/24

Montarea volumelor n structura arborescenta


Sistemele de fisiere UNIX se pot afla pe mai multe dispozitive fizice sau n
mai multe partitii ale aceluiasi disc fizic. Fiecare dintre ele are un director

root / s i poate fi navigat prin ncarcarea


sistemului de operare de pe
dispozitivul respectiv.
a
Daca totusi sistemul de fisiere de pe un dispozitiv trebuie folosit far

ncarcarea
sistemului de operare de pe acel dispozitiv, exista solutia de a
monta structura arborescenta de fisiere de pe acel dispozitiv n structura

dispozitivului de pe care s-a ncarcat


sistemul de operare.
Montarea unui sistem de fisiere se face cu comanda mount, iar apoi
se face prin intermediul punctului de montare.
accesarea continutului sau
de demontare a unui sistem de fisiere, se face cu
Iar operatia inversa,
comanda umount.

Comenzi UNIX . Sisteme de fisiere UNIX p.13/24

Protectia fisierelor prin drepturi de acces

n UNIX fiecare fisier are asociat un anumit utilizator drept utilizator


proprietar, s i un anumit grup de utilizatori drept grup proprietar al
fisierului.

Utilizatorii pot fi clasificati astfel n trei categorii n raport cu un


fisier:
proprietarul fisierului (owner )
colegii de grup ai proprietarului (group)
ceilalti utilizatori (others)

Comenzi UNIX . Sisteme de fisiere UNIX p.14/24

Protectia fisierelor prin drepturi de acces (cont.)


Fiecare fisier are asociate cte trei drepturi de acces, pentru
fiecare dintre cele trei categorii de utilizatori ale acelui fisier:

r (read) drept de citire a fisierului


w (write) drept de scriere a fisierului
x (execute) drept de executie a fisierului
Modificarea drepturilor de acces ale unui fisier se poate face
cu comanda chmod. Iar schimbarea proprietarului, respectiv
a grupului proprietar, al unui fisier se poate face folosind
comanda chown, respectiv chgrp.

Comenzi UNIX . Sisteme de fisiere UNIX p.15/24

Protectia fisierelor prin drepturi de acces (cont.)


Pentru directoare, drepturile au o semnificatie aparte:
r (read) drept de citire a continutului directorului (i.e., drept
de aflare a numelor fisierelor din director)
w (write) drept de scriere a continutului directorului (i.e.,

drept de adaugare/
stergere de fisiere din director)
x (execute) drept de inspectare a continutului
directorului (i.e., drept de acces la fisierele din director)

Comenzi UNIX . Sisteme de fisiere UNIX p.16/24

Comenzi de baza n lucrul cu fisiere si directoare


Comenzi de baza pentru directoare:
mkdir pentru crearea unui director
rmdir pentru s tergerea unui director
ls pentru afisarea continutului unui director
pwd pentru aflarea directorului curent de lucru
cd pentru schimbarea directorului curent de lucru

Comenzi UNIX . Sisteme de fisiere UNIX p.17/24

Comenzi de baza n lucrul cu fisiere si directoare (cont.)


Comenzi de baza pentru fisiere:
touch pentru crearea unui fisier obisnuit
mkfifo pentru crearea unui fisier de tip fifo
mknod pentru crearea unui fisier de tip device
ln pentru crearea unui fisier de tip alias
rm pentru s tergerea unui fisier
cp pentru copierea de fisiere
mv pentru mutarea (sau redenumirea) de fisiere

Comenzi UNIX . Sisteme de fisiere UNIX p.18/24

Alte comenzi pentru lucrul cu fisiere


Comenzi pentru prelucrarea continutului fisierelor:
cat, tac, more, less, head, tail pentru afisarea
continutului unui fisier, n diverse formate
grep pentru selectarea liniilor de text dintr-un fisier, ce
)
contin un anumit s ablon (i.e., face selectie pe orizontala
cut pentru selectarea anumitor coloane de text dintr-un
)
fisier (i.e., face selectie pe verticala
sort pentru sortarea unui fisier, dupa diverse criterii
tr filtru pentru translatarea anumitor caractere
uniq filtru pentru eliminarea liniilor consecutive de text
duplicat

Comenzi UNIX . Sisteme de fisiere UNIX p.19/24

Alte comenzi pentru lucrul cu fisiere (cont.)


Alte comenzi utile pentru fisiere:
stat pentru afisarea a diverse statistici/informatii despre
un fisier (i.e., o comanda mai puternica dect ls -l )

find pentru cautarea


de fisiere, dupa diverse criterii
wc ofera anumite statistici despre continutul unui fisier (e.g.,

numarul
de caractere, de cuvinte sau de linii de text)
cmp, comm, diff pentru compararea a doua fisiere, dupa
diverse criterii
file ofera informatii despre tipul unui fisier s i a
continutului acestuia
sum calculeaza o suma de control pentru un fisier

Comenzi UNIX . Sisteme de fisiere UNIX p.20/24

Comenzi ce ofera diverse informatii


informatii despre utilizatori: id, users, w, who, whoami,
finger, last
informatii despre sistem: hostname, uname, uptime
informatii despre data / timp s i calendar: date, cal
informatii despre terminale: tty, stty
informatii despre procese: ps, pstree, top, jobs
comenzi pentru planificarea/gestiunea executiei
proceselor: at, nice, time, kill, killall

Comenzi UNIX . Sisteme de fisiere UNIX p.21/24

Alte categorii de comenzi


conectarea la / deconectarea de la un sistem UNIX:
login, telnet, ssh, logout
schimbarea datelor unui cont: passwd, chsh, chage
scrierea de mesaje: echo, write, talk
programe pentru diverse protocoale INTERNET: mail,
pine, ftp, scp, lynx, links, finger, host, s .a.
limbaje de scripting: awk, sed, perl, s .a.
arhivare, comprimare, codificare de fisiere: tar, gzip,
zip, compress, encode, s .a.

Comenzi UNIX . Sisteme de fisiere UNIX p.22/24

Troubleshooting

(Ce sa faceti daca vi se blocheaza o comanda)

n caz de blocare a unei comenzi, urmati pasii de mai jos:


Mai nti, asteptati un timp rezonabil, poate totusi programul nu este blocat, ci doar
ocupat cu calcule laborioase. Daca totusi nu apare prompterul, atunci:

Comenzi UNIX . Sisteme de fisiere UNIX p.23/24

Troubleshooting

(Ce sa faceti daca vi se blocheaza o comanda)

n caz de blocare a unei comenzi, urmati pasii de mai jos:


Mai nti, asteptati un timp rezonabil, poate totusi programul nu este blocat, ci doar
ocupat cu calcule laborioase. Daca totusi nu apare prompterul, atunci:
ti (simultan) tastele CTRL + C . Aceasta determina trimiterea semnalului de
Apasa
ntrerupere SIGINT programului respectiv. Daca tot nu apare prompterul, atunci:

Comenzi UNIX . Sisteme de fisiere UNIX p.23/24

Troubleshooting

(Ce sa faceti daca vi se blocheaza o comanda)

n caz de blocare a unei comenzi, urmati pasii de mai jos:


Mai nti, asteptati un timp rezonabil, poate totusi programul nu este blocat, ci doar
ocupat cu calcule laborioase. Daca totusi nu apare prompterul, atunci:
ti (simultan) tastele CTRL + C . Aceasta determina trimiterea semnalului de
Apasa
ntrerupere SIGINT programului respectiv. Daca tot nu apare prompterul, atunci:
ti (simultan) tastele CTRL + \ . Aceasta determina trimiterea semnalului de
Apasa
terminare SIGQUIT programului respectiv. Daca tot nu apare prompterul, atunci:

Comenzi UNIX . Sisteme de fisiere UNIX p.23/24

Troubleshooting

(Ce sa faceti daca vi se blocheaza o comanda)

n caz de blocare a unei comenzi, urmati pasii de mai jos:


Mai nti, asteptati un timp rezonabil, poate totusi programul nu este blocat, ci doar
ocupat cu calcule laborioase. Daca totusi nu apare prompterul, atunci:
ti (simultan) tastele CTRL + C . Aceasta determina trimiterea semnalului de
Apasa
ntrerupere SIGINT programului respectiv. Daca tot nu apare prompterul, atunci:
ti (simultan) tastele CTRL + \ . Aceasta determina trimiterea semnalului de
Apasa
terminare SIGQUIT programului respectiv. Daca tot nu apare prompterul, atunci:
ti (simultan) tastele CTRL + Z . Aceasta determina suspendarea programului
Apasa
respectiv (i.e., trecerea lui n starea SUSPENDED) s i afisarea prompterului.
Mai departe, pentru a opri acel program (el este doar suspendat, nu s i terminat),

procedati n felul urmator.


Folosind comanda ps aflati PID-ul acelui program care vi se
blocase, iar apoi tastati comanda
UNIX> kill -9 pid
unde pid este PID-ul aflat anterior.
Ca urmare a acestei comenzi procesul n cauza este omort (i.e., terminat fortat).

Comenzi UNIX . Sisteme de fisiere UNIX p.23/24

Bibliografie obligatorie
Cap.2, 2.1 s i 2.2 din manualul, n format PDF, accesibil din pagina
disciplinei Sisteme de operare:
http://profs.info.uaic.ro/~vidrascu/SO/books/ManualID-SO.pdf

Plus documentatia comenzilor uzuale, accesibila cu comanda man.

Comenzi UNIX . Sisteme de fisiere UNIX p.24/24

S-ar putea să vă placă și