vimwiki/tech/kernel.wiki

93 lines
2.7 KiB
Plaintext

= Linux kernel =
The part actually called Linux. Some stuff on compiling for it and things it
provides
== Proc ==
/proc is a virtual filesystem provided by the kernel that has info on processes
running and some basic system info. Here are some useful things from it.
* meminfo
- info about ram usage
* acpi/*
- info about things that control power (such as laptop lid, power button, etc)
* sys/kernel/*
- info about the status of the kernel
* crypto
- encryption algorithms built into the kernel
* uptime
- system uptime
* fs/*
- all supported filesystems
== Dev ==
The device virtual file system, located at /dev. Each device is a file and can
be talked to here. Here is some useful info from it
* random
- random data
* urandom
- less predictable random data
* zero
- outputs nothing
* tty*
- All of the different virual terminals
* cpu/*
- All cpu cores
* snd/*
- All sound devices
* usb/*
- USB devices
* disk/*
- All available disks, can be viewed by uuid, partlabel, and more
* mapper/*
- Where LVM partitions are mounted, including encrypted partitions and drives
== Updating the kernel ==
First be sure to mount the boot parition to /boot
Next copy your .config from the source directory of your previous kernel to
somewhere safe
For gentoo, you'll need to switch your /usr/src/linux symlink using eselect now
Now begins the commands
1) make mrproper
- make clean with no additional atrtifacts
2) cp /path/to/kernel/config .config
- Install old config file
3) make olddefconfig
- copy over old config options to new kernel config
4) make modules_prepare
- Prepare kernel modules on system
5) make -jX
- make the kernel! replace X with number of desired threads
6) make modules_install && make install
- install the new kernel and modules
7) (Gentoo) emerge @module-rebuild
- Recompile kernel modules to work with the new kenel
8) (Encrypted root only) genkernel --luks --lvm --kernel-config=/path/to/kernel/config initramfs
- If not on gentoo use distros initramfs build tool. splash adds a splash
screen and is not required
9) (Encrypte root only) modify /etc/default/grub
- On the line with the string "GRUB_CMDLINE_LINUX="
- In the quotes add
- 'dolvm', to enable LVM support
- 'crypt_root=/dev/{ROOT_DRIVE}', replace {ROOT_DRIVE} with the file for
the parition with the LVM on it. This tells the initramfs what partition
to mount as the new root
10) (Optional) Clean up all kernels
- Go ahead and remove all references in /boot to an older kernel. DO NOT
delete the current kernel, you may need it in case installing this kernel
fails!
11) grub-mkconfig -o /boot/grub/grub.cfg
- Let grub update its config to know that the new kernel exists
12) reboot
- reboot and hope it worked!
[[index]]