我注意到我们设置了 root=,但更深层次上还有 real_root。另外为什么很少使用real_root?我的意思是为什么使用 root 而不是 real_root 更常见?
答案1
如果您使用的是初始 ram 磁盘 (初始化程序) 或初始 ram fs (初始化文件系统),然后引导加载程序将加载内核和初始ram disk/fs,然后内核将管理初始ram disk/fs以将临时根fs挂载到内存中。
一旦必要的驱动程序和模块可用,那么初始 ram 磁盘/文件系统将需要真实根参数(由 grub 传递给内核)来加载真实根fs分区从一个块设备或通过网络(通过NFS根目录grub 参数)然后切换到它。
因此,如果您没有使用初始 ram 磁盘/文件系统,则意味着所有必要的驱动程序和模块都已安装在内核中编译然后真实根不会有任何影响,因为不需要初始 RAM 磁盘/文件系统来完成启动顺序。