无论是通过touch创建文件,还是通过vi编辑文件都失败,出现报错提示:Read-only file system
可以通过lsblk命令查询可用块设备信息:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| touch: aaa: Read-only file system
mosquitto.acl mosquitto.conf mosquitto.password
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS mmcblk0 179:0 0 29.2G 0 disk |-mmcblk0p1 179:1 0 256M 0 part /bootloader |-mmcblk0p2 179:2 0 256M 0 part |-mmcblk0p3 179:3 0 1G 0 part / |-mmcblk0p4 179:4 0 1G 0 part |-mmcblk0p5 179:5 0 128M 0 part /var/lib/bluetooth | /overlay `-mmcblk0p6 179:6 0 26.5G 0 part /data
|
然后通过blkid命令查询块设备详细信息:
1 2 3 4 5 6 7
| /dev/mmcblk0p5: LABEL="overlay" UUID="539c8a51-988a-486c-a8b2-784fb3c01c68" BLOCK_SIZE="1024" TYPE="ext4" PARTLABEL="overlay" PARTUUID="87e24609-8c57-4272-bf30-a4d2f4ccf9a9" /dev/mmcblk0p3: BLOCK_SIZE="131072" TYPE="squashfs" PARTLABEL="rootfs0" PARTUUID="a674b333-bab4-4478-b465-7e5d11caedc4" /dev/mmcblk0p1: SEC_TYPE="msdos" LABEL_FATBOOT="bootloader" LABEL="bootloader" UUID="97B1-A458" BLOCK_SIZE="512" TYPE="vfat" PARTLABEL="boot0" PARTUUID="5d814d14-f6ed-435b-a41c-da4dd10befd8" /dev/mmcblk0p6: LABEL="data" UUID="78f990db-9a78-4f44-95ea-9d04d36071d1" BLOCK_SIZE="1024" TYPE="ext4" PARTLABEL="data" PARTUUID="5e6f234c-fd9b-4a90-b75b-37fb26a39b27" /dev/mmcblk0p4: BLOCK_SIZE="131072" TYPE="squashfs" PARTLABEL="rootfs1" PARTUUID="c538f7af-32d1-4ec0-9300-8df1da9fcabf" /dev/mmcblk0p2: BLOCK_SIZE="131072" TYPE="squashfs" PARTLABEL="rescue" PARTUUID="3fe85d82-227d-454b-a3d6-bd589772098a"
|
对比两者,发现 /
目录对应的 mmcblk0p3 的类型是 squashfs(即只读)。
一般解决方法:
1 2 3 4
| mount -o remount,rw /
systemctl daemon-reload
|