====== Lecția 1: Linux - Introducere ====== ====Prezentare generală==== **Linux** este o familie de sisteme de operare de tip Unix care folosesc Nucleul Linux (în engleză kernel). Linux poate fi instalat pe o varietate largă de hardware, începând cu telefoane mobile, tablete, console video, continuând cu calculatoare personale până la supercomputere. **De ce Linux?** Sistemele Linux oferă o mulțime de avantaje dezvoltatorilor de produse, care micșorează timpul de dezvoltare, lucru care este din ce în ce mai important în zilele noastre. * versatilitate: Sistemele Linux nu trebuie să fie single-purpose, se pot adăuga multiple funcționalități cu ușurință (chiar și în etapa de post-producție) * codebase mare: Sistemele Linux abundă de aplicații user-space, drivere pentru o mulțime de dispozitive, suport pentru multe protocoale/sisteme de fișiere/etc. * securitate: Sistemele care folosesc servicii comune în Linux beneficiază de același nivel de securitate ca pe un sistem desktop sau server **De ce Linux pentru DigitalKids?** Pentru că sunteți suficient de avansați pentru a trece la un alt nivel, pentru că adevărații dezvoltatori folosesc Linux și pentru că este cool. 8-) **Ce vom folosi noi?** În lecțiile ce urmează, vom folosi ca sistem de operare **Linux Mint** (http://www.linuxmint.com/). ====Linia de comandă==== În Linux, linia de comandă poartă numele de //shell//, //terminal// sau //consolă//. (mai multe despre aceasta în cadrul cursului) Majoritatea acțiunilor pe care vrem să le realizăm în Linux, le realizăm folosind comenzi în terminal, de exemplu: crearea unui director, mutarea unui fișier în alt director, redenumirea unui fișier, etc. ====Prompt==== Prompt-ul unui terminal are rolul de a identifica utilizatorul, mașina curentă, și directorul în care ne aflăm. {{:module:12-aplicatii-mobile:01_prompt.png?400|}} ====Comenzi de bază==== * **cd**: comandă folosită în terminal pentru a naviga în alt director; * **pwd**: comandă folosită pentru a afișa calea directorului curent; * **ls**: comandă folosită pentru a lista conținutul directorului curent sau al directorului care urmează după comandă; * **touch**: comandă folosită pentru a crea un fișier; * **rm**: comandă folosită pentru a șterge un fișier; * **mkdir**: comandă folosită pentru a crea un director; * **rmdir**: comandă folosită pentru a șterge un director gol; * **cp**: comandă folosită pentru a face o copie a unui fișier; * **mv**: comandă folosită pentru a muta un fișier în alt director; ====Vim==== Vim este un editor de text folosit de mulți dezvoltatori. El este folosit pentru a deschide fișiere în linia de comandă care apoi pot fi editate. Mod de utilizare: în terminal se dă comanda **vim nume_fișier**, după care fișierul va fi deschis în terminal. Pentru a putea să-l edităm apăsăm pe tasta **i**, pentru a salva modificările apăsăm pe tasta **esc** după care combinația de taste **:w**. Pentru a ieși se apasă **:q** sau se poate folosi combinația de taste **:wq** care salvează, după care închide fișierul. Există mai multe moduri în care se poate afla un fișier deschis cu vim. **Vim** este o versiune moștenită din **Vi**. ====Task-uri==== - Testați comenzile din lecție (le vom testa împreună pentru a le și explica) - Creați un folder numit “Digital Kids” și în el două fișiere numite “Magenta” și “Elephants”. - Adăugați un text la alegere în fișierul “Magenta”. Folosiți o comandă care să vă arate detalii despre fișiere. Care este dimensiunea fișierului “Magenta”? - Scrieți câteva fraze în fișierul “Elephants”. Afișați conținutul în terminal. - În folderul “Digital Kids” creați două foldere numite “Android” și “IOS”. - Copiați fișierul “Digital Kids” în “Android” și mutați fișierul “Elephants” în “IOS”. - Clonați folder-ul Magenta sub altă denumire. - Creați alte două fișiere în “Digital Kids”, adăugați conținut pe mai multe linii în cele două fișiere si afișați diferența între ele. - Redenumiți unul dintre fișierele din Digital Kids. - Ștergeți fișierele din “IOS”, apoi ștergeți folder-ul. - Ștergeți direct folderul “Android”. - Instalați aplicația oneko cu funcția “sudo apt-get install oneko” . Testați folosind parametri precum -dog, -tora, -fg red, -bg red - Folosiți comanda “which oneko”? Ce vă afișează? - Testați comanda cu o aplicație pe care nu o aveți instalată, spre exemplu “which sl” . - Instalați aplicatia “sl” . De ce folosim “sudo”? - Ce face comanda “clear”? - Ce face comanda “uname”? - Ce face comanda “history”? Scrieți ce afișează comanda într-un fișier. - Testați comanda “cal”? Ce face? Afișați o lună din anul 1924. - Testați comanda “date”. - Afișați toate fișierele/folderele din folder-ul curent. Există fișiere ascunse? Creați fișierul cu denumirea “.pisica_oneko”. Folosiți din nou comanda de afișare. ==== Test Linux Mint ==== * Creați 3 fișiere numite Superman, Batman, Catwoman. Ce comandă ați folosit? Spuneți ce altă comandă mai știți pentru crearea unui fișier. * Deschideți fișierele și scrieți câte o frază în fiecare. * Afișați în terminal, folosind comanda potrivită, conținutul fiecărui fișier. * Creați folderul “Super Eroi” și mutați fișierele în acesta. Aveți grijă să creați un singur folder. * Clonați folderul “Super Eroi” sub altă denumire aleasă de voi. * Stergeți folderul “Super Eroi”. * Afișați conținutul folderului în care vă aflați. * Cu ce comandă instalați o aplicație din terminal? * Cum dezinstalați o aplicație din terminal? (Puteți să căutați pe internet) * Spuneți 3 lucruri care vă plac la Linux :)