我已经在 Linksys 路由器上安装了最小的 OpenWRT 固件。
当我尝试使用命令修改目录中的某些文件/etc/
(例如文件)时,它仅在属性中打开文件。firewall.user
vi firewall.user
read-only
如何启用文件编辑?该chmod
命令无法访问,并且我在路由器中的内存非常有限,因此安装任何额外的资源不是一个选项。
答案1
文件系统以只读方式挂载,您需要更改其挂载方式。
但大多数嵌入式系统并不是这样工作的,在这些情况下,您需要修改刷新设备的映像,以便它从一开始就是正确的。
答案2
好吧,就我而言,我已将 OpenWRT 安装到 SD 卡中并插入 Raspberry PI 2。安装后我立即收到如下错误:
Installing kmod-usb-net (3.18.23-1) to root...
Collected errors:
* wfopen: //usr/lib/opkg/info/libusb-1.0.control: Read-only file system.
我尝试过类似的事情:
mount -o remount,rw /
没有成功。
我的解决方案是再次刷新 SD 卡,然后我就可以毫无问题地安装软件包并写入磁盘。
答案3
这通常似乎是由于文件系统损坏造成的。当文件系统以只读方式安装时,可以使用fsck
文件系统检查/修复工具 - 前提是您已经安装了它(例如,对于基于 ext2/3/4 的文件系统,它是 package e2fsprogs
):
fsck /dev/sdb1
或者,如果映像存储在 micro/SD 卡/可移动存储上,那么您可以将其插入另一个 Linux 盒子并运行fsck
以修复文件系统,以便可以再次安装它。当您将 micro/SD 插入另一个 Linux 盒子时,检查dmesg
找到设备名称(例如 /dev/sdb1)并按fsck
上述方式运行。