Linux System Administrator

Prerequisite: None

Equpment:
- Desktop
- Debian: Ubuntu
- RPM: Centos, OpenSUSE
- Fast internet connection

Course Duration:  35 hours
                                5 days training
                                9am - 4pm

Course Schedule: Every Saturday
                                Every Sunday

Inclusion (face-to-face training): Lunch Meal
                                                            Certificate of completion
                                                            Training handout
                                                            Review material for exam
                                                            Free flowing coffee

Inclusion (Online Training):  Certificate of completion
                                                     Training handout (soft copy)
                                                     Review material for exam

Day 1

101.1 Determine and configure hardware settings
• /sys/
• /proc/
• /dev/
• modprobe
• lsmod
• lspci
• lsusb

101.2 Boot the system
• dmesg
• journalctl
• BIOS
• UEFI
• bootloader
• kernel
• initramfs
• init
• SysVinit
• systemd

101.3 Change runlevels / boot targets and shutdown or reboot shutdown
• init
• /etc/init.d/
• telinit
• systemd
• systemctl
• /etc/systemd/
• /usr/lib/systemd/
• wall

102.1 Design hard disk layout
• / (root) filesystem
• /var filesystem
• /home filesystem
• /boot filesystem
• EFI System Partition (ESP)
• swap space
• mount points
• partitions

102.2 Install a boot manager
• menu.lst, grub.cfg and grub.conf
• grub-install
• grub-mkconfig
• MBR

102.3 Manage shared libraries
• ldd
• ldconfig
• /etc/ld.so.conf
• LD_LIBRARY_PATH

102.4 Use Debian package management
• /etc/apt/sources.list
• dpkg
• dpkg-reconfigure
• apt-get
• apt-cache

102.5 Use RPM and YUM package management
• rpm
• rpm2cpio
• /etc/yum.conf
• /etc/yum.repos.d/
• yum
• zypper

103.1 Work on the command line
• bash
• echo
• env
• export
• pwd
• set
• unset
• type
• which
• man
• uname
• history
• .bash_history
• Quoting


Day 2

103.2 Process text streams using filters
• bzcat
• cat
• cut
• head
• less
• md5sum
• nl
• od
• paste
• sed
• sha256sum
• sha512sum
• sort
• split
• tail
• tr
• uniq
• wc
• xzcat
• zcat

103.3 Perform basic file management
• cp
• find
• mkdir
• mv
• ls
• rm
• rmdir
• touch
• tar
• cpio
• dd
• file
• gzip
• gunzip
• bzip2
• bunzip2
• xz
• unxz
• file globbing

103.4 Use streams, pipes and redirects
• tee
• xargs

103.5 Create, monitor and kill processes
• &
• bg
• fg
• jobs
• kill
• nohup
• ps
• top
• free
• uptime
• pgrep
• pkill
• killall

103.6 Modify process execution priorities
• nice
• ps
• renice
• top

103.7 Search text files using regular expressions
• grep
• egrep
• fgrep
• sed
• regex(7) 

103.8 Basic file editing
• vi
• /, ?
• h,j,k,l
• i, o, a
• d, p, y, dd, yy
• ZZ, :w!, :q!
• EDITOR




Day 3

104.1 Create partitions and filesystems
• fdisk
• gdisk
• parted
• mkfs
• mkswap

104.2 Maintain the integrity of filesystems
• du
• df
• fsck
• e2fsck
• mke2fs
• tune2fs

104.3 Control mounting and unmounting of filesystems
• /etc/fstab
• /media/
• mount
• umount
• blkid
• lsblk

104.4 Removed

104.5 Manage file permissions and ownership
• chmod
• umask
• chown
• chgrp

104.6 Create and change hard and symbolic links
• ln
• ls

104.7 Find system files and place files in the correct location
• locate
• updatedb
• whereis
• which
• type
• /etc/updatedb.conf

105.1 Customize and use the shell environment
• .
• source
• /etc/bash.bashrc
• /etc/profile
• env
• export
• set
• unset
• ~/.bash_profile
• ~/.bash_login
• ~/.profile
• ~/.bashrc
• ~/.bash_logout
• function
• alias

105.2 Customize or write simple scripts
• for
• while
• test
• if
• read
• seq
• exec
• ||
• &&





Day 4

107.1 Manage user and group accounts and related system files
• /etc/passwd
• /etc/shadow
• /etc/group
• /etc/skel/
• chage
• getent
• groupadd
• groupdel
• groupmod
• passwd
• useradd
• userdel
• usermod

107.2 Automate system administration tasks by scheduling jobs
• /etc/cron.{d,daily,hourly,monthly,weekly}/
• /etc/at.deny
• /etc/at.allow
• /etc/crontab
• /etc/cron.allow
• /etc/cron.deny
• /var/spool/cron/
• crontab
• at
• atq
• atrm
• systemctl
• systemd-run  

107.3 Localisation and internationalisation
• /etc/timezone
• /etc/localtime
• /usr/share/zoneinfo/
• LC_*
• LC_ALL
• LANG
• TZ
• /usr/bin/locale
• tzselect
• timedatectl
• date
• iconv
• UTF-8
• ISO-8859
• ASCII
• Unicode

108.1 Maintain system time
• /usr/share/zoneinfo/
• /etc/timezone
• /etc/localtime
• /etc/ntp.conf
• /etc/chrony.conf
• date
• hwclock
• timedatectl
• ntpd
• ntpdate
• chronyc
• pool.ntp.org

108.2 System logging
• /etc/rsyslog.conf
• /var/log/
• logger
• logrotate
• /etc/logrotate.conf
• /etc/logrotate.d/
• journalctl
• systemd-cat
• /etc/systemd/journald.conf
• /var/log/journal/


Day 5

108.3 Mail Transfer Agent (MTA) basics
• ~/.forward
• sendmail emulation layer commands
• newaliases
• mail
• mailq
• postfix
• sendmail
• exim

108.4 Manage printers and printing
• CUPS configuration files, tools and utilities
• /etc/cups/
• lpd legacy interface (lpr, lprm, lpq)

109.1 Fundamentals of internet protocols
• /etc/services
• IPv4, IPv6
• Subnetting
• TCP, UDP, ICMP

109.2 Persistent network configuration
• /etc/hostname
• /etc/hosts
• /etc/nsswitch.conf
• /etc/resolv.conf
• nmcli
• hostnamectl
• ifup
• ifdown

109.3 Basic network troubleshooting
• ip
• hostname
• ss
• ping
• ping6
• traceroute
• traceroute6
• tracepath
• tracepath6
• netcat
• ifconfig
• netstat
• route

109.4 Configure client side DNS
• /etc/hosts
• /etc/resolv.conf
• /etc/nsswitch.conf
• host
• dig
• getent

110.1 Perform security administration tasks
• find
• passwd
• fuser
• lsof
• nmap
• chage
• netstat
• sudo
• /etc/sudoers
• su
• usermod
• ulimit
• who, w, last
• /etc/nologin
• /etc/passwd
• /etc/shadow