ELEC-A7310 - Linux Basics, Lectured in English, 11.9.2023-27.9.2023
This course space end date is set to 27.09.2023 Search Courses: ELEC-A7310
Topic outline
-
Linux Basics course will be arranged twice in Fall 2023:
- Period I course is teach in English and period II course will be in Finnish. This course is mainly for new Communications Engineering students who have note yet done Linux basics course. This MyCourses workspace is used in period I course.
- Please note: BSc students from Computer science and data science and masters students from CS, Game, HCI, Macadamia, Security and SSE majors cannot include this course to their curriculum.
You will need an own laptop on which Linux will be installed as an virtual machine on the first exercise session.Also working Internet connection is needed to participate in exercises and exam.- First exercise session: Monday 11.9.2023, 16:15-19:00 in hall U3 (Otakaari 1). Guided instructions to install VirtualBox and Debian Linux as a virtual machine.
- Second exercise session: Wednesday 13.9.2023, 16:15-19:00 in hall T2 (Konemiehentie 2, Tietotekniikka-talo)
- Other exercises: Mon and Wed at weeks 38-39
- Course Exam 4.10.2023, 16:30-19:30 in hall T1. More Info will be sent via course announcements later.
Instructions:- Apple M1-prosessor machines: Please load UTM https://mac.getutm.app/ ja ARM64 image debian-12.1.0-arm64-netinst.iso
- Apple Mac OS X (non-M1) machines: if kernel-module is not working, check instructions from here: https://cs.hofstra.edu/docs/pages/guides/vbox_mac.html
During the exercise you will learn how to install Linux (Debian) as a virtual machine to your PC/Laptop. To speed up installation process please download following before exercise:
- Download VirtualBox 7.0.10 platform
package suitable to your PC/laptops OS
- Debian net install image “firmware-12.1.0-amd64-netinst.iso” found here: debian-12.1.0-amd64-netinst.iso (mirrored from cdimage.debian.org)
Please also verify that your computer supports virtualization and that it's enable. Check for example the following page:
If you're running Windows 10, check from Task Manager, from Performance tab that "Virtualization" is enabled. If not, check the virtualization settings from BIOS. See the following instructions on how to do it:
If you're running Windows 10 or 11 with Windows Services for Linux 2 (WSL2), you may need to disable it to be able to use Virtualbox. Both Virtualbox and WSL2 use the virtualization hardware and the different softwares don't co-operate very well.
Due to Oracle licensing issues, you cannot access download.virtualbox.org from the university networks. We are using Virtualbox solely for educational purposes and we advise against installing "extensions" available from Oracle, as they may have more restrictive license.
Course material:
- An unofficial course book is here: https://debian-handbook.info/browse/stable/
- You can download a cheat sheet at the Materials page
- The assignments will be published during the course at the Assignments page
In case you need to ask about course practicalities (such as SISU registrations etc.), please email to mika.nupponen@aalto.fi.
Requirements for the practical usage test of Linux Basics course:
- Using commands and their parameters that are in the Linux command cheat sheet provided in Materials. The cheat sheet and man pages are available during the final practical test.
- Usage of a text editor (e.g., Nano, Vim)
- Knowledge of Linux directory structure (having an idea what is where) and moving around in directories (proc, etc, home)
- Searching and manipulation and viewing data on command line (grep, awk, sort and less).
- Installing and removing software through package management (Debian apt), resolving dependencies
- Starting and stopping services
- System logs: What logs are available, where are they and how are they used for checking the system and troubleshooting
- Configuring network settings and using basic network diagnostics (ping, traceroute, traffic capture)
- SSH: remote connections, file transfer, tunneling, public key authentication
- Basic usage of Screen
- Using programming tools, git (e.g., searching program code, changing a specific line of a simple program while following instructions, compilation and testing the result. Committing code to a local repository.)
- Shell environment variables: listing & editing ( $PATH )
- Knowing how to make script files with if/then/else and for loops