Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/livialima/linuxupskillchallenge
Learn the skills required to sysadmin a remote Linux server from the commandline.
https://github.com/livialima/linuxupskillchallenge
linux linux-commands
Last synced: 3 months ago
JSON representation
Learn the skills required to sysadmin a remote Linux server from the commandline.
- Host: GitHub
- URL: https://github.com/livialima/linuxupskillchallenge
- Owner: livialima
- License: other
- Fork: true (snori74/linuxupskillchallenge)
- Created: 2021-02-14T14:09:15.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2024-09-02T01:13:13.000Z (4 months ago)
- Last Synced: 2024-09-25T22:08:19.655Z (3 months ago)
- Topics: linux, linux-commands
- Language: HTML
- Homepage: https://linuxupskillchallenge.org/
- Size: 1.92 MB
- Stars: 1,730
- Watchers: 39
- Forks: 225
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
This includes all the source material for the 20 lessons of what was previously a commercial online Linux server admin course - now free for you to learn with!
*If you spot any typos or "dead links" simply [raise an issue](https://github.com/livialima/linuxupskillchallenge/issues/new/choose).*
* [Website of the course](https://LinuxUpskillChallenge.org)
* [Full lesson source](https://github.com/livialima/linuxupskillchallenge)
* [Complementary video playlists](https://www.youtube.com/@livia2lima/search?query=linuxupskillchallenge)
* [Monthly lessons on Lemmy](https://programming.dev/c/linuxupskillchallenge)
* [Monthly lessons on Reddit](https://www.reddit.com/r/linuxupskillchallenge/)
* [Chat with Discord](https://discord.gg/linux-upskill-challenge-682046666928685068)## READ THIS FIRST!
[HOW THIS WORKS & FAQ](docs/how-this-works.md)## Table of Contents
* [Day 0](docs/00.md) - **Creating Your Own Server**: how to setup your lab in AWS, Azure, Google Cloud, Digital Ocean and on a local server
* [Day 1](docs/01.md) - **Get to know your server**: Starting with `ssh`-ing in and some simple commands like: `ls`, `uptime`, `free`, `df -h`, `uname -a`. Extensions on doing passwordless login with public keys and and an `ssh` config file.
* [Day 2](docs/02.md) - **Basic navigation**: Basic navigation, the "man" pages, file hierarchy
* [Day 3](docs/03.md) - **Power trip!**: Working with `sudo`, `uptime`, `timezones`, changing your hostname
* [Day 4](docs/04.md) - **Installing software, exploring the file structure**: Using 'apt' to find and install software. Use of `mc` to explore the filesystem. Looking at the contents of: `/etc/passwd`, `/etc/ssh/sshd_config` and `/var/log/auth.log`
* [Day 5](docs/05.md) - **More or less...**: Using `more`, `less` and navigating in these. Dotfiles, history, tab completion, and using the `nano` txt editor
* [Day 6](docs/06.md) - **Editing with "vim"**: Learning `vim`, the minimal knowledge, but also via `vimtutor`
* [Day 7](docs/07.md) - **The server and its services**: Installing Apache2, stopping and starting, altering the content, reading logs
* [Day 8](docs/08.md) - **The infamous "grep" and other text processors**: Hands-on with text tools like `grep`, `cat`, `more`, `less`, `cut`, `awk` and `tail` - and piping of course. (and a wave to `awk` and `sed`)
* [Day 9](docs/09.md) - **Diving into networking**: Looking at open ports with `ss`, and a nod to `netstat`, install `nmap` and test. Install `ufw`, set up, enable and test etc. Discuss security resonsibilities as the sysadmin.
* [Day 10](docs/10.md) - **Scheduling tasks**: Covering `cron`, `at`, and systemd timers
* [Day 11](docs/11.md) - **Finding things...**: Finding things with: `locate`, `find`, `grep`, `which`
* [Day 12](docs/12.md) - **Transferring files**: SFTP, the technology, clients, and copying up and down
* [Day 13](docs/13.md) - **Users and Groups**: Using `adduser`, `visudo` to setup up a restricted "helper" to manage our host
* [Day 14](docs/14.md) - **Who has permission?**: Permissions, users, groups, (ACLS and SELinux in the Extension)
* [Day 15](docs/15.md) - **Deeper into repositories...**: Repositories in more detail, how to enable "Multiverse", the role of PPAs in Ubuntu, enabling and installing from them
* [Day 16](docs/16.md) - **Archiving and compressing**: Understanding and using `tar` and `gzip`
* [Day 17](docs/17.md) - **Build from the source**: Installing from source. Discussion, using `wget` to get a tarball, `tar` to extract and then configure, make and install. Discussion of security, maintenance issues.
* [Day 18](docs/18.md) - **Logs, monitoring and troubleshooting**: Log management and rotation, `logrotate`
* [Day 19](docs/19.md) - **Inodes, symlinks and other shortcuts**: Inodes, hard links symlinks and `stat`
* [Day 20](docs/20.md) - **Scripting**: Understanding how scripting work in Linux, the shebang, permissions and $PATH. A couple of simple sample scripts based on the filtering of logs we've been doing. Resources to explore further.
* [Day 21](docs/21.md) - **What's next?**: Closing the course with some suggestions.*You are free to use this under the terms of the license, but feel free to donate or contribute to keep the challenge running:*