The Wakes Book

Wakes GNU/Linux 0.3

Guillaume Kielwasser

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".

Revision History
Revision 0.109 Sept 2008G. Kielwasser
Initial dump
Revision 0.219 Oct 2009G. Kielwasser
Initial write
Revision 0.306 Aug 2010G. Kielwasser
Main contribution
Revision 0.406 Aug 2012G. Kielwasser
Fit installation of gnuwakes 0.2 build number 025
Revision 0.509 Aug 2013G. Kielwasser
Added documentation on how to create the initramfs; Added details on the kernel configuration; Modified installation guide to fir build number 42
Revision 0.627 May 2014G. Kielwasser
Updated to fit Wakes version 0.3

About this document

Understanding this document assume a certain knowledge of UNIX administration. It can serve as reminder of infrequently used admin commands, but not as novice guidance for beginners.


Table of Contents

I. Developer's Reference Manual
1. The Linux Kernel
1. Configuration
1.1. Generic configuration
1.1.1. Local version
1.1.2. Default hostname
1.1.3. swap
1.1.4. Stack utilization messages
1.1.5. Kernel .config
1.1.6. Initial RAM filesystem and RAM disk
1.1.7. PAE
1.1.8. ACPI
1.1.9. SysRq
1.1.10. kexec
1.1.11. kdump
1.1.12. SMP
1.1.13. Big SMP
1.1.14. Maximum number of CPUs
1.2. Control Groups
1.2.1. Freezer cgroup subsystem
1.2.2. Device controller for cgroups
1.2.3. Cpuset support
1.2.4. Simple CPU accounting cgroup subsystem
1.2.5. Resource counters
1.2.6. Enable perf_event per-cpu per-container group (cgroup) monitoring
1.2.7. Group CPU scheduler
1.2.8. Block IO controller
1.3. Virtualization
1.3.1. KVM host
1.3.2. VM guest
1.3.2.1. Paravirtualization
1.3.2.2. KVM guest support
1.3.2.3. Lguest guest support
1.3.2.4. Xen guest support
1.3.3. Virt I/O support
1.3.3.1. PCI driver for virtio devices
1.3.3.2. Virtio balloon driver
1.3.3.3. Virtio block driver
1.3.3.4. Virtio network driver
1.3.3.5. Virtio console
1.3.3.6. Virtio Random Number Generator support
1.4. Multiple devices driver support
1.4.1. RAID support
1.4.1.1. Linear (append) mode
1.4.1.2. RAID-0 (striping) mode
1.4.1.3. RAID-1 (mirroring) mode
1.4.1.4. RAID-10 (mirrored striping) mode
1.4.1.5. RAID-4/RAID-5/RAID-6 mode
1.4.1.6. Faulty test module for MD
1.4.2. Block device as cache
1.4.3. Device Mapper support
1.4.3.1. Crypt target support
1.4.3.2. Snapshot target
1.4.3.3. Thin provisioning target
1.4.3.4. Cache target
1.4.3.5. Mirror target
1.4.3.6. RAID 1/4/5/6/10 target
1.4.3.7. Zero target
1.4.3.8. Multipath target
1.4.3.9. I/O delaying target
1.4.3.10. Flakey target
1.5. Network
1.5.1. VLAN Support
1.5.2. Bridge Support
1.5.3. Universal TUN/TAP device driver support
1.5.4. Bonding Support
1.5.5. RealTek RTL-8139 C+ (KVM default NIC)
1.6. Filesystems
1.6.1. EXT4
1.6.2. ReiserFS
1.6.3. JFS
1.6.4. XFS
1.6.5. Btrfs
1.6.6. NTFS
1.6.7. Inotify
2. Check the configuration
3. Compilation
4. Installation
2. Initramfs
1. Using the initial RAM disk (initrd)
2. Compressed cpio images
3. Creating an initramfs
3.1. get binary dependency
3.2. directories
3.3. klibc
3.4. files
3.5. keymaps
3.6. libs
3.7. links
3.8. modules
3.9. udev rules
3.10. id and gid
3.11. profile
3.12. init
3.13. create the compressed image
3.14. test the new initramfs
3. ISO Managment
1. ISO Content
1.1. isolinux
1.2. depot
2. ISO Creation
2.1. Full ISO creation
2.2. Slim ISO creation:
4. Wakes installer
1. Installer call
2. Install process description
5. Package manager
1. Files and directories
2. Create a package
6. Xorg build
II. Installation Guide
7. Download
8. Installation
1. Boot on the CD
2. Choose the keyboard layout
3. Start the install process
4. Hard disk selection
5. Partitioning strategy
5.1. Manual partitioning
5.1.1. Create the /boot partition
5.1.2. Create the rootvg partition
5.1.3. Write the partition table on the disk
5.1.4. Select the partition where to create the rootvg
5.1.5. Select the /boot partition
6. TimeZone selection
6.1. Continent
6.2. Country
6.3. Confirm time
7. Choose the software depot
8. Network configuration
8.1. Manual IP configuration
8.1.1. IP
8.1.2. Netmask
8.1.3. Gateway
9. Select the software categories
10. Hostname
11. root password
12. Installation
13. Reboot
9. Post installation
1. Resolvers
III. Administrator's Guide
10. Grub
11. LVM
12. Console
1. Modify keyboard layout on the fly
2. Modify keyboard layout permanently
13. OpenSSH SSH daemon
1. Enable X11 forwarding
14. Qemu
1. Network settings
2. Running Qemu to test a new kernel
3. Running VM as deamon with VNC
4. Running VMs with TAP network
5. Running Qemu with ncurses library
6. Ultimate Qemu script with VIRTIO
7. Kernel configuration
15. Java
16. Silc server
17. MySQL
18. X11
1. xterm
2. screenshot
3. Change keyboard layout
19. FVWM
20. Tuning
1. Memory
1.1. Monitor the memory
1.2. Allocate memory
1.3. Over commit
1.3.1. Heuristic overcommit
1.3.1.1. Allocate and use the memory
1.3.1.2. Allocate but don't use the memory
1.3.1.3. Allocate more than the physical memory
1.3.1.4. Out of memory killer
1.3.2. Always overcommit
1.3.3. Don't overcommit
1.4. Buffers and cache
1.4.1. Drop caches
1.4.2. Fill the buffers
1.4.2.1. With inode entries
1.4.2.2. With raw device entries
1.4.3. Fill the cache
1.4.4. The cache effect on file reading
1.5. The difference among VIRT, RES, and SHR in top output
1.5.1. VmData
1.5.2. VmRSS
1.5.3. VmStk
A. GNU Free Documentation License