curs 1 alexandru bujor - bluedrive.ro filecomponenta software care administreaza resursele si...

57
Curs 1 Alexandru Bujor

Upload: others

Post on 02-Sep-2019

18 views

Category:

Documents


0 download

TRANSCRIPT

Curs 1

Alexandru Bujor

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

Open Source

GNU GPL

BSD

De ce se plateste totusi pentru unele distributii de Linux? ◦ RHEL

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

Fixed sau removable

Sistem de fisiere (formatare)

MBR

Partitii ◦ Primare

◦ Extinse / logice

Instalare CentOS 6.3

CLI = configurari avansate, necesita putine resurse

GUI = usurinta in administrare si utilizare

Administrarea prin CLI necesita cunostinte avansate

Lab!

X server + Desktop Environment

X server

GNOME/KDE

Lab!

Man

http://www.centos.org/docs/5/html/

https://access.redhat.com/knowledge/docs/Red_Hat_Enterprise_Linux/

Google

Rtfm = ?

Cautati informatii despre yum si startx

Lab!

Redenumire in eth0

Configurare on-boot

Lab!

Lab!

GUI

Comenzi: pwd, ls, ll, cd

Lab!

Shortcuts

Background

Instalare software in mod grafic

yum install elinks

yum remove elinks

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

Autentficare = verificare username:parola

AAA: ◦ Authentication

◦ Authorization

◦ Accounting

Lab!

Comenzi: useradd, usermod, userdel, groupadd, passwd, chpasswd, chage

/etc/skel

Fisiere: /etc/group,passwd,shadow

cat <nume_fisier>, grep

GUI

/etc/passwd ◦ Username

◦ Password

◦ Uid

◦ Gid

◦ User id info – comment

◦ Home directory

◦ shell

/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

Lab!

Gedit, vi, vim, nano

Echo + redirectari (>, >>, 2>)

cat

Su – deschide o sesiune noua

Sudo – executa cu alte drepturi o comanda

Lab!

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

Lab file access lists!

Comenzi: ◦ getfacl

◦ setfacl –m, -x, -b

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

Yum downloadonly

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