Sistemul de operare Linux

Scurt istoric
Kernel
Directoare
Comenzi
Imbunatatiri
GNU,
CE ESTE SOFTWARE LIBER?

 Software liber” este o chestiune de libertate, nu de
preț. Pentru a înțelege conceptul, ar trebui să vă
gândiți la “liber” (free) ca în “libertatea cuvântului”
(free speech), nu ca în “bere gratis” (free beer).
 Software liber se referă la libertatea
utilizatorilor de a rula, copia, distribui,
studia, schimba și îmbunătăți software-ul.
Mai precis, se referă la patru feluri de libertăți,
pentru utilizatorii de software:
 Libertatea de a rula programul, pentru orice scop
(libertatea 0).

 Libertatea de a studia cum funționează
programul și a-l adapta la nevoile dvs.
(libertatea 1). Accesul la codul sursă este o
precondiție pentru aceasta.
 Libertatea de a redistribui copii pentru a
putea ajuta vecinul dvs. (libertatea 2).
 Libertatea de a îmbunătăți programul și a
distribui îmbunătățirile dvs. publicului, pentru
ca întreaga comunitate să beneficieze
(libertatea 3). Accesul la codul sursă este o
precondiție pentru aceasta.

EVOLUTIA SISTEMELOR UNIX
http://en.wikipedia.org/wiki/File:Unix_history.svg
ISTORIA LINUX
 Anul 1991 a fost norocos
 În 1991, au existau condiţii ideale, de a fi creat Linux. Linus
Torvalds avea un Kernel, dar nu avea programe cu care sa le
combine. Richard Stallman şi GNU aveau programele, dar nici un
kernel functional.
 Cuvintele celor doi bărbaţi au fost:
 Linus: "Din păcate, un kernel de sine statator nu functioneaza.
Pentru al face functional este nevoie de un shell, un
compilator, o bibliotecă etc
 RMS: Sistemul GNU Hurd nu este pregătit pentru utilizarea
ca un sistem functional. Din fericire, un kernel este
disponibil. [Este numit] Linux.
 Prin combinarea programelor necesare prevăzute de GNU în
Cambridge, Massachusetts şi kernel-ul, dezvoltat de Linus
Torvalds în Helsinki, Finlanda, Linux s-a născut. Pentru asta
s-a utilizat Internetul.

TIPURI DE CD CARE CONTIN LINUX
Live CD/DVD
Instalation CD/DVD
CE ESTE UN LIVE CD/DVD
 Este un cd sau dvd care contine un sistem
de operare bootabil (care porneste singur)
Ce este un Installation CD/DVD
• Este un cd sau dvd de pe care se poate instala
un sistem de operare pe un calculator (desktop,
laptop, server)
DISTRIBUTII LINUX
 Peste 300
 Cele mai cunoscte
Redhat
Ubuntu
Slackware
Debian
Puppy (utilizate pentru debugging hard)
http://upload.wikimedia.org/wikipedia/commons/9/9a/Gldt1009.svg
R
E
D
H
A
T
Scientific Linux CERN si Scientific Linux, Fedora, k12, Centos, Cladera, Mandriva
U
B
U
N
T
U
CUM ESTE “CONSTRUIT” LINUX?
 Modular
 Utilizeaza un kernel monolitic


KERNEL
 Kernel-ul este “inima” Linux-ului,
nexistand Linux fara Kernel
 Kernel este mediatorul intre programe si
hardware
 Este locul unde sunt depozitate driverele
 Ofera suport pentru filtrarea pachetelor
ce trec prin retea si gestioneaza
procesele ce ruleaza in memorie
 Kernel-ul este distribuit sub licenta GNU
(www.gnu.org) , poate fi distribuit si
modificat fara restrictii
 Ultima versiune de kernel se poate aduce
de pe site-ul www.kernel.org
 Kernel isi creaza si 2 categorii de fisiere
virtuale care vor fi discutate la structura
de directoare.
TIPURI DE KERNEL
 Exista 2 tipuri de versiuni pe care dezvoltatorii
de kernel le pun la dispozitie
versiunile stabile, cele in care a 2-a cifra este para
(2.4.18)
versiunea beta, care contine tehnologiile viitoare,
dar contine o serie de bug-uri (2.5.25)
 Incepand cu versiunile 2.6 si 2.7, procesul de
dezvoltare a versiuniilor beta si celei stabile vor
incepe si se vor incheia simultan

STRUCTURA LINUX
DIRECTOARE
FISIERE
DREPTURI
SISTEM DE FISIERE INSTALARE (100 BUC)
 UFS – unix file system
 BSD/FFS – Berkley Fast File System
 Ext 2 (16 GB – 2 TB) Marimea maxima a fisier
 Ext 3 (16 GB – 2 TB)
 Ext 4 (peste 16 TB)
 Reiserfs (peste 1 ExaB), 8 TB sisteme 32 biti
http://en.wikipedia.org/wiki/Unix_File_System, http://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard, http://en.wikipedia.org/wiki/Ext2,
http://en.wikipedia.org/wiki/Ext3, http://en.wikipedia.org/wiki/Ext4, http://en.wikipedia.org/wiki/Reiserfs,
http://tldp.org/LDP/intro-
linux/html/sect_03_01.html
Structura de
directoare in
forma de
arbore
STRUCTURA DE DIRECTOARE
 / este directorul radacina, sau root. Este baza
celorlalte subdirectoare
 /bin – fişiere sistem care includ cp, ls, mount,
more şi altele. Se află minimum de comenzi cu
care poate porni sistemul
 /boot – Conţine imaginea de pe care booteaza
Linux. Când un nou kernel se instalează el se
va instala în acest director.
 /etc – Directorul care conţine toate fişierele de
configurare a sistemului de operare Linux.
 /home – Directorul tipic păstrării
utilizatorilor. Nu va fi sters la upgradarea
sistemului
/home/admin – Directorul unde se păstrează
administratorii sistemului de operare pe un
server de reţea. Acest director este opţional,
administratorii putând fi puşi şi în alte
directoare.
/home/users/<nume utilizator> – Directorul
unde se păstrează utilizatorii curenţi pe un
server de reţea
 /lib – Bibliotecile sistemului se află în acest
director. Un sistem de biblioteci este o arhivă
de rutine de programare, care pun la
dipoziţia programelor utilizatorului, anumite
funcţii care fac legatura cu sistemul de
operare
 lost+found – În acest director, Linux înmagazinează
toate fişierele care s–au recuperat după ce s-a folosit
programul fsck după un crash neprevăzut al
sistemului (cădere de curent, resetare precoce,
resetare reavoită).
 /mnt – Directorul destinat unităţilor de montare
(încărcare în memorie) cum ar fi discheta şi cd-romul.
 /root – Directorul dedicat administratorului.
 /sbin – Aici este locaţia multor comenzi ale
sistemului. Numele provine de la cuvintele “System
BINary”.
 /tmp – Fişiere temporare care sunt create de
programe ce rulează în sistem. Aceste fişiere sunt
curaţate periodic din sistem, şi este bine să nu se
depoziteze aici fişiere care nu doriţi să le pierdeţi. Are
drepturi globale de scriere şi citire.
 /var – Directorul variabilelor dintr-un sistem,
precum şi a logurilor
/var/spool/mail – Directorul unde este salvată
poşta electronică a fiecărui utilizator de pe un
server Linux, aici fiind inclus şi directorul
administratorului.
/var/spool/squid – Directorul unde se salvează
paginile de web vizitate anterior, pentru a putea
fi preluate la o altă accesare a internetului din
acest loc, fără a se mai face download la toată
pagina de web de pe internet (tehnologie proxy).
/var/www/html – Directorul care conţine pagina
de web a serverului
 usr – Directorul dedicat utilizatorilor şi programelor
acestora.
 /usr/local – Directorul acesta este dedicat utilizatorilor
pentru a-şi instala programe de utilizare curentă.
 /usr/src – Directorul este dedicat aducerii programelor
de pe internet, a compilarii lor şi dupa aia a instalării lor
în Linux (aici se afla şi sursa kernelului)
 Directoare virtuale
 /proc – Este un sistem de fişiere virtual, (care nu este
stocat pe harddisk), ce conţine informaţii de sistem
utilizate de diverse programe
 /dev – componentele hard şi virtuale ale sistemului.
Acesta este un pseudo-sistem de fişiere, care furnizează
o interfaţă de fişiere componentelor sistemului. Necesar
în Unix, pentru că aici fiecare componenta hard este
văzută ca un fişier
STRUCTURA FISIERELOR
 Fişierele în Linux NU au ca şi caracteristica principală
numele şi extensia
 Fişierele pot fi de max 256 şi caractere
 Un exemplu de nume de fişier ar fi următorul:
 „Acesta.este’Un-fişier.cu_nume-Lung”
 Fişierele primesc drepturi în Linux pentru a putea fi
vizualizate sau executate
 Un fişier poate fi legat de mai multe directoare, chiar
la nivele diferite;
 În Linux fişierele ascunse au la începutul numelui un
punct (ex: .fişier_ascuns).
 Un fişier de comenzi Linux (pe acelaşi concept că
.BAT din DOS) este un script;
 Drepturile de acces ale fişierelor Unix sunt foarte bine puse la
punct;
 Pipe-ul în Unix („|”) nu impune crearea de fişiere temporare
 Fişierele pot fi de mai multe tipuri:
 Obişnuite (sursă sau binar; mai multe procese pot să lucreze
simultan pe acelaşi fişier), pipe (FIFO; de natură temporară) şi
speciale (ataşate dispozitivelor de intrare/ieşire –discuri, benzi
magnetice, imprimante, mouse etc.);
 Fişierele speciale:
 subdirectorul /dev conţine toate referinţele la dispozitivele de I/E –
de exemplu, /dev/hda1 se referă la prima partiţie (1) de pe primul
harddisc (a); pentru identificarea dispozitivelor se folosesc nume ce
sunt compuse din două părţi: major –tipul dispozitivului, şi minor –
numărul dispozitivului de tipul dat (ex: /dev/fd0);
 Dispozitivele cărora le sunt asignate fişierele speciale de tip bloc
conţin de obicei un şir de blocuri de dimensiune fixă (512 octeţi
fiecare, de obicei); pentru cele de tip caracter, operaţiile de I/E se fac
la nivel de octet sau la nivel de piste;
DREPTURILE IN LINUX
 În Linux există 3 feluri de drepturi care se
exercita asupra fişierelor şi directoarelor.

READ (Dreptul de CITIRE)
WRITE, (Dreptul de SCRIERE)
EXECUTE (Dreptul de EXECUŢIE)



Aceste 3 tipuri de drepturi se împart pe 3 tipuri
de utilizatori:

 Proprietari (owner)
 Grupuri (group)
 Alţii (other)

 Proprietarul (user, u), este cel care creează un fişier, un
director, este utilizatorul … sunteţi dvs.!

 Grupul (group, g) este o comunitate a utilizatorilor care au
aceleaşi proprietăţi. Dacă, de exemplu, 10 utilizatori
lucrează la acelaşi proiect, fiecare are acces la fişierele şi
directoarele create de ceilalţi utilizatori ai grupului.
Fiecare utilizator se află într-un grup, chiar dacă este
singurul care face parte din acel grup.

 Alţii (others, o) sunt utilizatorii care nu au nimic în comun
cu grupul şi cu proprietarul. Sunt utilizatori care se află în
alte grupuri.

COMANDA DE ADRESARE A DREPTURILOR
chmod “drepturi” fisier/director
ADRESARE IN MOD SIMBOLIC
 chmod text_operator_drepturi numefişier

 cine = 3 litere:
 u pentru drepturile proprietarului (user),
 g pentru drepturile grupului (group), o pentru depturile
altora (others) şi
 a pentru a ne referi la toate cele 3 litere deodată (all, adică
ugo).
 operator poate lua 3 forme
 + (plus) pentru adăugarea unui drept
 - (minus) pentru îndepărtarea unui drept
 = (egal) pentru a atribui un drept
 drepturi este o combinaţie de 3 litere r, w, x, (citire,
scriere, execuţie)

ADRESARE IN MOD NUMERIC
 Drepturile în Linux în mod octal sunt numerotate
astfel:
CITIRE / READ = 4
SCRIERE / WRITE = 2
EXECUŢIE / EXECUTE = 1
 Maximul total pentru oricare din cele 3 grupuri
este 7
COMENZI IN LINUX
 Total comenzi bash: 240 comenzi
 + editoare de fisiere in format text
 + programe de testare retele
 + programe de editare imagini
 + browsere

COMANDA DE ADAUGARE A UNUI
UTILIZATOR
 adduser –g nr_de_identificare_al_grupei –
d directorul_utilizatorului_cu_toată_calea
numele_utilizatorului
 Nr. de identificare al grupei
 Acest număr ne spune în ce fel de grup se află utilizatorul
pe sistemul Linux.
 Definirea acestor grupe se găseşte în fişierul /etc/group.
 Este un fişier care şi-l instalează Linux de la bun început.
 Cele mai importante grupe pentru Linux 8.0 sunt:
 10 – wheel – e un nivel superior de utilizator, el având mai
multe drepturi decât utilizatorii obişnuiţi, dar mai puţine
decât utilizatorul root
 100 – utilizatori obişnuiţi
DETALII UTILIZATOR
 Comanda chfn (change finger info)
 Cu ajutorul acestei comenzi puteţi introduce date sumare despre
utilizator.
 Numele şi prenumele, locul de muncă, un nr. de telefon de la serviciu, şi
de acasă.
 Cum se foloseşte această comandă

chfn <nume utilizator>

 Name []: introduceţi numele utilizatorului,
 Office[]: introduceţi dacă doriţi locul de muncă
 Phone at office: introduceţi numărul de telefon de la serviciu
 Phone at Home: introduceţi nr. de telefon de acasă
ATRIBUIREA UNEI PAROLE
 Pentru adăugarea (modificarea) parolei unui
utilizator se foloseşte comanda passwd.

passwd nume_utilizator

O parola simpla
123456 qwerty asdfghjk
O parola complexa
1q3%Azp[/^7az
COMENZI SIMPLE SI UTILE IN MOD
TEXT
 man – comanda help a SO Linux
 ls - listeaza conţinutul unui director sau proprietatiile unui fisier
 Opţiuni:
 ls -l arată ce există într-un director în format lung (ne arată de
cine aparţin fişierele, data când au fost create şi altele)
 ls -a arată ceea ce conţine un director, dar pe lângă fişierele
obişnuite ne arată şi fişierele ascunse cum ar fi .bash_history
 Opţiuni:
 -d: afişează numai directoarele din directorul curent;
 -i: afişează nr. de inod;
 -s: afişează numărul de blocuri pentru fiecare fişier;
 -t: fişierele sunt sortate după data ultimei actualizări;
 -u: se consideră data ultimului acces în locul datei ultimei
actualizări, pentru opţiunile –t sau -l;
 -r: inversează ordinea de sortare;
 Aceste prime două comenzi sunt cel mai des utilizate
 cp copiază un fişier. Se poate copia un fişier într-un director şi în
acelaşi timp se poate si redenumi.
 mkdir creeaza unul sau mai multe director dacă aveţi drepturile
necesare de realizare a acestora.
 mv comanda mv mută un fişier într-un director sau redenumeste un
fisier
 rm şterge un fişier şi poate fi folosită să şteargă şi un director
 rmdir sterge un director gol.
 pwd afişează calea absolută spre directorul curent
 df –h afişează toate partiţiile Linux, şi cit spaţiu este liber şi cit spaţiu
este ocupat
 ps afişează procesele curente care rulează şi numarul lor de id
 cd schimbă poziţia absoluta a utilizatorului în Linux.
IESIREA DIN LINUX
 NICIODATA power down de la butonul de start
 Shutdown –h now