udev および bash スクリプトを使用して Linux bash でプログラムを作成しました。
USB が接続されると、スクリプトを呼び出す udev ルールが実行されます。そのスクリプトは /var/log/messages ファイルを読み取り、ログ ファイルから接続された USB ハード ドライブに関する情報を取得し、電子メールで情報を送信します。
プログラムは正常に動作していますが、問題が発生しました。USBを取り外そうとすると、(しっかりと中に入っているので)振る必要があります。これにより、メール形式が乱れ、適切な情報が得られません。また、複数の役に立たないメールが生成され、次のログが取得されます。
May 04 13:06:13 coil sendEmail[12467]: Email was sent successfully!
May 4 13:06:13 coil vmbackup[12450]: USB Removed: Email sent to backupjobs@domain.com
May 4 13:06:16 coil kernel: [8474935.215393] usb 2-6: USB disconnect, address 126
May 4 13:06:16 coil kernel: [8474935.601292] usb 2-6: new high speed USB device using ehci_hcd and address 127
May 4 13:06:17 coil kernel: [8474935.868637] usb 2-6: configuration #1 chosen from 1 choice
May 4 13:06:17 coil kernel: [8474935.915429] scsi85 : SCSI emulation for USB Mass Storage devices
May 4 13:06:17 coil kernel: [8474935.982734] input: Western Digital My Book as /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.1/input/input82
May 4 13:06:17 coil kernel: [8474935.982808] generic-usb 0003:1058:1102.0050: input,hidraw0: USB HID v1.11 Device [Western Digital My Book] on usb-0000:00:1d.7-6/input1
May 4 13:06:17 coil kernel: [8474935.982808] generic-usb 0003:1058:1102.0050: input,hidraw0: USB HID v1.11 Device [Western Digital My Book] on usb-0000:00:1d.7-6/input1
May 4 13:06:17 coil kernel: [8474936.084957] usb 2-6: USB disconnect, address 127
May 4 13:06:17 coil kernel: [8474936.500051] usb 2-6: new high speed USB device using ehci_hcd and address 2
May 4 13:06:17 coil kernel: [8474936.769487] usb 2-6: configuration #1 chosen from 1 choice
May 4 13:06:17 coil kernel: [8474936.815499] scsi86 : SCSI emulation for USB Mass Storage devices
May 4 13:06:18 coil kernel: [8474936.882954] input: Western Digital My Book as /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.1/input/input83
May 4 13:06:18 coil kernel: [8474936.883044] generic-usb 0003:1058:1102.0051: input,hidraw0: USB HID v1.11 Device [Western Digital My Book] on usb-0000:00:1d.7-6/input1
May 4 13:06:22 coil kernel: [8474941.837814] scsi 86:0:0:0: Direct-Access WD My Book 1028 PQ: 0 ANSI: 4
May 4 13:06:22 coil kernel: [8474941.838208] sd 86:0:0:0: Attached scsi generic sg3 type 0
May 4 13:06:22 coil kernel: [8474941.838208] sd 86:0:0:0: Attached scsi generic sg3 type 0
May 4 13:06:23 coil kernel: [8474941.860051] sd 86:0:0:0: [sdc] 1953525168 512-byte logical blocks: (1.00 TB/931 GiB)
May 4 13:06:23 coil kernel: [8474941.873798] sd 86:0:0:0: [sdc] Write Protect is off
May 4 13:06:23 coil kernel: [8474941.955971] sdc: sdc1
May 4 13:06:23 coil kernel: [8474942.014853] sd 86:0:0:0: [sdc] Attached SCSI disk
May 04 13:06:23 coil sendEmail[12495]: Email was sent successfully!
May 4 13:06:23 coil vmbackup[12478]: USB Added: Email sent to backupjobs@domain.com
May 04 13:06:26 coil sendEmail[12527]: Email was sent successfully!
May 4 13:06:26 coil vmbackup[12510]: USB Removed: Email sent to backupjobs@domain.com
May 04 13:06:35 coil sendEmail[12546]: Email was sent successfully!
May 4 13:06:35 coil vmbackup[12535]: USB Added: Email sent to backupjobs@domain.com
May 04 13:06:37 coil sendEmail[12576]: Email was sent successfully!
May 4 13:06:37 coil vmbackup[12559]: USB Removed: Email sent to backupjobs@domain.com
May 04 13:06:48 coil sendEmail[12596]: Email was sent successfully!
May 4 13:06:48 coil vmbackup[12585]: USB Added: Email sent to backupjobs@domain.com
これはコーディングの問題ではないことがわかりました。しかし、どうにかしてこの問題を解決できるかどうか知りたいですか? このシナリオに注意してください。