我需要将我的 Linux 文件系统从 ro 重新挂载到 rw。但没有任何作用。如果有人帮助我,我将非常感激。
# mount
/dev/mtdblock3 on / type squashfs (ro)
proc on /proc type proc (rw)
ramfs on /tmp type ramfs (rw)
devpts on /dev/pts type devpts (rw)
none on /tmp/netslink type ramfs (rw)
# cat /proc/mounts
rootfs / rootfs rw 0 0
/dev/root / squashfs ro 0 0
proc /proc proc rw 0 0
ramfs /tmp ramfs rw 0 0
devpts /dev/pts devpts rw 0 0
none /tmp/netslink ramfs rw 0 0
我试过这个:
# mount -o rw,remount -t squashfs /dev/root /
mount: Mounting /dev/root on / failed: Permission denied
我尝试了这个:
# mount -o rw,remount -t squashfs /dev/mtdblock3 /
Command "mount -o rw,remount -t squashfs /dev/mtdblock3 /" is forbidden!
只是这样:
# mount -o rw,remount /
Can't find / in /etc/fstab
/etc/fstab:
# cat /etc/fstab
proc /proc proc defaults 0 0
ramfs /tmp ramfs defaults 0 0
devpts /dev/pts devpts defaults 0 0
系统没有root用户,但是有root组,我用root组中的用户来做,还不够吗?
什么是正确的解决方案?谢谢!
答案1
SquashFS 是一个只读文件系统。
https://en.wikipedia.org/wiki/SquashFS
你可以创建一个新的文件系统并将squashfs 的内容复制到其中。为此,您需要:
- 从旧文件系统备份数据
- 从 Live-CD/USB 启动
- 在 /dev/mtdblock3 上创建一个新的文件系统
- 将数据复制到新文件系统
您可以在另一个分区/驱动器上创建新的文件系统,而不是从 Live-CD 启动。
然后,您必须确保您的操作系统使用该新文件系统。通常,这是通过更改 /etc/fstab 中的相应行来实现的,但在您的情况下,情况似乎并非如此。您必须找出根文件系统的安装位置并在那里进行更改。
- 重启