Nebojte se příkazové řádky Linuxu! Je to mocný a přívětivý nástroj umožňující efektivně zpracovat i velká data a zautomatizovat činnosti. Prakticky shodně funguje příkazová řádka i v Apple macOS, BSD a dalších UNIXových systémech, nejen v Linuxu. Kurz je vhodný pro úplné začátečníky i mírně pokročilé. Jediným vstupním požadavkem je zájem (nebo potřeba) pracovat v příkazové řádce, typicky na linuxovém výpočetním serveru.
Znalosti práce v Linuxu/UNIXu se hodí např. při zpracování rozsáhlých molekulárních a jiných dat na výpočetních clusterech jako je MetaCentrum. To je služba CESNETu poskytující přístup k obrovské výpočetní kapacitě, kterou mohou všichni studenti a zaměstnanci akademických institucí v Česku využít pro své výpočty. Znalosti z kurzu tam ihned můžete zúročit. Kurz poskytuje teoretický úvod i řadu praktických příkladů a cvičení.
Kurz poběží turnusově 3 dny.
Bude-li se kurzu účastnit alespoň jeden člověk nemluvící česky, kurz bude anglicky.
Kurz bude probíhat 14.-16. 1. 2025 v Benátské 2 v učebně B12 od 9:00 do 16-17:00 (s dostatkem přestávek).
Konzultace jsou možné kdykoliv po předchozí e-mailové domluvě.
Poslední úprava: Zeisek Vojtěch, Mgr., Ph.D. (09.09.2024)
Don’t be afraid of command line! It is friendly and powerful tool allowing to process large data and automate tasks. Practically identical is command line also in Apple macOS, BSD and another UNIX-based systems, not only in Linux. The course is designed for total beginners as well as intermediate advanced students. The only requirement is an interest (or need) to work in command line, typically on Linux computing server.
Knowledge of Linux/UNIX is useful e.g. for working with large molecular and another data on computing cluster like MetaCentrum. It is service provided by CESNET allowing access to huge computational capacity, which is readily available for all students and employees of Czech academic institutions to process their data. You can immediately use skills learned during the course. The course contains theoretical introduction as well as plenty of practical examples and exercises.
The course will be taught 3 days.
The course will be taught January 14-16, 2025, Benátská 2, lecture room B12, from 9:00 to 16-17:00 (with enough breaks).
Consultations are possible any time after previous e-mail agreement.
Poslední úprava: Zeisek Vojtěch, Mgr., Ph.D. (09.09.2024)
Poslední úprava: Zeisek Vojtěch, Mgr., Ph.D. (11.11.2021)
Požadavky ke zkoušce -
Aktivní účast.
Kladení a zodpovídaní otázek v průběhu výuky týkajících se probíraných témat.
Řešení jednoduchých úloh v příkazové řádce (přičemž je možné při řešení využít internet, dokumentaci, apod.).
Napsat na Wikipedii alespoň jednu normostranu o libovolném tématu souvisejícím s probíranými tématy. Může jít i o překlad, úpravy stávajícíh článků, o příspěvky do několika kratších článků, apod. Mělo by jít o jazykovou verzi Wikipedie odpovídající mateřskému jazyku studenta (tedy typicky českou nebo slovenskou verzi).
Poslední úprava: Zeisek Vojtěch, Mgr., Ph.D. (23.09.2019)
Active participation.
Asking and answering on-topic questions during the course.
Solving simple tasks in command line (it is possible to use Internet, documentation, etc.).
Write to Wikipedia at least one page about any topic related to the course. It can be translation, edition of an existing page, it can be splitted into several articles, etc. Student should use native Wikipedia according to her/his language (so preferebly not English).
Poslední úprava: Zeisek Vojtěch, Mgr., Ph.D. (23.09.2019)
Sylabus -
Přehled témat (může být upraven podle požadavků účastníků):
Co to je UNIX, Linux, GNU, jaký je mezi nimi vztah a jaká je architektura systému, jádro
Co to znamená "open-source", jaké licence se používají, jaká je filozofie, jaký je obchodní model
Jaký je rozdíl mezi jednotlivými linuxovými distribucemi, jak se v tom vyznat, jak si vybrat
Grafická rozhraní Linuxu - používáme Linux graficky
Vyzkoušení pomocí živých CD/USB nebo virtualizace
Speciální užití - záchranná CD, BusyBox v embedded zařízeních (NAS a další síťová zařízení, Android, …)
Diverzita grafických nadstaveb vs. podobnost v příkazové řádce
Instalace, diskové oddíly, jejich vytváření a kontrola
Souborové systémy, struktura adresářů Linuxu, jména souborů a jejich konvence, kde se skrývá konfigurace a data
Oprávnění souborů, spustitelnost, ACL, další atributy
Root a běžní uživatelé, sudo
Proč je důležitý dobrý textový editor, jaké jsou možnosti, kódování znaků, rozdíly mezi operačními systémy
Příkazová řádka: Shell - Bash a ti druzí
Proměnné, cesta ke spustitelným souborům, aliasy, úpravy chování příkazové řádky
Terminály a jejich emulátory, vícenásobné přihlášení, virtuální terminály, přihlášení ke vzdálenému serveru
Správa software z příkazové řádky (zypper, rpm, apt, aptitude), spuštění skriptu, kompilace
Spouštění Java aplikací
Základní informace o systému, volné místo, zjištění typu souboru, hardware
Uživatelé, změna hesla, správa služeb (SystemD a jiní)
Práce s textem - čtení, editace, vybrání řádku nebo sloupce, spojování souborů, zápis do nových souborů
Běžné textové editory v příkazové řádce: Nano, MC, Vim, Emacs
Porovnání textových souborů, hledání změn
Zástupné a speciální znaky, escapování, regulární výrazy
Aby úloha běžela i po odhlášení - screen
Práce s dokumentací a hledání řešení
Připojení souborových systémů, jejich vytváření a kontrola
Psaní jednoduchých skriptů - proměnné, podmínky, větvení, cykly, vstupní parametry, návratové hodnoty
Paralelizace úloh - využití vícejádrových procesorů
Přístup k MetaCentru CESNETu
Spouštění úloh v MetaCentru, základní skript
Spuštění interaktivních a grafických úloh v MetaCentru
Přehled dalších nabídek CESNETu
Základní sledování stavu sítě
Sledování historických verzí souborů (Git)
A další... další témata postupně přibudou.
Zápočty budou probíhat poslední den, případně po individuální domluvě. Bude tam prostor i pro konzultace specifických problémů a otázek jednotlivých účastníků.
Poslední úprava: Zeisek Vojtěch, Mgr., Ph.D. (11.11.2021)
List of topics (might be edited according to wishes of participants):
What it is UNIX, Linux, GNU, what are relationships among them, architecture of the system, kernel
What does it mean "open-source", which licenses are in use, what is philosophy, trade model
What are differences among various Linux distributions, how to find order in them, how to choose
Linux graphical interface - graphical usage of Linux
Trying using live CD/USB or virtualisation
Special uses - rescue CD, BusyBox in embedded devices (NAS and another network devices, Android, …)
Diversity of graphical interfaces vs. similarity in command line
Installation, disk partitions, creating and control
File systems, directory structure in Linux, file names and their conventions, where are configuration files and data
File permissions, executability, ACL, another atributes
Root and normal users, sudo
Why it is important good text editor, what are possibilities, character encoding, differences among operating systems
Command line: Shell - Bash and the others
Variables, path to executable files, aliases, configuration of command line behavior
Terminals and their emulators, multiple login, access to remote server
Software management from command line (zypper, rpm, apt, aptitude), launching of the script, compilation
Launching of Java applications
Basic information about the system, free space, detection of the type of the file, hardware
Users, change of password, services management (SystemD and others)
Move within directory structure, searching
Automated launching of tasks
Viewing of processes and their killing
Magic TAB key, history of commands, chaining of commands
Standard input and output, redirects, pipes
Work with text - reading, edition, selection of particular lines or columns, merging of files, writing into new files
Common text editors in command line: Nano, MC, Vim, Emacs
Comparison of text files, viewing changes
Wildcards and special characters, escaping, regular expressions
How to keep task running after login off - screen
Work with documentation and searching for solutions
Launching of the tasks in MetaCentrum, basic script
Launching of interactive and graphical tasks in MetaCentrum
List of another offers of CESNET
Basic monitoring of network
Tracing historical versions of files (Git)
And more... more topics will be added...
Exams will take place last day, or any time in the future according to individual arrangement. There will also be room for consultations of specific issues of individual participations.
Poslední úprava: Zeisek Vojtěch, Mgr., Ph.D. (11.11.2021)
Vstupní požadavky -
Nebát se příkazové řádky. :-)
Na kurz potřebujete
Jakoukoliv motivaci používat příkazovou řádku (např. potřebu zpracovávat data na linuxovém serveru, MetaCentru apod.).
Funkční připojení k Wi-Fi. Buď Eduroam (nastavte si jej pomocí fakultních nebo doporučených obecných instrukcí) nebo můžete v přihlášce požádat o dočasné jméno a heslo.
Jakýkoliv počítač s Linuxem - ať už samotný Linux, dualboot, virtualizaci (pro výuku je připraven obraz pro VirtualBox), popřípadě Cygwin nebo linuxový subsystém ve Windows 10, je to jedno. Nebo jiný UNIX (osX apod.). K dispozici bude výukový server, ke kterému se účastníci budou připojovat. Může tedy stačit používat Putty a připojení k tomuto serveru, nicméně to nebude umožňovat vyzkoušet si úplně všechno.
Poslední úprava: Zeisek Vojtěch, Mgr., Ph.D. (12.10.2022)
Don't be afraid of command line. :-)
For course You need
Any motivation to use command line (e.g. need to process large data on Linux server, e.g. on MetaCentrum).
Working Wi-Fi. Eduroam (set it up using faculty or recommended general instructions) or in application form You can ask for temporary password.
Any computer with Linux - Linux-only machine, dualboot, virtualisation (image for VirtualBox is be available), or Cygwin or Linux subsystem in Windows 10, it doesn’t matter. Or another UNIX (osX and so on.). There will be a training server where we will connect to. It can be enough just to use Putty and login from Windows to this server, but it won’t be possible to do all the exercises on the server.
Poslední úprava: Zeisek Vojtěch, Mgr., Ph.D. (12.10.2022)