拔电源磁盘变成只读Read-only file system
问题
搭建openwrt的过程中,由于机器没有关机键,而且没有进行后台命令关机,直接拔电源之后,重启,任何操作都提示只读状态,那么这个时候什么都操作不了,无奈只有重新做系统,但是问题过于频繁,所以还是花时间解决
查询
百度有很多,方案,但是都是自己的情况下能解决的,没有什么实际的说明:
e2fsck -y /dev/mm,
mount -o remount rw /,
mount -o remount,rw /,
umount 去卸载
都没有用,因为除非你的环境和他的环境一模一样
可以看一下日志打印,会有错误的提示,输入mount也会有磁盘的问题,本来是rw,显示是ro
/dev/mmcblk0p2 on / type ext4 (ro,noatime)
/dev/mmcblk0p2 on / type ext4 (rw,noatime)
解决
就一句话,e2fsck -y /dev/mmcblk0p2,为什么是mmcblk0p2,这个看日志的反馈,然后reboot就可以了,下面这个实现自动检测,放到了开机自启中,这样虽然等待时间可能比较长,但是至少开机就不用管了
sleep 1
result=$(cp sendkey.sh ceshisdka 2>&1)
echo $result
echo --------------------------
# result="cp: can't create 'ceshisdka': Read-only file system"
err="cp: can't create 'ceshisdka': Read-only file system"
if [[ "$result" == "$err" ]]
then
echo "包含"
e2fsck -y /dev/mmcblk0p2
reboot
else
err="cp: can't create 'ceshisdka': File exists"
if [[ "$result" == "$err" ]]
then
echo "包含"
e2fsck -y /dev/mmcblk0p2
reboot
fi
echo "不包含"
rm ceshisdka
fi