blob: 1df4231d55a3203c7c8cc6ece3c3b439aa868733 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
# $Id$
GENERAL CONCEPT:
Genkernel's primary job is to bring up only the basic stuff needed
to mount your (block) device containing the root filesystem so that
we can hand off control to real system as soon as possible.
It's _not_ genkernel's goal to load all available modules, to start
all available devices, to unlock additional volumes, to start network
or do other fancy stuff. So don't forget to set up your normal boot
services so that the real system can finish boot and do all of the
things mentioned above.
DEPENDENCIES:
- GCC and binutils
- GNU Bash
- PaX Utilities
- Autoconf and Automake
USAGE:
See https://wiki.gentoo.org/wiki/Genkernel or
issue ``genkernel --help''.
PORTING:
To port to other arches:
# cd /usr/share/genkernel
# cp -Rp x86_64 ${myarch}
Modify what is needed in the /usr/share/genkernel/${myarch}
directory, as well making a generic kernel-config.
Check determine_real_args() function in gen_determineargs.sh
if you need to add anything like support for your architecture's
GCC triplet or mapping to kernel's arch.
IMPORTANT KERNEL NOTES:
- You MUST have /dev/pts turned on.
- To boot genkernel properly, the kernel config must have
Initial RAM disk support.
BOOTING A KERNEL WITH INITRAMFS:
GRUB:
root= needs to point to your root partition
vga= should be the resolution you want your screen. 0x317 is
1024x768 - 16bpp and you'll get a pretty splash if
configured properly
GRUB 1.x EXAMPLE ENTRY:
title Gentoo Linux
root (hd0,0)
kernel /vmlinuz-5.4.2-gentoo-x86_64 root=/dev/sda1 vga=0x791
initrd /initramfs-5.4.2-gentoo-x86_64.img
EXTLINUX (SYSLINUX) EXAMPLE ENTRY:
LABEL genkernel-latest
MENU LABEL Gentoo Linux (latest)
LINUX /kernel
INITRD /initramfs
APPEND dolvm crypt_root=UUID=a8c5be51-bd1b-4446-a430-1d0ed576fa73 root=UUID=a2e5968c-5917-41ef-bf81-edffd54c8abd rootfs=ext4 root_trim=yes dosshd
NOTE: The example above uses genkernel's --symlink feature and
initramfs was built with --lvm, --luks and --ssh.
|