摘要
根分区为 LVM 的系统,必须使用 initrd
并不是所有主板都支持 AHCI
台式机上的内核一直用的是 Debian 的官方内核,今天准备自己编译最新的内核换上。
由于我一直不喜欢 initrd,所以本打算不使用 initrd 的,结果网上一查才发现,如果
root 文件系统在 lvm 分区上的话就必须使用 initrd。因为 lvm 分区在使用之前必须激活[1] 。
结果试了几次都不能识别分区。因为我对 initrd 和 lvm 都不是很熟,一直以为是它们的
问题,不断尝试各种内核配置都没有搞定。后来我用 Debian 自己的 .config 文件编译
的内核就可以识别分区,用 lsmod 看一下它所使用的模块,竟然发现了 ata_piix,才
忽然意识到我的主板并不支持 AHCI。使用兼容模式的 SATA 驱动之后,内核启动正常。
Reference:
[1] http://stephan.kochen.nl/proj/initrd/