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