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
- Activity for this week
Each student should add one correct item to the table below and email your teacher detailing your contribution. Don't forget your Seneca ID in the email. This will count as Lab 03.
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 pkcon get-updates |
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 | dpkg -l | zypper search i * | rpm
-qa pkcon get-packages |
Display dependency information | pkcon get depends <packagename> | - | yum deplist <packagename> |
Look up for a specific package information | - | - | yum info <packagename> pkcon get description <package_id> |
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
How to boot up Fedora 9 from /dev/sdb in room T2107
These instructions assume that Fedora 9 has been installed on /dev/sdb with the following partition setup:
/dev/sdb1 = /boot
/dev/sdb2 = /
/dev/sdb3 = swap
/dev/sdb4 = extended
/dev/sdb5 = /home
Boot up the system and when the data recovery card displays a menu of OS choices, choose Fedora 8. A boot screen will be displayed with a 3 second countdown before booting. Press the <ESC> key before the countdown reaches 0. Another menu is displayed listing two Fedora 8 kernels to boot from:
- Fedora (2.6.24.5-85.fc8)
- Fedora (2.6.24.4-64.fc8)
Do not choose either of these. Instead press the "c" key to display a command line. Issue the following commands:
root (hd1,0)
kernel /vmlinuz-2.6.26.5-45.fc9.i686 root=/dev/sdb2
initrd /initrd-2.6.26.5-45.fc9.i686.img
boot
Fedora 9 will now boot.