C2110 Operační systém UNIX a základy programování 1. lekce / modul 4 -1C2110 Operační systém UNIX a základy programování Petr Kulhánek kulhanek@chemi.muni.cz Národní centrum pro výzkum biomolekul, Přírodovědecká fakulta Masarykova univerzita, Kamenice 5, CZ-62500 Brno 1. lekce / modul 4 PS/2021 Prezenční forma výuky: Rev6 C2110 Operační systém UNIX a základy programování 1. lekce / modul 4 -2- Začínáme ➢ Místní vs vzdálený přístup ➢ Místní přihlášení ➢ Terminály ➢ Příkazová řádka ➢ Vzdálené přihlášení, příkaz ssh C2110 Operační systém UNIX a základy programování 1. lekce / modul 4 -3Místní vs vzdálený přístup uživatel místní sezení uživatel místní sezení vzdálený přístup C2110 Operační systém UNIX a základy programování 1. lekce / modul 4 -4Místní přihlášení Místní terminály (historické řazení): • šest textových terminálů (F1 ... F6) • jeden grafický terminál (F7, F8, ...) • přepínání pomocí kláves Ctrl+Alt+F1 ... Ctrl+Alt+F7 Místní terminály (nové řazení, Ubuntu > 18.04): • přihlášení ke grafickému terminálu (F1) • grafické terminály – podle použití (F2, F3, …) • textové terminály – podle použití (F2, F3, …) • přepínání pomocí kláves Ctrl+Alt+F1 ... Ctrl+Alt+F7 Přihlášení: • nutno zadat přihlašovací jméno (username) a heslo (password) Operační systém Linux je velmi flexibilní a umožňuje i jiné způsoby místního přihlášení, např. pomocí identifikačních karet či kryptografických klíčů. Více lze nalézt v nápovědě systému PAM (Pluggable Authentication Modules). $ man 8 pam C2110 Operační systém UNIX a základy programování 1. lekce / modul 4 -5Místní přihlášení Textový terminál ➢ zpřístupňuje příkazovou řádku (CLI – command line interface) ➢ výchozím adresářem je /home/username (domovský adresář) ➢ grafické aplikace (X11) lze spouštět jen s exportem displeje na vzdálený grafický terminál ➢ odhlášení příkazem exit Grafický terminál ➢ spouští X11 server nebo Wayland kompozitor a v něm okenního správce (KDE, Unity, GNOME, atd.) ➢ okenního správce (desktopové prostředí) lze zvolit před vlastním přihlášením ➢ umožňuje přímé spouštění grafických programů (GUI – graphical user interface) ➢ příkazová řádka je dostupná pomocí speciálních aplikací ➢ xterm ➢ konsole ➢ gnome-terminal ➢ odhlášení pomocí nabídky v menu okenního správce C2110 Operační systém UNIX a základy programování 1. lekce / modul 4 -6Místní přihlášení Přihlašovací jméno (Enter) Výchozí klávesnice je anglická (EN). Při použití numerické části klávesnice zkontrolujte, zdali je aktivován NumLock. Heslo (Enter) Možnost změnit typ desktopového prostředí (gnome, KDE, atd., některé je nutno nejdříve doinstalovat) Ubuntu 18.04 LTS Přihlašovací obrazovka pro grafický terminál (GUI) C2110 Operační systém UNIX a základy programování 1. lekce / modul 4 -7GNOME Desktop Nastavení, odhlášení, vypnutí Standardní aplikace Dock (spuštěné aplikace, často používané aplikace) Terminál C2110 Operační systém UNIX a základy programování 1. lekce / modul 4 -8- Terminály Příkazová řádka je přístupná přímo z textových terminálů. V grafickém prostředí (X11/Wayland) je nutné spustit vhodnou aplikaci emulující textový terminál: ➢ gnome-terminal (Terminal) ➢ konsole ➢ xterm konsole Výchozím adresářem je: /home/username jednoduché, přitom značně konfigurovatelné gnome-terminal jednoduché, standard na všech UNIXových systémech xterm C2110 Operační systém UNIX a základy programování 1. lekce / modul 4 -9Příkazová řádka [kulhanek@wolf ~]$ jméno uživatele jméno počítače aktuální adresář (~ znamená domovský adresář /home/username) Prompt - typ uživatele / výzvy ($ běžný uživatel, # super uživatel, další možné %, >) místo pro příkaz Příkaz se vykoná zmáčknutím klávesy Enter. Kopírování textu: Ne pomocí Ctrl+C! Pro kopírování textu z terminálu stačí text označit, pro následné vložení stiskněte kolečko (prostřední tlačítko) myši. Automatické doplňování: zmáčknutím klávesy Tab (tabulátor) se interpret příkazové řádky snaží dokončit rozepsané slovo. Doplňují se jména příkazů, cesty a jména souborů (pokud jeden stisk nic nevyvolá, existuje více možností doplnění, opakovaný stisk je zobrazí). Historie: pomocí kurzorových šipek nahoru a dolů lze procházet seznamem již zadaných příkazů. Příkaz z historie lze znovu použít nebo upravit a upravený použít. Historie je přístupná i příkazem history. C2110 Operační systém UNIX a základy programování 1. lekce / modul 4 -10Vzdálené přihlášení ➢ ssh ➢ vnořené přihlašování C2110 Operační systém UNIX a základy programování 1. lekce / modul 4 -11Vzdálené přihlášení Existuje několik možností vzdáleného přihlášení (rsh, XDMCP, apod.) avšak nejpoužívanějším a nejbezpečnějším je použití příkazu ssh (secure shell). $ ssh [user@]hostname [command] Syntaxe: jméno uživatele; pokud není uvedeno, použije se jméno přihlášeného uživatele jméno počítače [] - nezadává se, indikuje volitelný argument Odhlášení: Vzdálené interaktivní přihlášení (sezení) se ukončuje příkazem exit. Příklady použití: $ ssh wolf01.ncbr.muni.cz $ ssh wolf01 who příkaz, který se má vykonat; pokud není uveden, zpřístupní se příkazová řádka v interaktivním režimu C2110 Operační systém UNIX a základy programování 1. lekce / modul 4 -12Prvotní vzdálené přihlášení [kulhanek@pes ~]$ ssh skirit.ics.muni.cz The authenticity of host 'skirit.ics.muni.cz (2001:718:ff01:1:216:3eff:fe20:382)' can't be established. ECDSA key fingerprint is SHA256:Splg9bGTNCeVSLE0E4tB30pcLS80sWuv0ezHrH1p0xE. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'skirit.ics.muni.cz' (ECDSA) to the list of known hosts. [kulhanek@skirit ~]$ Při prvním přihlášení je nutné potvrdit autenticitu stroje, na který se hlásíme. Ve věrohodné síti můžeme otisk palce přijmout bez ověření. V nezabezpečeném prostředí je však vhodné otisk palce stroje ověřit nezávislou cestou (např. zasláním otisku palce poštou od správce vzdáleného stroje). Jedná se o ochranu pře útoky typu MITM (Man-in-the-middle). Poznámka: Na klastru WOLF jsou všechny počítače vůči sobě důvěryhodné a toto potvrzení tak není vyžadováno. C2110 Operační systém UNIX a základy programování 1. lekce / modul 4 -13Vzdálené přihlášení wolf03 wolf04 wolf05wolf02 wolf06 wolf07 wolf08 wolf23 Pomocí příkazu ssh je možné provést vnořené vzdálené přihlášení. ssh wolf07 ssh wolf02 ssh wolf03 ssh wolf03 S každou novou úrovní vzdáleného přihlášení roste režie, proto, pokud je to možné, použijeme nejpřímější vzdálené přihlášení. Vnořené vzdálené přihlašovaní je nutné použít pro přístup na počítače v neveřejných sítích (např. superpočítače v IT4I). (detaily superpočítání C2115). C2110 Operační systém UNIX a základy programování 1. lekce / modul 4 -14Klastr WOLF – Kam se připojovat? wolf wolf03 wolf23wolf02 univerzitní síť pracovní stanice (výpočetní uzly) server/čelní uzel 0.18 1.18 wolf31wolf30 0.18 wolf01 switch výpočetní uzly Úplné názvy strojů: wolf02.ncbr.muni.cz wolf03.ncbr.muni.cz …. wolf23.ncbr.muni.cz Krátké názvy strojů (pouze v rámci klastru WOLF): wolf02 wolf03 …. wolf23 C2110 Operační systém UNIX a základy programování 1. lekce / modul 4 -15Cvičení 1 1. (Prezenčně) Přihlaste se lokálně k vaší pracovní stanici. 2. (Distančně) Přihlaste se vzdáleně na pracovní stanici wolf02.ncbr.muni.cz • Z MS Windows (libovolná verze) použijte Putty (viz separátní prezentace) • Z Linuxu či macOS použijte příkaz ssh 3. Ověřte jméno pracovní stanice pomocí příkazu: hostname 4. Úplné jméno počítače vypište pomocí: hostname -f 5. Vypište vaše přihlašovací jméno: whoami 6. Vypište seznam přihlášených uživatelů: w nebo who nebo last 7. Vypište obsah vašeho domovského adresáře: ls 8. Vypište cestu k vašemu domovskému adresáři: pwd 9. Z vaší pracovní stanice se dále příkazem ssh přihlaste na uzel wolf10. 10. Zopakujte úkoly 3 až 8 na uzlu wolf10. 11. Odhlaste se z uzlu wolf10: exit 12. Z vaší pracovní stanice spusťte vzdáleně příkaz hostname na uzlu wolf16. 13. Z vaší pracovní stanice spusťte vzdáleně příkaz ls na uzlu wolf16. 14. (Distančně) Příkazem exit (vzdálené přihlášení). C2110 Operační systém UNIX a základy programování 1. lekce / modul 4 -16- wolf10 Cvičení 2 1. Otevřete dvě terminálové sezení na pracovní stanici wolf01.ncbr.muni.cz 2. Zadejte příkazy z předchozího cvičení (např. last, w, apod.). 3. Odhlaste se. 1. Otevřete dvě terminálové sezení, jedno na pracovní stanici wolf02.ncbr.muni.cz a druhé na wolf10.ncbr.muni.cz 2. Zadejte příkazy z předchozího cvičení (např. last, w, apod.). 3. Odhlaste se. wolf01wolf01 wolf01 wolf02 wolf02 wolf10 váš počítač váš počítač C2110 Operační systém UNIX a základy programování 1. lekce / modul 4 -17Domácí úkoly C2110 Operační systém UNIX a základy programování 1. lekce / modul 4 -18Domácí úkol 1. Z vašeho osobního počítače se přihlaste na uzel klastru WOLF pomocí putty (MS Windows) nebo příkazm ssh (Linux, Mac OS). Postup naleznete v doprovodné prezentaci podle typu OS vašeho počítače.