Course of work in Linux command line not only for MetaCentrum 2017
Don’t be afraid of command line! It is friendly and powerful tool. Practically identical is command line also in Mac OS X, BSD and another UNIX-based systems, not only in Linux. Basic knowledge of Linux is not conditional. Course will be taught in Linux, but most of the point are applicable also for another UNIX systems like Mac OS X. Knowledge of Linux/UNIX is useful e.g. for working with molecular and another data. MetaCentrum is service provided by CESNET allowing access to huge computational capacity. If there is at least one participant not speaking Czech, the course will be in English.
I'd be glad if participants could fill a short questionary which will help me with preparation of the course and communication.
List of topics
- 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
- 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
- Mounting of file systems, creations and control
- Writing of easy scripts - variables, conditions, forks, cycles, input parameters, exit values
- Parallelization of tasks - use of multicore CPUs
- Access to MetaCentrum of CESNET
- 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
- And more...
For course You need
- Working Wi-Fi. Eduroam or in application form You can ask for temporary password.
- Any computer with Linux -- Linux-only machine, dualboot, virtualisation, or Cygwin, it doesn't matter. Or another UNIX (Mac OS X and so on.). I have at least one computer with Linux available. In case of questions, ask. 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.
Changes from last year (based on feedback of participants)
- Enlarged chapter about scripting
In case of any questions, wishes, comments just ask. Using comment form below, by mail or so on.