This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
linux-admin:capitole:capitol-01 [2016/06/06 18:23] 127.0.0.1 external edit |
linux-admin:capitole:capitol-01 [2016/09/16 11:57] (current) mihaic [Subiecte abordate] |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== 1. Sisteme de calcul ====== | ====== 1. Sisteme de calcul ====== | ||
- | TODO | + | Vom discuta despre componentele unui sistem de calcul și ale unui sistem de operare și despre legăturile dintre acestea. Vom prezenta la nivel conceptual (generalist) și apoi vom particulariza pe Linux/Unix. Ne interesează ce se întâmplă în spatele unei comenzi (sau acțiuni a utilizatorului) și cum poate fi afectată această acțiuni funcție de specificul sistemului de operare și contextul curent. |
===== Subiecte abordate ===== | ===== Subiecte abordate ===== | ||
- | * TODO | + | * Sisteme de operare: roluri, exemple |
- | * TODO | + | * Structura unui sistem de calcul |
- | * TODO | + | * Componentele unui sistem de operare |
+ | * Interfața cu utilizatorul | ||
+ | * Distribuții Linux | ||
==== Utilitare folosite ==== | ==== Utilitare folosite ==== | ||
- | * TODO | + | * ''uname'', ''lspcu'' |
- | * TODO | + | * ''cat'' |
- | * TODO | + | * ''strace'' |
+ | * ''lsb_release'', ''uptime'' | ||
+ | * ''date'', ''cal'' | ||
- | ==== Bune practici ==== | ||
- | |||
- | * TODO | ||
- | * TODO | ||
- | * TODO | ||
- | |||
- | ===== Resurse utile ===== | ||
- | |||
- | * TODO | ||
- | * TODO | ||
==== Slide-uri ==== | ==== Slide-uri ==== | ||
- | [[http://koala.cs.pub.ro/training/res/medium-unix/slides/cap-01.pdf|Slide-uri capitol 1]] | + | [[http://koala.cs.pub.ro/training/res/linux-admin/slides/cap-01.pdf|Slide-uri capitol 1]] |
<html> | <html> | ||
Line 40: | Line 34: | ||
==== Demo-uri ==== | ==== Demo-uri ==== | ||
- | TODO | + | Afișare informații despre distribuția curentă<code> |
+ | cat /etc/issue | ||
+ | lsb_release -a | ||
+ | </code> | ||
+ | |||
+ | Timpul de când este pornit sistemul<code> | ||
+ | uptime | ||
+ | </code> | ||
+ | |||
+ | Ora curentă, calendarul lunii curente<code> | ||
+ | date | ||
+ | cal | ||
+ | </code> | ||
+ | |||
+ | ==== Exercițiu 1 ==== | ||
+ | Afișați numărul de procesoare ale sistemului curent. Folosiți, pe rând, comenzile de mai jos | ||
+ | <code> | ||
+ | cat /proc/cpuinfo | ||
+ | lscpu | ||
+ | nproc | ||
+ | </code> | ||
+ | |||
+ | Afișați arhitectura pe care rulează sistemul curent. Folosiți, pe rând | ||
+ | <code> | ||
+ | uname | ||
+ | </code> | ||
+ | cu opțiunea corespunzătoare (vedeți în pagina de manual opțiunea ce vă permite să identificați //hardware name//) și | ||
+ | <code> | ||
+ | arch | ||
+ | </code> | ||
+ | |||
+ | ==== Exercițiu 2 ==== | ||
+ | |||
+ | Rulați comanda ''whoami''. Ce v-a afișat? Care este utilizatorul curent și care este numele mașinii? | ||
+ | |||
+ | Rulați comanda ''hostname'' și observați ce afișează. | ||
+ | |||
+ | Rulați comanda ''sudo su''. Verificați din nou utilizatorul curent cu comanda ''whoami''. | ||
+ | |||
+ | Părăsiți prompt-ul de ''root'' folosind comanda ''exit'' sau combinația de taste ''Ctrl+d''. | ||
+ | |||
+ | |||
+ | ==== Exercițiu 3 ==== | ||
+ | Rulați, ca utilizator obișnuit, comanda | ||
+ | <code> | ||
+ | ifconfig | ||
+ | </code> | ||
+ | Observați că nu afișează nimic. | ||
+ | |||
+ | Apoi, rulați ''sudo su'' ca să obțineți un prompt de ''root'' și rulați și acolo comanda | ||
+ | <code> | ||
+ | ifconfig | ||
+ | </code> | ||
+ | Observați că acum afișează informații despre rețea. | ||
+ | |||
+ | Pentru a identifica această cauză, rulați, în fiecare dintre cele două prompturi (de utilizator obișnuit și de ''root'') cele două comenzi de mai jos | ||
+ | <code> | ||
+ | echo $PATH | ||
+ | which ifconfig | ||
+ | </code> | ||
+ | |||
+ | ==== Exercițiu 4 ==== | ||
+ | |||
+ | Folosiți strace pentru a afișa fișierele deschise de comanda | ||
+ | <code> | ||
+ | ls | ||
+ | </code> | ||
+ | Apoi afișați fișierele deschise de comanda | ||
+ | <code> | ||
+ | ls -l | ||
+ | </code> | ||
- | TODO | + | <note tip> |
+ | Pentru a rula comanda ''strace'' folosiți comanda ''strace'' urmată de comanda pe care doriți să o urmăriți. De exemplu<code> | ||
+ | strace ls | ||
+ | </code> | ||
+ | </note> | ||
+ | <note tip> | ||
+ | Va trebui să folosiți comanda ''strace'' cu opțiunea aferentă (''-e'') ca să urmăriți apelul de sistem ''open''. | ||
+ | </note> | ||
- | ==== TODO: Exercițiu 1 ==== | + | Observați că rularea comenzii ''ls -l'' deschide fișierul ''/etc/passwd'' în vreme ce ''ls'' nu deschide acel fișier. |
- | TODO | + | ==== Exercițiu 5 ==== |
- | ==== TODO: Exercițiu 2 ==== | + | Identificați apelul de sistem ''uname'' comun invocat înainte de afișarea informațiilor. Afișați pagina de manual a apelului de sistem respectiv (''uname''). |
- | TODO | + | <note tip> |
+ | Paginile de manual pentru apeluri de sistem sunt în secțiunea ''2'' a paginilor de manual. | ||
+ | </note> | ||