This shows you the differences between two versions of the page.
uso:laboratoare:new:07-storage [2018/11/12 12:42] vlad_mihai.corneci |
uso:laboratoare:new:07-storage [2019/11/17 18:59] (current) cristiana.stan |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Laborator 07: Administrarea spațiului de stocare ====== | + | ====== Laborator 08: Administrarea spațiului de stocare ====== |
- | ===== Înainte de laborator ===== | + | {{page>:uso:laboratoare:new:07-storage:setup&nofooter&noeditbutton}} |
- | ==== Utilizare terminal ==== | + | ===== Cuprins ===== |
- | + | {{page>uso:laboratoare:new:07-storage:nav&noheader&nofooter&noeditbutton}} | |
- | ==== Suport laborator ==== | + | |
- | + | ||
- | + | ||
- | ==== Obiective ==== | + | |
- | + | ||
- | + | ||
- | + | ||
- | ==== Pe scurt despre Git ==== | + | |
- | + | ||
- | Pe parcursul laboratoarelor, pentru descărcarea fișierelor necesare laboratorului, vom folosi Git. Git este un sistem de controlul versiunii și e folosit pentru versionarea codului în proiectele software mari. Celor interesați să aprofundeze conceptele din spatele comenzii ''git'', precum și utilizări avansate, le recomandăm cursul practic online de pe [[http://gitimmersion.com/|gitimmersion]]. | + | |
- | + | ||
- | Informațiile despre laboratorul de USO se găsesc în [[https://github.com/systems-cs-pub-ro/uso|acest repository Git]]. | + | |
- | + | ||
- | În laboratorul curent, pe sistemul fizic, aveți deja clonat repository-ul Git în directorul ''~/uso.git/''. Vom preciza acest lucru pe parcursul laboratorului. | + | |
- | + | ||
- | <note important> | + | |
- | Pentru a pregăti infrastructura de laborator rulați comenzile de mai jos într-un terminal deschis pe sistemul fizic. Deschideți un terminal folosind combinația de taste ''Ctrl+Alt+t''. În listarea de mai jos ''student@uso:~$'' este promptul unde introduceți comenzile, pe acela nu-l tastați. Recomandăm să **nu** folosiți //copy-paste// ca să vă acomodați cu linia de comandă: | + | |
- | <code> | + | |
- | student@uso:~$ cd uso.git/ | + | |
- | student@uso:~/uso.git$ git reset --hard | + | |
- | student@uso:~/uso.git$ git clean -f -d | + | |
- | student@uso:~/uso.git$ git pull origin | + | |
- | student@uso:~/uso.git$ git checkout -b lab-01-fs | + | |
- | student@uso:~/uso.git$ git pull origin lab-01-fs | + | |
- | </code> | + | |
- | + | ||
- | Dacă la a cincea comandă rulată (''git checkout -b lab-01-fs'') primiți o eroare de forma ''fatal: A branch named 'lab-01-fs' already exists.'', nu vă îngrijorați, nu e nici o problemă. | + | |
- | </note> | + | |
- | + | ||
- | Cam atât cu pregătirea laboratorului. Acum haideți să ne apucăm de treabă! :-) | + | |
- | + | ||
- | + | ||
- | ===== Recapitulare ===== | + | |
- | + | ||
- | ===== Basic ===== | + | |
- | + | ||
- | === Afișare informații despre partiții === | + | |
- | + | ||
- | **1.** Să se afișeze la consolă numărul de partiții de pe sistem, numele partițiilor, dimensiunea acestora și tipul sistemului de fișiere cu care sunt formatate. | + | |
- | + | ||
- | **2.** Să se creeze un script care să afișeze informațiile de la punctul 1. | + | |
- | + | ||
- | **3.** Modificați scriptul anterior astfel încât să accepte ca parametru un string ce specifică un tip de sistem de fișiere (ex: ext3, ext4) și să afișeze toate partițiile ce sunt formatate cu tipul respectiv de fișiere. Dacă niciun parametru nu este specificat, se vor afișa doar informațiile de la punctul 1. | + | |
- | + | ||
- | === Montarea/demontarea de partiții === | + | |
- | + | ||
- | TODO | + | |
- | + | ||
- | === Montarea sistemului propriu de fișiere === | + | |
- | + | ||
- | **1.** Avem nevoie de un sistem de fișiere propriu pe care să ținem temele de la USO. Vrem să ne alegem singuri dimensiunea și tipul său, dar și locul unde aceasta să fie montată. | + | |
- | + | ||
- | Folosiți comenzile necesare pentru a crea un fișier cu dimensiunea de 100MB, plin cu zero-uri (octeți de zero). Apoi avem nevoie să facem un sistem de fișiere de tipul **ext3** peste acest fișier nou. | + | |
- | + | ||
- | <note tip> | + | |
- | Pentru a crea un fișier cu dimensiunea de 100MB folosiți comanda ''dd'' și folosind ca //input file// intrarea specială ''/dev/zero''. Adică ceva de genul | + | |
- | <code> | + | |
- | dd if=/dev/zero ... | + | |
- | </code> | + | |
- | Exemple de folosire a comenzii ''dd'' pentru a genera fișiere de dimensiune dată găsiți la adresa http://matrafox.info/create-a-1g-100mb-10mb-file-for-testing-transfer-speed.html | + | |
- | </note> | + | |
- | + | ||
- | <note tip> | + | |
- | Un fișier poate fi formatat exact ca și cum ar fi o partiție. Pentru aceasta folosiți comanda ''mkfs.ext3'' urmată de calea către fișier. Adică ceva de genul | + | |
- | <code> | + | |
- | sudo mkfs.ext3 /path/fo/file/to/be/formatted | + | |
- | </code> | + | |
- | </note> | + | |
- | + | ||
- | Creați directorul **/mnt/myfs** și montați noul sistem de fisiere în el. | + | |
- | + | ||
- | <note tip>Pentru verificare folosiți comanda ''**df -hT**''. Să descifrăm parametrii: | + | |
- | * ''df'' afișează partițiile montate în acel moment de timp | + | |
- | * ''-h'' e folosit pentru //human-readable// size a partițiilor | + | |
- | * ''-T'' e folosit pentru a afișa încă o coloană cu tipul sistemului de fișiere (e.g. ''ext3'', ''ext4'', ''nfs'' etc.) | + | |
- | + | ||
- | O altă comandă de verificare este ''**mount**'' fără nici un alt parametru. Încercați să descifrați output-ul ei (sau căutați pe google :-P) | + | |
- | </note> | + | |
- | + | ||
- | ===== Need to Know ===== | + | |
- | + | ||
- | ===== Nice to know ===== | + | |
- | + | ||
- | ===== Get a Life ===== | + | |