系统:Debian Squeeze
用途:任何新磁盘都将被 DoD 擦除的系统。
我正在寻找一种方法来在内核抛出的磁盘错误上触发命令,有时我们会遇到坏磁盘,只需要将其擦除即可。
日志中常见的行包括
Jan 15 10:34:33 drivekiller9k kernel: [339274.100020] usb 2-3: reset high speed USB device using ehci_hcd and address 51
Jan 15 10:34:33 drivekiller9k kernel: [339274.233729] sd 176:0:0:1: [sdl] Unhandled error code
Jan 15 10:34:33 drivekiller9k kernel: [339274.233733] sd 176:0:0:1: [sdl] Result: hostbyte=DID_ABORT driverbyte=DRIVER_OK
Jan 15 10:34:33 drivekiller9k kernel: [339274.233737] sd 176:0:0:1: [sdl] CDB: Write(10): 2a 00 00 34 b8 70 00 00 f0 00
Jan 15 10:34:33 drivekiller9k kernel: [339274.233781] __ratelimit: 20 callbacks suppressed
Jan 15 10:34:33 drivekiller9k kernel: [339274.233815] lost page write due to I/O error on sdl
我想要一种方法,只需运行一个 shell 脚本即可终止擦除过程并写入日志,执行此操作的正确方法是什么?
答案1
答案2
您可以使用Shell execute
rsyslog 的 ACTION 来触发针对特定日志消息条目的操作(例如您的恢复脚本)。请参阅man rsyslog.conf
以了解详细信息。