Raspberry Pi SDカードの内容を自動的にバックアップするためにしばらく前に作成したスクリプトを編集していますが、編集中に「/」を見逃したので、シェルスクリプト全体は次のようになります。
#!/bin/bash
date
echo BACKING UP RASPBERRY PI
sudo dd if=/dev/mmcblk0p2 of=/media/USBDRIVE/RPi-Backups/RPi-Backup-$(date +"%m_%d_%Y").img bs=10M
echo COMPRESSING RASPBERRY PI BACKUP
sudo gzip -9 -c /media/USBDRIVE/RPi-Backups/RPi-Backup-$(date +"%m_%d_%Y").img > /media/USBDRIVE/RPi-Backups/RPi-Backup-$(date +"%m_%d_%Y").img.gz
そうしたら私が間違えたことを悟って台本を中断しました。バックアップが保存されているディレクトリを確認しましたが、すべて消えました。奇妙なことに、ドライブはスクリプトを実行する前と同じスペース(500 GB USBドライブサイズの約半分)を占めます。
私が知っている限り、バックアップが消えてバックアップの全体のポイントが無効になりました。
これらのファイルを回復する方法はありますか?
そうでない場合は、ドライブを消去して再フォーマットせずにスペースを回復する方法はありますか?
2015年1月の更新:以来、メーカーとモデルが異なる新しいドライブでこの問題が発生しました。 2つの異なる製造元によって作成された2つの異なるドライブを使用すると、これが2回連続して発生する可能性はほとんどありません。バックアップスクリプトにこれらのエラーを引き起こすものはありますか?ファイルが実際に消えた場合、ディレクトリがまだ存在するのはなぜですか?なぜディスクとオペレーティングシステムは、ファイルが消去されたかのように計算するのではなく(明らかに消えたので)、同じ量のスペースがまだ使用されていると思いますか?
ベストアンサー1
ls: reading directory /media/USBDRIVE/RPi-Backups: Input/output error
これがあなたの問題です。常にエラーメッセージを読んでください!ファイルは消えません。成功しないか、dd
プロセスgzip
がI / Oエラーで終了します。
時々、このエラーは多少一般的ですが、ここではハードウェアの状況を上回る単純なファイルシステムを扱っています。 I / Oエラーは、ハードウェアに欠陥があることを意味します。システムログに別のメッセージがある可能性があります。通常、問題はハードドライブにあります。時々ケーブルが破損することがあります。別のケーブルを試してみてください(問題が解決することはほとんどありませんが、価格は安いです)。コントローラの問題、ドライバの問題かもしれませんが、これらの問題はドライブを50回目使用する場合よりも速くなる傾向があります。