我正在使用 Gentoo Linux,一段时间以来,根文件系统在启动时以只读方式挂载。出于显而易见的原因,这很烦人,因为大多数服务无法正确启动(我没有为 /var 使用单独的文件系统)。系统启动后,我必须登录,重新挂载根文件系统读写,修复 /etc/mtab,从 /etc/fstab 挂载所有其他文件系统,然后启动所有丢失的守护进程。我知道有一些方法可以使系统在只读文件系统下正常运行,但我更愿意恢复可写根文件系统的旧行为。
奇怪的是,运行后mount / -o remount,rw,文件系统以可写方式挂载,没有任何错误。我怀疑 fsck 有问题,但现在我已禁用对分区 ( tune2fs -c0 -i0) 的自动文件系统检查。
当我运行 dmesg 时,只有这些行提到了分区,尽管我不确定是否因为 /var/log 不可写而丢失了某些东西:
EXT3-fs (sda5): mounted filesystem with writeback data mode</code>
EXT3-fs (sda5): using internal journal
Run Code Online (Sandbox Code Playgroud)
/etc/fstab 中的行如下所示:
/dev/sda5 / ext3 noatime 0 1
Run Code Online (Sandbox Code Playgroud)
我正在使用内核 2.6.34-gentoo-r6(以前的 2.6.31 内核存在同样的问题)。我使用 genkernel 3.4.10.906 创建了它。我的 grub 配置如下所示:
title=Gentoo Linux (2.6.34-gentoo-r6)
root (hd0,0)
kernel /kernel-genkernel-x86_64-2.6.34-gentoo-r6 root=/dev/ram0 real_root=/dev/sda5 vga=792 CONSOLE=/dev/tty1 resume=/dev/sda6
initrd /initramfs-genkernel-x86_64-2.6.34-gentoo-r6
Run Code Online (Sandbox Code Playgroud)
除此之外,我使用 openrc 0.6.3 运行 baselayout 2.0.0,如果这很重要的话。sysvinit 2.87-r3也装了,不知道有没有实际用过。
这是 dumpe2fs …