UCB: Sysadmin DeCal
Course Introduction
- Offered by: UCB
- Prerequisites: None
- Programming Language: Shell
- Difficulty: 🌟🌟🌟
- Class Hour: 20 hours
This is an introductory course on Linux from UCB, which I find more systematic and clearer than MIT's similarly aimed open course, Missing Semester. This is the main reason I recommend it. While Missing Semester seems more like a course for filling gaps for students who have started programming but haven't systematically used these tools, DeCal is more suitable for absolute beginners. The twelve-week course covers Linux basics, shell programming (including tmux and vim), package management, services, basic computer networks, network services, security (key management), Git, Docker, Kubernetes, Puppet, and CUDA. It's ideal for newcomers to understand and get started with the Linux environment.
A slight drawback is that some course assignments require operations on remote servers, like exercises on ssh, which need UCB internal account access. However, most assignments can be practiced by setting up a virtual machine and using tools like Xshell or directly using a Linux desktop version. After completing the full course and assignments, you should have a basic understanding of Linux.
To compensate for the inability to use remote servers and to familiarize with the Linux command line, I recommend bandit. Bandit is a Wargame from OverTheWire, providing a free practice range for CTF enthusiasts. The first 15 levels of bandit are basic Linux operations without any CTF knowledge. These exercises perfectly supplement the parts of DeCal that are inaccessible to external students (mainly remote connections, file permissions, etc.).
Course Resources
- Course Website: Official Site
- Course Videos: Available on the official course website, Bilibili has an incomplete translation that only includes the first part.
- Course Textbook: No specified textbook, but each week's labs contain enough reading material for in-depth study.
- Course Assignments: Available on the official course website.