Fall 2008 SYA710 Weekly Schedule
The tentative weekly schedule shown here is subject to change.
Contents
- 1 Week 1 (Sept 1) - Intro to SYA710 / Installing Linux
- 2 Week 2 (Sept 8) - File Systems and Logical Volume Management
- 3 Week 3 (Sept 15) - Linux Startup
- 4 Week 4 (Sept 22) - Linux Package Management
- 5 Week 5 (Sept 29) - Building a New Kernel
- 6 Week 6 (Oct 6) - Automated Installations
- 7 Week 7 (Oct 13) - Midterm Test
- 8 FSOSS and Break Week (Oct 20)
- 9 Week 8 (Oct 27) - Virtual Machines
- 10 Week 9 (Nov 3) - VM Management
- 11 Week 10 (Nov 10) - Creating Custom Spins
- 12 Week 11 (Nov 17) - More Spinning
- 13 Week 12 (Nov 24) - Making Live CDs
- 14 Week 13 (Dec 1) - Exam review
- 15 Exam Week (Dec 8)
Week 1 (Sept 1) - Intro to SYA710 / Installing Linux
- Course introduction
- Introduction to Open Source and Linux
- Introduction to our labs
- Lab T2107 - data recovery cards
- Activities for this week
- Set up your accounts as described on the LUX Communication page.
- Complete the SYA710 Lab #0 and blog about the experience.
- Lab #0 is due before midnight Wednesday, September 10, 2008
Week 2 (Sept 8) - File Systems and Logical Volume Management
- Activities for this week
- Complete the SYA710 Lab01 and blog about the experience.
- Lab01 is due before midnight Wednesday, September 17, 2008
- Concepts/Commands learned/used in this week's lecture
- File System: A way to organize data for efficient and easy access
- Containers: Objects (partitions, files, volumes) that hold file systems
- Virtual File System: Allows transparent access to files on different file systems
- Commands: mkfs, fsck, fdisk, mount, umount, e2label, resize2fs
- Using UUIDs (universally unique identifiers)
- 128-bit numbers make hard disk management easier
- add UUID= entry in /etc/fstab
- Linux file systems support UUIDs, Windows not so much
- Commands: blkid, vol_id, uuidgen, tune2fs, findfs
- Working with Logical Volumes (LVM)
- Physical Volumes (eg partitions) are joined into Volume Groups
- Logical Volumes are drawn from Volume Groups
- Commands: pvcreate, vgcreate, lvcreate
Week 3 (Sept 15) - Linux Startup
- Activities for this week
- Complete the SYA710 Lab02 and blog about the experience.
- Lab02 is due before midnight Wednesday, September 24, 2008
- Concepts/Commands learned/used in this week's lecture
- Linux Boot Process
- Power on - Code in ROM BIOS finds and loads 1st stage loader from boot device (MBR)
- 1st stage loader finds and loads 2nd stage loader (GRUB)
- 2nd stage loader finds and loads Linux kernel and initial ram disk
- kernel checks the system hardware, mounts the root device and loads the needed kernel modules
- kernel runs init program (PID=1)
- Init Process (System V)
- init reads /etc/inittab to get default run level
- init runs rc
- rc runs runlevel scripts
- Init Process (Upstart)
- init gets jobs/tasks from /etc/events.d/
- init emits startup event to start system
- init waits for more events
- fully compatible with System V
- Linux Boot Process
Week 4 (Sept 22) - Linux Package Management
Task | Ubuntu - apt | Opensuse - zypp | Fedora - yum/pkcon |
---|---|---|---|
Install a package | apt-get install <pkg> | zypper install <pkg> | yum
install <pkg> pkcon install <pkg> |
Remove a package | apt-get remove <pkg> | zypper remove <pkg> | yum
erase <pkg> pkcon remove <pkg> |
Update package list | apt-get update | zypper refresh | yum check-update |
Update system | apt-get upgrade | zypper update | yum
update pkcon update-system |
List all repositories | cat /etc/apt/sources.list | zypper repos | yum repolist |
Add a repository | (edit /etc/apt/sources.list) | zypper addrepo <path> <name> | (add <repo> to /etc/yum.repos.d/) |
Remove a repository | (edit /etc/apt/sources.list) | zypper removerepo <name> | (remove <repo> from /etc/yum.repos.d/) |
Search for a package | apt-cache search <pkg> | zypper search <pkg> | yum
search <pkg> pkcon search details <pkg> |
List
all installed packages pkcon get-packages |
dpkg -l | rpm -qa | rpm -qa |
Week 5 (Sept 29) - Building a New Kernel
- download source from kernel.org
- unpack source
- tar xvjf linux-2.6.26.tar.bz2
- create configuration (.config) file
- cd linux-2.6.26
- cp /proc/config.gz .
- gzip -d config.gz
- mv config .config
- make oldconfig
- customize your configuration
- make menuconfig
- compile kernel and modules
- make
- copy kernel image to /boot
- cp arch/x86/boot/bzImage /boot/vmlinuz-2.6.26
- copy system map to /boot
- cp System.map /boot/System.map-2.6.26
- install the modules
- make modules_install
- create initial ram disk image
- mkinitrd -k vmlinuz-2.6.26 -i initrd-2.6.26
- update GRUB
- vi /boot/grub/menu.lst
- reboot