我无法在特定分区上写入。mysql 数据目录托管在该分区上,当 mysql 在查询上崩溃时,它突然变为只读。
[root@ESERVER new_dir]# > /data/test.txt
-bash: /data/test.txt: Read-only file system
[root@ESERVER ~]# tail -f /var/log/messages
Jul 15 11:02:29 ETIMPURGE_SERVER kernel: handlers:
Jul 15 11:02:29 ETIMPURGE_SERVER kernel: [<ffffffff813a8150>] (ata_sff_interrupt+0x0/0x110)
Jul 15 11:02:29 ETIMPURGE_SERVER kernel: [<ffffffff813a8150>] (ata_sff_interrupt+0x0/0x110)
Jul 15 11:02:29 ETIMPURGE_SERVER kernel: Disabling IRQ #19
Jul 15 11:02:33 ETIMPURGE_SERVER kernel: sd 2:0:0:0: [sdb] Unhandled error code
Jul 15 11:02:33 ETIMPURGE_SERVER kernel: sd 2:0:0:0: [sdb] Result: hostbyte=DID_BAD_TARGET driverbyte=DRIVER_OK
Jul 15 11:02:33 ETIMPURGE_SERVER kernel: sd 2:0:0:0: [sdb] CDB: Write(10): 2a 00 c9 80 01 3f 00 00 08 00
Jul 15 11:02:33 ETIMPURGE_SERVER kernel: __ratelimit: 129 callbacks suppressed
Jul 15 11:02:33 ETIMPURGE_SERVER kernel: Buffer I/O error on device sdb3, logical block 422576160
Jul 15 11:02:33 ETIMPURGE_SERVER kernel: lost page write due to I/O error on sdb3
Jul 15 11:15:29 ETIMPURGE_SERVER kernel: sd 2:0:0:0: [sdb] Unhandled error code
Jul 15 11:15:29 ETIMPURGE_SERVER kernel: sd 2:0:0:0: [sdb] Result: hostbyte=DID_BAD_TARGET driverbyte=DRIVER_OK
Jul 15 11:15:29 ETIMPURGE_SERVER kernel: sd 2:0:0:0: [sdb] CDB: Read(10): 28 00 d1 bf c3 ff 00 00 08 00
Jul 15 11:15:29 ETIMPURGE_SERVER kernel: sd 2:0:0:0: [sdb] Unhandled error code
分区是否可能由于查询繁重而变为只读?
答案1
问题显然恰恰相反。
IO 错误Buffer I/O error on device sdb3, logical block 422576160
将导致文件系统被挂载只读。您很可能会在/var/log/messages
下文中看到这一点。
这很可能是由于磁盘退化或固件错误。
答案2
以只读模式 (ro) 启动的文件系统,并且用户无法在 / 目录中创建任何文件:--
首先检查根文件系统的当前格式
山
它将显示像 /dev/sda1 被挂载在 / 作为 ro 或 rw 如果它处于 ro 模式我们必须运行手动 fsck 命令但请记住不要在已挂载的文件系统上运行此命令它可能会破坏恢复模式或回收模式下该启动系统的数据