1 of 38

Cursul #12

Administrarea Spațiului de Stocare

1

2 of 38

Suport de curs

  • Utilizarea sistemelor de operare
    • Capitolul 10 – Administrarea spațiului de stocare
      • https://github.com/systems-cs-pub-ro/carte-uso/releases

2

1/18/21

3 of 38

Jesus saves.

Buddha makes incremental backups.

3

18.01.2021

4 of 38

4

18.01.2021

5 of 38

Spațiul de stocare

Perspectivă utilizator

  • O interfață facilă de acces la resurse (stocate persistent)
  • În general formată din fișiere și directoare
  • Nume de fișier, tip fișier, moduri de utilizare
  • Creare ștergere, modificare, redenumire
  • Aspecte de securitate: ce operații pot efectua asupra fișierului

5

18.01.2021

Perspectivă SO

  • Modul de stocare persistentă a informației pe un dispozitiv de stocare
  • Dispozitiv de stocare: hard disk drive, CD-ROM drive, USB flash drive
  • Eficiență în alocarea blocurilor și sectoarelor de pe dispozitivul de stocare și a accesării datelor
  • Asigurarea consecvenței informației
    • scandisk
    • fsck
  • Garantarea securității

6 of 38

Tipuri de discuri

  • Subsistemul de stocare din cadrul unui sistem de calcul este format dintr-un controller care furnizeaza partea de logică a transferului de date și de unul sau mai multe discuri
  • Dispozitivele de stocare au următoarele atribute principale:
    • Spațiul disponibil
    • Viteza de acces (transferul de pe disc în memoria RAM)
    • Mod de poziționare (intern sau extern)
    • Mod de conectare (SATA, SAS, USB)
    • Fiabilitate (câte ore de funcționare sau citiri/scrieri suportă de-a lungul vieții)

6

18.01.2021

7 of 38

Hard Disk Drive - HDD

  • HDD-ul prin construcție dispune de părți mobile în interiorul acestuia: un braț, de citire/scriere si unul sau mai multe platane pe care se stochează datele
  • Nu permite viteze de funcționare ridicate comparativ cu memoria RAM
  • Parametrii pentru performanță sunt:
    • Numărul de rotații pe minut al platanelor
    • Viteza interfeței de conectare la controller
  • 2 tipuri de interfețe de conectare:
    • SATA – 5400rpm/7200rpm; 6Gbps
    • SAS – 10000rpm/15000rpm; 6Gbps

7

18.01.2021

8 of 38

Solid State Block - SSD

  • Un răspuns la neajunsurile HDD-ului
  • SSD-ul nu are părți mobile în interiorul acestuia și funcționează pe principiul stick-urilor USB
  • În general, are durată de viață mai mică decât HDD-ul
  • SO și SF trebuie să întreprindă operații specifice, optimizate pentru SSD-uri, pentru a le prelungi durata de viață
  • Interfețe de conectare:
    • SATA – 6Gbps
    • SAS – 12Gbps

8

18.01.2021

9 of 38

Durată de viață a unui disc

  • Pentru a prelungi durata de viață a unui disc, trebuie să aveți în vedere următoarele facilități:
    • Defragmentare: procesul prin care se rearanjează datele pe disc pentru un acces mai eficient; (recomandată dezactivarea pentru SSD)
    • Swapping: cănd sistemul rămâne fără memorie RAM, acesta va folosi pe post de memorie discul; (recomandată dezactivarea pentru SSD)
    • Hibernate: atunci când trecem calculatorul în starea Hibernate, acesta scrie întregul conținut al memoriei pe disc; (recomandat să nu treceți sistemul în Hibernate pentru SSD)

9

18.01.2021

10 of 38

Operații cu discul

10

18.01.2021

disc

partiționare

formatare

montare

backup

fsck

utilizare

11 of 38

Partiționare

  • Procesul de împărțire a unui disc în partiții
  • Există 2 nivele de administrare: partiționare și sistemele de fișiere; acestea sunt independente și se aplică iterativ
  • Utilitarul de bază Unix este fdisk/gdisk pentru GPT
  • Aplicațiile folosite pentru instalarea unui sistem de operare dispun de un program de tip partitioner
  • GParted, Partition Magic

11

18.01.2021

12 of 38

De ce folosim partiții?

  • O adresare liniară nu este suficientă pentru a gestiona spațiul de stocare oferit de un disc
  • Împarte spațiul disponibil în diverse zone contigue, fiecare zonă având un specific definit de la creare
    • Partiție pentru sistemul de operare Windows/Linux
    • Partiție pentru date (home directory)
    • Partiție pentru swap
  • Penru o stocare eficientă (performanța ridicată) și coerenta (să nu corupem datele)

12

18.01.2021

13 of 38

Tipuri de partiții

  • În MBR partitioning scheme:
    • Partiții primare (maxim 4)
    • Extinsă – poate înlocui una din partițiile primare
    • Logice – se regăsesc în interiorul partiției extinse
  • În cazul GPT (GUID Partition Table) nu mai există limitări date de numărul de partiții și de dimensiunea maximă a unei partiții
  • La GPT, fiecare partiție a discului are asociat un număr unic de identificare (guid), generat aleator și care garantează că fiecare partiție de pe glob va avea propriul identificator

13

18.01.2021

14 of 38

14

18.01.2021

15 of 38

15

18.01.2021

16 of 38

Sisteme de fișiere

  • Pentru a putea organiza datele pe o partiție într-un mod facil și ușor de înțeles pentru utilizatorul final al sistemului de calcul, pe aceasta în general se instaleaza un sistem de fișiere
  • Procesul de instalare/alocare a unui system de fișiere pe o partiție se numește formatare
  • Sunt specifice SO:
    • Linux: cel mai folosit este ext4 și xfs
    • Windows: principalul SF este NTFS

16

18.01.2021

17 of 38

Montarea sistemului de fișiere

  • La pornirea SO, se încarcă de pe disc sistemul de fișiere rădăcină
  • Ulterior, se pot monta (mount) alte sisteme de fișiere
  • Montarea unui nou sistem de fișiere
    • Adăugarea sistemului de fișiere într-un anumit punct din ierarhia curentă de directoare (mount point)
    • Pe Windows orice sistem de fișiere se montează automat într-o rădăcină separată (C:\, D:\ etc)
    • Pe Unix există un singur director rădăcină

17

18.01.2021

18 of 38

Exemple

  • Operația de montare (mount) - comanda mount + partiția + locația

  • Operația de demontare (umount) - comanda umount + locația

18

18.01.2021

[root@monitor ~]# mount /dev/sdb1 /mnt/ [root@monitor ~]# mount | grep sdb1

/dev/sdb1 on /mnt type ext4 (rw)

[root@monitor ~]# umount /mnt/

[root@monitor ~]# fsck /dev/sdb1

fsck from util-linux-ng 2.17.2

e2fsck 1.43-WIP (20-Jun-2013)

/dev/sdb1: clean, 11/13272 files, 6616/52916 blocks

19 of 38

Montarea dispozitivelor

  • În Windows, dispozitivele sunt montate automat
  • În Linux, acestea nu sunt întotdeauna montate (mai ales dacă sistemul nu dispune de un GUI) – cel mai întâlnit exemplu este un stick USB care este detectat de sistemul de calcul (comanda dmesg pentru a vedea acest lucru), dar nu poate fi folosit până nu e montat

19

18.01.2021

20 of 38

Montare SF la distantă

  • Dacă dispunem de un server la distanță, ce are serviciul de ssh funcțional, putem monta sistemul acestuia de fișiere folosind utilitarul sshfs

  • După cum se poate observa, conținutul directorului /root de pe mașină cu numele hp-wn01 a fost montat local

20

18.01.2021

[root@monitor ~]# apt-get install sshfs

[root@monitor ~]# sshfs root@hp-wn01:/root/ /mnt/

[root@monitor ~]# mount | grep mnt

root@hp-wn01:/root/ on /mnt type fuse.sshfs (rw,nosuid,nodev) [root@monitor ~]# ls -l /mnt/

total 4304336

-rw------- 1 root root 1285 Nov 13 2015 anaconda-ks.cfg

21 of 38

Replicarea datelor

  • Defectarea sistemelor de stocare este iminentă mai ales din cauză ca HDD-urile sunt sensibile la șocuri, iar SSD-urile au un număr limitat de scrieri din proiectare => nevoie de a replica datele prin diverse mecanisme pe mai multe unități de stocare
  • Pentru servere:
    • Mecanismul RAID
  • Pentru sisteme desktop/laptop
    • Crearea unei imagini a întregului disc
    • Snapshot folosind sistemul de fișiere
    • Copierea fișierelor pe un disc extern sau pe un alt dispozitiv peste rețea - backup

21

18.01.2021

22 of 38

RAID

  • Mecanismul RAID: Replicare datelor pe discuri diferite se realizează automat la nivel de bloc de date, atunci când acestea sunt trimise de către SO
  • Este utila atunci când sistemul rulează și dorim protecție permanentă a datelor
  • Se folosește cu precădere în sistemele de tip server, deoarece este foarte costisitor
  • Se pierde spațiul util și performanța e mai scăzută

22

18.01.2021

23 of 38

RAID

  • Poate fi implementat în hardware de către controller-ul ed stocare sau în software de către SO
  • Are mai multe niveluri de protecție:
    • RAID0: datele sunt distribuite pe toate discurile configurate; nu există nici un nivel de replicare
    • RAID1: datele sunt scrise pe 2 din discurile configurate; dacă un disc se defectează, celălalt va deține informația
    • RAID5: datele sunt scrise pe 1 disc și se mai scrie o sumă de control pe un alt disc; cel puțin 3 discuri; datele sunt recuperate cu ajutorul sumelor de control
    • RAID10: combinația dintre RAID0 și RAID1 (datele sunt distribuite și replicate); unul dintre cele mai bune niveluri de protecție

23

18.01.2021

24 of 38

24

18.01.2021

25 of 38

Replicarea pe sisteme desktop/laptop

  • Crearea unei imagini a întregului disc este utilă atunci când dorim să refacem un sistem rapid ce a fost afectat de un defect hardware sau de un virus
  • Snapshot folosind sistemul de fișiere se poate face doar dacă acesta suportă (cel mai cunoscut este ZFS)

25

18.01.2021

26 of 38

Backup periodic pe Linux

  • Cel mai folosit utilitar în replicarea eficientă a fișierelor și directoarelor este rsync
  • Rsync are două caracteristici:
    • Face replicare incrementală => îmbunătățire semnificativă a timpului de back-up
    • Dispune de un control granular al atributelor replicate
  • Sursa și destinația datelor poate fi locală, în SF curent sau poate exista peste rețea
  • Rsync primește următoarele argumente:
    • / - sursa datelor (calea rădăcină)
    • root@nas:/backup - destinația datelor (o locație în rețea pe stația cu numele nas)

26

18.01.2021

27 of 38

Backup periodic pe Windows

  • Există o multitudine de aplicații de replicare a datelor
  • Un exemplu este utilitarul Cobian Backup – cu ajutorul acestuia putem configura replicarea unui director sau a unui disc local pe un stick USB sau la distanță peste rețea

27

18.01.2021

28 of 38

Logical Volume Manager

  • Procesul de partiționare se poate aplica doar asupra unui disc fizic
  • Dacă în sistem sunt montate două discuri, pentru fiecare din acestea trebuie realizată partiționarea
  • În sisteme de tip Linux, a fost introdus conceptul de LVM pentru a rezolva acest neajuns

28

18.01.2021

29 of 38

Logical Volume Manager

  • În cadrul acestuia există următoarele obiecte:
    • Physical Volume – sunt discurile fizica ale sistemului asociate LVM-ului
    • Volume Group – format din unul sau mai multe discuri asociate anterior
    • Logical Volume – alocate din spațiul disponibil intr-unul din Volume Group-urile creata anterior; doar acesta e vizibil în sistemul de operare și poate fi formatat cu un sistem de fișiere
  • Atunci când instalați o distribuție de Linux, aveți opțiunea de a activa LVM-ul;
  • Utilitatea acestuia apare atunci când mai adăugați un disc și doriți să măriți dimensiunea partițiilor existente

29

18.01.2021

30 of 38

Incluziunea celor 3 obiecte

30

18.01.2021

31 of 38

Exemplu LVM

  • Pentru a lista discurile fizice folosim pvs

  • Se observă un disc denumit /dev/md2 cu capacitatea 1.14TB. Vom lista acum volumele:

  • Se observa un singur volum denumit storage.

31

18.01.2021

mamba:~# pvs

PV VG Fmt Attr PSize Pfree

/dev/md2 storage lvm2 a- 1.14t 130.47g

mamba:~# vgs

VG #PV #LV #SN Attr VSize VFree

storage 1 6 0 wz--n- 1.14t 130.47g

32 of 38

Exemplu LVM

  • Observați din ce discuri fizice este compus:

32

18.01.2021

mamba:~# pvdisplay /dev/md2

--- Physical volume ---

PV Name /dev/md2

VG Name storage

PV Size 1.14 TiB / not usable 4.00 MiB

Allocatable yes

PE Size 4.00 MiB

Total PE 299641

Free PE 33401

Allocated PE 266240

PV UUID M9WAFG-pf9x-Uo0j-7r8N-spOy-5evy-tt0cyc

33 of 38

Exemplu LVM

  • Vom lista acum volumele logice, cele care sunt vizibile sistemului de operare:

  • Toate acestea sunt prezente în calea /dev

33

18.01.2021

mamba:~# lvs

LV VG Attr LSize Origin Snap% Move Log Copy% Convert

home storage -wi-ao 20.00g

labs storage -wi-ao 200.00g

projects storage -wi-ao 200.00g

rosedu storage -wi-ao 100.00g

swarm storage -wi-ao 500.00g

titan storage -wi-ao 20.00g

34 of 38

Resurse utile

  • htttp://www.dartmouth.edu/~rc/help/faq/permissions.html
  • http://technet.microsoft.com/en-us/library/bb727008.aspx
  • http://technet.microsoft.com/en-us/library/bb726984.aspx
  • http://ss64.com/bash/chmod.html

34

18.01.2021

35 of 38

Unix and Linux System Administration Handbook

  • 2010, 4th Edition
  • Evi Nemeth, Garth Snyder, Trent Hein, Ben Whaley
  • Una dintre cele mai apreciate cărți de adminitrare Unix/Linux
  • Aproape 1300 de pagini, 32 de capitole
  • Sistemul de fișiere, utilizatori, procese, rețelistică, servicii, securitate, virtualizare

35

18.01.2021

36 of 38

Bram Moolenaar

  • Autorul Vim (Vi IMproved)
  • Vim este unul dintre cele mai răspândite editoare în lumea Unix
    • Programatori și administratori
  • Lucrează la Google

36

18.01.2021

37 of 38

Microsoft

  • http://www.microsoft.com/
  • Windows, Office, Internet Explorer, Xbox, Bing
  • cel mai mare producător de software
  • Bill Gates, Steve Ballmer
  • fondată în 1975
  • DOS, Windows 3.1, Windows 95, Windows 98
  • Windows NT, 2000, XP, 2003, Vista, 2008, 7, 8, 10
  • a cumpărat Skype în 2011

37

18.01.2021

38 of 38

Cuvinte cheie

  • HDD
  • SSD
  • Partiționare
  • Formatare
  • MBR
  • GPT
  • RAID
  • Back-up
  • LVM
  • Mount
  • umount

38

18.01.2021