卡在“make install”处

卡在“make install”处

我正在构建内核(3.5)从/media/src_prog/linux-3.5//media/sda5_k/。我已经完成了以下步骤:

make O=/media/sda5_k/ menuconfig
make -j2 O=/media/sda5_k/
make O=/media/sda5_k/ modules_install

当谈到make O=/media/sda5_k/ install所有我得到的是:

[root@localhost linux-3.5]# make O=/media/sda5_k/ install
sh /media/src_prog/linux-3.5/arch/x86/boot/install.sh 3.5.0 arch/x86/boot/bzImage \
    System.map "/boot"
Cannot find LILO.
[root@localhost linux-3.5]#

我也手动尝试过:

cp /media/sda5_k/arch/x86/bzImage /media/sda5_k/boot/
cp /media/sda5_k/arch/x86/System.map /media/sda5_k/boot/

并重复了make O=/media/sda5_k/ install但它不起作用。

我使用 Arch 进行编译,引导过程是使用 Ubuntu 的 GRUB2 完成的。

这一步我该怎么办?


编辑:

磁盘驱动器:

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048    65538047    32768000   83  Linux
/dev/sda2        65538048    98306047    16384000   83  Linux
/dev/sda3        98306048   122882047    12288000   83  Linux
/dev/sda4       122882048  1953523711   915320832    5  Extended
/dev/sda5       122884096   139268095     8192000   83  Linux
/dev/sda6       139270144   204806143    32768000   83  Linux
/dev/sda7       204808192   229384191    12288000   83  Linux
/dev/sda8       229386240   245770239     8192000   83  Linux
/dev/sda9       245772288   270348287    12288000   83  Linux
/dev/sda10      270350336   319502335    24576000   83  Linux
/dev/sda11      450578432   929523711   239472640   83  Linux
/dev/sda12      929525760  1953523711   511998976   83  Linux
/dev/sda13      319504384   450576383    65536000   83  Linux

df:

Filesystem     1K-blocks     Used Available Use% Mounted on
rootfs          12245648  9913616   1717632  86% /
dev              1024756        0   1024756   0% /dev
run              1027708      328   1027380   1% /run
/dev/sda3       12245648  9913616   1717632  86% /
shm              1027708      112   1027596   1% /dev/shm
tmpfs            1027708       68   1027640   1% /tmp
/dev/sda7       12245648  1100504  10530744  10% /media/src_prog
/dev/sda5        8165804   436548   7319656   6% /media/sda5_k

/媒体/src_prog/-> 我保存源文件的地方

/媒体/sda5_k/-> 我想把 Linux 内核放在哪里

/dev/sda1-> 乌班图

/dev/sda2-> 旧的未使用的 Ubuntu

/dev/sda3-> 拱门(此处:-D)

/dev/sda1/启动-> 引导(Ubuntu 的)绑定到 MBR 的那个。

答案1

我还没有检查这是否仍然适用于 3.5,但我认为内核 makefile 只支持 Lilo,而不支持 Grub。一旦您手动复制了该bzImage文件以及 initrd 或 initramfs(如果您使用的是 initrd 或 initramfs),您需要通知 Grub 新内核。通过简单的设置,只需运行即可update-grub。由于您使用另一个发行版的引导加载程序来引导一个发行版的内核,因此这可能不起作用,因此您可能需要手动编辑 Grub 配置文件。这/boot/grub/menu.lst适用于 Grub 旧版 (Grub 0.9x) 和/boot/grub.grub.cfgGrub2 (Grub 1.9x)。

对于 Grub2,您需要一个类似的条目

menuentry "Homemade 3.5 kernel" {
    insmod ext2
    set root='(hd0,msdos5)'
    linux /boot/bzImage root=/dev/sda3 ro
}

答案2

我认为你不需要make install在这里启动,只需复制生成的 bzImage、System.map,然后 domake modules_install就会为你工作。

你似乎使用的是 Arch Linux,为什么不选择 abs 呢?例如,最新的 3.5 内核正在测试目录中,因此如果您这样做abs testings/linux,它应该为您下载 PKGBUILD 文件,并且您可以makepkg构建一个包

相关内容