Curs 1 Alexandru Bujor - bluedrive.ro fileComponenta software care administreaza resursele si...
Transcript of Curs 1 Alexandru Bujor - bluedrive.ro fileComponenta software care administreaza resursele si...
Ansamblu hardware si software folosit pentru prelucrarea informatiilor
Hardware ◦ Arhitecturi specifice
Software
Componenta software care administreaza resursele si procesele executate in cadrul unui sistem de calcul
Sistem de operare ~= kernel + aplicatii sistem
Distributie ~= kernel + aplicatii sistem + alte aplicatii
Linux = kernel
Distributie Linux = custom kernel + aplicatii
http://wiki.centos.org/Manuals/ReleaseNotes/CentOS6.0
Dezvoltat de o mare comunitate de programatori (buni! less bsod)
Multiuser-multitasking
Custom kernel + aplicatii sistem + alte aplicatii
Ex. Server: RHEL, Debian, CentOS, Ubuntu
Ex. Desktop: Ubuntu, Fedora, Mint, Suse, Debian
Unele distributii sunt sustinute de companii precum RHN, Canonical
Kernel
Module kernel (drivere)
Sistem de fisiere
Shell – interfata utilizatorului cu SO
Servicii si aplicatii
https://hardware.redhat.com/
http://wiki.centos.org/About/Product
X86 vs X86_64
Ubuntu minimal: 500Mhz CPU, 512Mb RAM, 512 Mb flash
CLI = configurari avansate, necesita putine resurse
GUI = usurinta in administrare si utilizare
Administrarea prin CLI necesita cunostinte avansate
Man
http://www.centos.org/docs/5/html/
https://access.redhat.com/knowledge/docs/Red_Hat_Enterprise_Linux/
Rtfm = ?
Multiuser,multitasking root = administrator, utilizatorul privilegiat student = utilizator normal
Root – drepturi depline, oriunde in sistem
Un utilizator este definit de: ◦ Login ◦ Password ◦ Home ◦ Shell
User id (uid): identificator numeric pentru user
Group id (gid): identificator numeric pentru grupul primar
Comenzi: whoami, id
Multime de utilizatori
Un utilizator poate aparinte mai multor grupuri
Se pot defini drepturi la nivel de grup
Grupuri privilegiate (acces cu parola)
Comenzi: groups
Lab!
Comenzi: useradd, usermod, userdel, groupadd, passwd, chpasswd, chage
/etc/skel
Fisiere: /etc/group,passwd,shadow
cat <nume_fisier>, grep
GUI
/etc/shadow ◦ Username
◦ Password (md5/sha2)
◦ Last password change
◦ Min day between passwd change
◦ Max day between passwd change
◦ Warn days
/etc/groups ◦ Group name
◦ Password
◦ Group ID
◦ Group List
/etc/gshadow ◦ Group name
◦ Password (or !!)
◦ Administrators
◦ members
Definite pentru urmatoarele nivele: ◦ Owner
◦ Group
◦ Others
Read, Write, Execute
Reprezentarea numerica
Chmod – schimbarea drepturilor
Chown – schimbare owner:grup
Exemplu practic
Fisiere ◦ R – citeste continut (cat)
◦ W – scrie continut (echo 0 > fisier)
◦ X – executa ca script
Director ◦ R – citeste continut (ls/ll)
◦ W – scrie in directorul curent (adauga/sterge fisiere)
◦ X – intra in director (cd)
Pot fi definite drepturi detaliate pentru fiecare user/grup
Set de reguli care se parcurge in ordine secventiala
Se aplica drepturile de la others in ultima instanta
Definiti 2 utilizatori usra,usrb in grupul grp1 Construiti fisierul /opt/sharefile Permisiuni: ◦ Usra – are numai drept de scriere ◦ Usrb – are numai drept de citire ◦ Student – nu are niciun drept asupra fisierului
Testati permisiunile Adaugati usrc si definiti o parola. Fortati usrc
sa isi schimbe parola la primul login. Sudo: usra,usrb (ca grup), usrc(fara parola) Stergeti toti utilizatorii definiti
Pachet = software arhivat intr-un fisier special
Pachet: ◦ Continut software ◦ Script instalare ◦ Script dezinstalare ◦ Script upgrade/update ◦ Specificatii
Dependinte: software aditional necesar pentru a instala/rula o alta aplicatie
Manager de pachete = software specializat care se ocupa cu instalarea/dezinstalarea de pachete, respectand dependintele
Functii: ◦ Instalare/dezinstalare software ◦ Management dependinte ◦ Update/upgrade ◦ Verificare autenticitate (semnaturi/chei) si
integritate ◦ Grupare/prezentare colectii pachete
RHEL packages: rpm files
RHEL package manager: yum
Repository: server care stocheaza pachete
RHN Satellites
Cautare pachet: pbone ◦ http://rpm.pbone.net/
CentOS – Base
CentOS – Extras
CentOS – Updates
Extra: ◦ RPMForge
http://wiki.centos.org/AdditionalResources/Repositories/RPMForge
◦ EPEL (Extra Packages for Enterprise Linux)
http://fedoraproject.org/wiki/EPEL
RPM = Redhat package manager
Formatul de pachete utilizat in distributiile bazate pe Redhat
rpm = utilitar local (nivel mai scazut decat yum)
Nu verifica/rezolva dependintele
Man rpm
Structura de date care contine: ◦ Informatii despre pachetele instalate in sistem ◦ Informatii despre fisierele din pachetele instalate ◦ Chei publice acceptate ◦ Cheile sunt stocate in: /etc/pki/rpm-gpg/
Este unica la nivel de sistem
Globbing = referirea la un pachet prin numele sau omitand versiunea si arhitectura
Rpm –q <nume pachet>
Rpm –qa
Rpm –ivh <nume pachet> [--test]
Rpm –Uvh <nume pachet>
Rpm –ev <nume pachet instalat>
Rpm –V <nume pachet instalat> ◦ 5 – md5 checksum
◦ S – file size
◦ T – file mofication time
◦ U – user
◦ G – group
◦ M - mode
Rpm –qi <pachet>
Rpm –qip <fisier_pachet >
Rpm –qlp < fisier_pachet >
Rpm –qRp < fisier_pachet >
Rpm –import <fisier_cheie>
Rpm -qli gpg-pubkey
Yellowdog Updater Modified
Manager de pachete avansat pentru RPM
Foloseste mai multe repository-uri configurate in /etc/yum.repos.d
Plugins: delta, fastestmirror
Rezolva dependintele
Scris in python
Gruparea pachetelor dupa functionalitati ◦ Grupuri: grouplist, groupinfo
Cautare: ◦ In numele pachetului/descriere
◦ In continutul fisierului rpm
Management pentru cheile publice GPG
Repository-urile pot fi: ◦ Stocate pe servere publice (cele standard)
◦ Stocate pe servere locale (satellites)
◦ Locale:
Stocate pe hdd
DVD-uri
Fisier de configurare: /etc/yum.conf
Comenzi ◦ Yum grouplist Yum whatprovides
◦ Yum groupinstall Yum search
◦ Yum install
◦ Yum remove
◦ Yum deplist
◦ Yum info
◦ Yum list installed
◦ Yum check-update
◦ Yum update
◦ Yum repolist
Download release rpm file
Install release – use rpm –ivh
Yum repolist – check new repo
And yum install …
Enable epel repo ◦ http://fedoraproject.org/wiki/EPEL
Install ntfs-3g
Managers: ◦ Ubuntu/Debian – Synaptic Package Manager
(aptitude)
◦ SuSE – YaST, Zypp
Ubuntu/Debian ◦ Package manager = aptitude (apt-get, apt-cache,
etc.)
◦ Packages = .deb (debian packages)
Instalare din surse (open source) ◦ In general comprimate in arhive .tar.gz
Necesita prezenta grupului “Development Tools” ◦ yum groupinstall "Development Tools“
◦ Compilator (gcc,g++), make, etc.
More to follow