# Linux course syllabus --- ## Beginner / Session 01 ### Introduction * Unix philosophy: Do One Thing and Do It Well (DOTADIW) * How deep is deep enough * Style is made of certain conscious choices * Issues: Speed(Google), Concentration(Questions), Boundaries(Sysadmin, DevOps, Programmer) * Note-taking: Zettelkasten, Second Brain, Obsidian, TiddlyWiki, DokuWiki * Muscle memory * Dynamic syllabus * Linux is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds * https://distrowatch.com : Debian/Ubuntu/RedHat/CentOS/Fedora/ArchLinux/Manjaroi/Mint/Kali/Slackware * http://lxer.com : Linux News ### Installation * Debian * amd64 / i386 / netinstall * LVM / RAID / Encryption * SSH ### Quick Tour * Login * logout / exit / <ctrl+d> * clear / <ctrl+l> * reboot / poweroff * passwd * Virtual Terminals: Alt-F1, Alt-F2, ... * Shift-PgUp, Shift-PgDn * ssh client / putty * ls -lha * pwd * Home Directory * mkdir / rmdir * cd / cd .. / cd - / cd ~ * touch * file * Reuse previous commands * Using TAB for completion * Relative / Absolute Addresses * Redirection: send output to a file or read a file as standard input to a command > * echo "string" > filename * rm -i -rf * cp -i -rv * mv -i * alias / unalias * wild cards * ? * cat / more / less * head / tail -f * ln -s * man * Shell Variables (SHELL, HOME, PATH) * which / type / enable -a * find * locate / updatedb * grep * ps -A / kill / killall * Piping: pass standard output as standard input to another command * chown , /etc/passwd * chmod * date, cal / unix timestamp * uptime / free ### Editing text files: vi * Command mode(ESC) * Insert mode(i) * Command line mode(:) * :w :q :wq :q! :w filename * copy/cut/paste/visual y d p v * search forward/backward * h j k l $ 0 G x o A ### Compression * tar zcvf file.tar.gz directory * tar xf file.tar.gz * gzip / gunzip / zcat / zless / zgrep * tar jcf file.tar.bz directory * tar xf file.tar.bz * bzip2 / bunzip2 / bzcat / bzless / bzgrep * tar Jcf file.tar.xz directory * tar xf file.tar.xz * xz / unxz / xzcat / xzless / xzgrep ### Network Settings * ip address add 192.168.10.100/24 dev ens192 * ip address show * ip -br -c a s * ifconfig * ip route add default via 192.168.10.1 * ip route del default * ip route show * ip -c r s * route -n * ping * /etc/network/interfaces <code> auto lo iface lo inet loopback auto ens192 iface ens192 inet static address 192.168.10.100/24 gateway 192.168.10.1 iface ens192 inet6 static address 2a0e:0:1:b:109::/64 gateway 2a0e:0:1:b::1
nameserver 85.15.1.14 nameserver 85.15.1.15
### Package Management
deb http://deb.debian.org/debian bullseye main contrib non-free deb http://deb.debian.org/debian bullseye-updates main contrib non-free deb http://deb.debian.org/debian bullseye-backports main contrib non-free deb http://security.debian.org/debian-security bullseye-security main contrib non-free deb-src http://deb.debian.org/debian bullseye main contrib non-free deb-src http://deb.debian.org/debian bullseye-updates main contrib non-free deb-src http://deb.debian.org/debian bullseye-backports main contrib non-free deb-src http://security.debian.org/debian-security bullseye-security main contrib non-free
</code>