我的 ubuntu 18.04 启动到只读文件系统/
,我真的不知道为什么。我知道,坏的fstab
可能会导致这个问题,但我fstab
看起来还不错:
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
# / was on /dev/sda1 during installation
#UUID=ec9192f0-a26a-4e52-be83-084fd6599e55 / ext4 errors=remount-ro 0 1
/swapfile none swap sw 0 0
#/dev/sdb1 /home/nextcloud-storage ntfs-3g utf8,dmask=007,fmask=007,umask=007,uid=www-data,gid=www-data,noatime 0
我已经 #comment 我/dev/sdb1
来检查这一点。同样奇怪的是,也许它与这个问题有关:当我取消注释 /dev/sdb1 行时,我的/dev/sdb1
将被正确安装到/home/nextcloud-storage
(仍然只读文件系统/
),lsblk
显示此但blkid
仅显示我的/dev/sda1
- UUID
not /dev/sdb1
。
我当然可以使用它sudo mount -o remount,rw /dev/sda1 /
来获得正确的访问权限,但这并不能解决我的问题。
有谁知道如何摆脱这个吗?
答案1
正如已经提到的,取消注释该行肯定会解决问题(并且正如您所确认的,它实际上确实解决了)。
由于这可能是其他人的问题,并且标题说 fstab 没问题,因此我将添加其他一些我认为可能与寻找相同问题的人相关的内容。我不确定 error=remount-ro 是否是您的发行版的标准,但它可能与您的“init”脚本处理错误的方式有关。通常情况下,当系统启动为就绪状态时,仅出现错误(例如文件系统错误)需要修复,但不同的发行版可能会通过不同的方式处理该错误。但无论如何处理,像 e2fsck 这样的工具都无法在读写安装的文件系统上安全运行,这就是为什么系统有时可能会回退到只读。
如果发生类似情况,运行 e2fsck 可能会解决文件系统问题(但请注意,这可能会导致数据丢失)。 e2fsck 的手册页包含有关如何继续操作以及每个选项的含义的说明。
此外,运行 dmesg 命令可能会告诉您为什么在出现某些硬件错误的情况下根最终会安装为只读。