我看了很多Linux内核编译教程...他们都建议把内核代码放进去/usr/src
。是有什么特殊原因吗?
如果我在 中编译代码会发生什么/home
?因为我/usr
的只剩下 4Gb 了。
而且他在编译内核之前还创建了一个软链接。这是必要的吗?其目的是什么?
答案1
你可以在任何你想要的目录中编译你的内核。/usr/src
是“老派”
大多数人建议您以用户身份编译内核,并以 root 身份安装。
make menuconfig
make -j5
sudo cp your_kernel /boot
sudo make modules_install
也可以看看
https://help.ubuntu.com/community/Kernel/Compile
http://bodhizazen.com/Tutorials/kernel
您也可以使用主线内核
答案2
您要编译的内核版本是什么?
您可以在任何文件夹中编译最新版本的内核。在 Ubuntu 中,您可以尝试以下命令:
安装官方开发工具
$ sudo apt-get install build-essential kernel-package libncurses5-dev fakeroot wget bzip2 git dpkg-dev devscripts
下载当前内核版本的源代码(在任意目录中)
$ mkdir kernel_build $ cd kernel_build $ apt-get source linux-image-$(uname -r)
下载并构建依赖项
$ sudo apt-get build-dep --no-install-recommends linux-image-$(uname -r)
进入下载的文件夹,编译成安装程序包
$ cd <kernel folder name> $ fakeroot debian/rules clean $ fakeroot debian/rules binary-headers binary-generic binary-perarch
如果需要,请安装新内核。新内核被编译成
.deb
父文件夹中的一组安装程序包。$ cd .. $ sudo dpkg -i *.deb