This shows you the differences between two versions of the page.
|
uso:laboratoare:new:05-cli:setup [2018/10/30 00:01] liza_elena.babu [Înainte de laborator] |
uso:laboratoare:new:05-cli:setup [2019/10/28 19:23] (current) lucian.teodorescu [Obiective] |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ===== Înainte de laborator ===== | ===== Înainte de laborator ===== | ||
| - | TODO CHANGE | + | |
| ^ Comandă ^ Descriere scurtă ^ | ^ Comandă ^ Descriere scurtă ^ | ||
| - | | **''sudo''** | execută o comandă cu drepturi de utilizator privilegiat | | + | | **''head''** | comandă folosită să afișăm primele linii dintr-un output | |
| - | | **''su''** | schimbă utilizatorul cu care suntem autentificați | | + | | **''tail''** | comandă folosită să afișăm ultimele linii dintr-un output | |
| - | | **''id''** | afișează id-ul și grupurile din care face parte un utilizator | | + | | **''find''** | comandă cu care putem găsi un fișier într-o ierarhie de directoare | |
| - | | **''finger''** | afișează un sumar despre un anumit utilizator | | + | | **''tr''** | filtru de text, mai multe detalii [[http://linuxcommand.org/lc3_man_pages/tr1.html|aici]] | |
| - | | **''whoami''** | afișează utilizatorul curent (cu care suntem autentificați) | | + | | **''cut''** | comandă utilă pentru a separa secțiuni ale unui output, pentru detalii [[https://www.computerhope.com/unix/ucut.htm|aici]] | |
| - | | **''who''** | lista de utilizatori autentificați la un moment dat | | + | | **''sort''** | sortează un output | |
| - | | **''passwd''** | schimbă parola unui utilizator | | + | | **''grep''** | caută apariția unui cuvânt/expresii regulate într-un text | |
| - | | **''adduser''** | adaugă un utilizator | | + | | **''uniq''** | elimină duplicatele unui output | |
| - | | **''deluser''** | șterge un utilizator | | + | | **''wc''** | utilitar care numără liniile, caracterele, cuvintele | |
| - | | **''usermod''** | modifică informații despre un utilizator (exemplu: grupul din care face parte) | | + | | **''sed''** | filtru de text avansat | |
| - | | **''addgroup''** | adaugă un grup de utilizatori | | + | | **''awk''** | filtru de text avansat | |
| - | | **''delgroup''** | șterge un grup de utilizatori | | + | | **''touch''** | creează un fișier | |
| + | | **''file''** | inspectează tipul unui fișier | | ||
| ==== Obiective ==== | ==== Obiective ==== | ||
| - | * Înțelegerea nevoii de cont de utilizator și de grup, ca mod de separare a resurselor | + | * Înțelegerea mai bună a funcționării shell-ului |
| - | * Înțelegerea nevoii de cont privilegiat (root) și riscurile aferente contului | + | * Folosirea eficientă a shell-ului |
| - | * Înțelegerea modului de funcționare a ownership-ului și permisiunilor în Linux | + | * Folosirea expresiilor regulate și a expandărilor |
| - | * Abilități de gestiune a utilizatorilor și grupurilor într-un sistem | + | * Înțelegerea faptului că există mai multe moduri de a face un lucru: best tool for the given job |
| - | * Înțelegerea legăturii între utilizatori și procese | + | * Înțelegerea diferenței dintre comenzi de afișare și cele de prelucrare |
| - | * Familiarizarea cu moduri de creștere a privilegiilor și accesul la contul de root (sudo) | + | * Dobândirea de abilități de combinare de comenzi pentru obținerea unui rezultat |
| ==== Folosire Git pentru laborator ==== | ==== Folosire Git pentru laborator ==== | ||
| 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]]. | 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]]. | + | Informațiile despre laboratorul de USO se găsesc în [[https://github.com/systems-cs-pub-ro/uso-lab|acest repository Git]]. |
| - | În laboratorul curent, pe sistemele din laborator (și pe [[https://ocw.cs.pub.ro/courses/uso/resurse/mv|mașina virtuală]]) 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. 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. | ||
| - | <note important> | ||
| - | Pentru a pregăti infrastructura de laborator rulați comenzile de mai jos într-un terminal deschis în mașina virtuală. 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> | <code> | ||
| - | student@uso:~$ cd uso.git/ | + | student@uso:~$ cd ~ |
| - | student@uso:~/uso.git$ git reset --hard | + | student@uso:~$ git clone https://github.com/systems-cs-pub-ro/uso-lab.git |
| - | student@uso:~/uso.git$ git clean -f -d | + | |
| - | student@uso:~/uso.git$ git fetch origin | + | |
| - | student@uso:~/uso.git$ git checkout -b lab-05-cli | + | |
| - | student@uso:~/uso.git$ git rebase origin/lab-05-cli | + | |
| </code> | </code> | ||
| - | Dacă la a cincea comandă rulată (''git checkout -b lab-03-user'') primiți o eroare de forma ''fatal: A branch named 'lab-03-user' already exists.'', nu vă îngrijorați, nu e nici o problemă. | ||
| - | |||
| - | Dacă la un moment dat în lucrul în repository ați șters sau modificat ceva și doriți să reveniți la starea inițială, rulați din nou comenzile de mai sus. | ||
| </note> | </note> | ||
| Cam atât cu pregătirea laboratorului. Acum haideți să ne apucăm de treabă! :-) | Cam atât cu pregătirea laboratorului. Acum haideți să ne apucăm de treabă! :-) | ||