The Funtoo Linux project has transitioned to "Hobby Mode" and this wiki is now read-only.
Difference between revisions of "Genkernel Quick Start Tutorial/pt-br"
Line 3: | Line 3: | ||
TBC | TBC | ||
== | == Recompilando os códigos fonte do kernel Gentoo a partir do SystemRescue CD chroot == | ||
Um segundo caso que muitos usuários de Funtoo users encararão é recompilar seu próprio kernel quando instalar um um Funtoo novinho a partir de um stage 3 archive (o cenário mais comum é inicializar a maquina com o SystemRescue CD). | |||
{{Fancynote| Se quiser utilizar o System rescue CD sources fornecido pelo Funtoo {{Package|sys-kernel/sysrescue-std-sources}}, a filosofia permanece exatamente a mesma.}} | |||
== First step emerging the required packages == | == First step emerging the required packages == | ||
Revision as of 01:51, April 3, 2015
Conceitos
TBC
Recompilando os códigos fonte do kernel Gentoo a partir do SystemRescue CD chroot
Um segundo caso que muitos usuários de Funtoo users encararão é recompilar seu próprio kernel quando instalar um um Funtoo novinho a partir de um stage 3 archive (o cenário mais comum é inicializar a maquina com o SystemRescue CD).
Se quiser utilizar o System rescue CD sources fornecido pelo Funtoo No results, a filosofia permanece exatamente a mesma.
First step emerging the required packages
The first step is to emerge:
- The Gentoo kernel sources: No results
- Genkernel itself: No results
This is achieved by running the following:
root # emerge sys-kernel/gentoo-sources sys-kernel/genkernel
Once the Gentoo kernel sources are deployed, you should find a directory named linux-version-gentoo (e.g. linux-2.6.39-gentoo) under /usr/src
. Update the linux
symlink to point to this directory:
root # cd /usr/src root # rm linux root # ln -s linux-2.6.39-gentoo linux
Second step: Grabbing and tweaking a configuration file
How to start your kernel configuration? Simply by using the same configuration template the running System Rescue CD kernel had been built with! Before chrooting in your Funtoo instance, you did something like:
root # mount -o bind /proc /mnt/gentoo/proc
Or:
root # mount -t proc none /mnt/gentoo/proc
In your chroot environment (or from a System Rescue CD virtual terminal) if you look what /proc
contains you will notice a file named config.gz
:
root # ls /proc ... dr-xr-xr-x 7 root root 0 May 23 03:13 952 dr-xr-xr-x 7 root root 0 May 23 03:13 953 dr-xr-xr-x 7 root root 0 May 23 18:42 9834 ... -r--r--r-- 1 root root 16024 May 23 22:27 config.gz -r--r--r-- 1 root root 0 May 23 22:27 consoles -r--r--r-- 1 root root 0 May 23 22:27 cpuinfo ...
config.gz
holds the running kernel (System Rescue CD) configuration, just copy the unziped content into the Gentoo sources directory:
root # cd /usr/src/linux root # zcat /proc/config.gz > .config
Next, run make oldconfig
to set all newly added options:
root # make oldconfig
Next, tweak the kernel configuration in the way you prefer (manually edition of the .config file, make nconfig, make menuconfig....) if you wish. You are not ready yet! A final step is required: you must either set CONFIG_INITRAMFS_SOURCE to a blank value (CONFIG_INITRAMFS_SOURCE="") either delete the statement in the .config file. Forgotting to do that will make Genkernel abort the compilation process with a message like:
/usr/src/linux-2.6.39-gentoo/scripts/gen_initramfs_list.sh: Cannot open '/var/tmp/genkernel/initramfs-2.6.32.14-std155-i386.cpio.gz' make[1]: *** [usr/initramfs_data.cpio.lzma] Error 1
Third step: Building and installing the kernel
This is simply achieved by:
root # genkernel --no-mrproper all
The same remarks written in the third paragraph of the first use case are still valid here.