Linuxでファイルを安全に削除する8つの簡単な方法
ハードディスクの内容を完全に消去する方法を見てきましたが、1 つ、2 つ、または 12 個のファイルを完全に削除したい場合はどうなるでしょうか? このガイドでは、Linux でファイルを完全に削除するための最も一般的なソリューションをいくつか紹介します。
1.ゴミ箱をバイパスする
ファイルを削除すると、ゴミ箱 (ごみ箱) に移動されます。必要に応じて、ごみ箱フォルダーをバイパスできます。これにより、削除したファイルがゴミ箱に残ることはなく、完全に削除されたというマークが付けられます。それはまだ回復可能ですが、(ごみ箱で) アクセスできるようにすることからのステップアップです。
私たちのディスクでは、これは 10.97 MiB に変換されました。Dolphin は、その値を超えるとゴミ箱の内容を消去します。通常のデスクトップの使用では、おそらく 1 時間おきに発生します。Nautilus や Nemo などの他のファイル マネージャーには、ゴミ箱を完全にバイパスするオプションがあります。
長所
- やりやすい
- ファイルを完全に削除する前に猶予期間を与えます
短所
- ディスクに残っているメタデータは削除されません
- ファイルからデータをスクラブしません
2.シュレッドの使用
Ubuntu のいくつかのバリアントを実行している場合は、shred
おそらく既にその一部です。忘却に送信したい Linux の機密ファイルを完全に削除するために、すぐに使用を開始できます。
「image.png」を完全に削除したい場合は、次を使用します。
shred -uvz -n 4 image.png
-
u
上書きする前にファイルを削除するように shred に指示します。 -
v
詳細情報を表示します。 -
z
データが使用したスペースをゼロで埋めて、回復の可能性をさらに減らします。 -
-n 4
shred はデフォルトで 1 つのパスを実行します。「-n」を使用すると、セキュリティを強化するために必要な追加パスの数を指定できます。一般的なコンセンサスは、ほとんどの人にとって 5 回のパスで十分であるということです。
複数のファイルまたはフォルダーの内容を除外するには、次のようなワイルドカードを使用します。
shred -uvz -n 1 Pictures/images_0?.jpg
shred -uvz -n 4 Pictures/*.*
最初のケースでは、「?」は 1 文字のワイルドカードであり、shred は、たとえば「images_01.jpg」および「images_02.jpg」という名前のファイルを削除します。
2 番目のケースでは、shred は、名前や種類に関係なく、ディレクトリ「Pictures」内のすべてのファイルを消去します。
長所
- 単一のファイルを完全に削除します
- 複数のファイルをカバーするためにグロブマッチングを行うことができます
短所
- 一部のオプション フラグがわかりにくい
- 完了するまでに長い時間がかかります
3. 単一ファイルでの dd の使用
Data Definition (dd) プログラムは、今日のほぼすべての Linux ディストリビューションに見られるもう 1 つのユーティリティです。ただし、shred とは異なり、最大の利点の 1 つはdd
、Linux でファイルを削除する方法を微調整できることです。
を使用するにはdd
、ファイルの正確なサイズをバイト単位で知る必要があります。
ls -l /path/to/your/file | awk '{print $5}'
既存のファイルに対して dd を実行できます。たとえば、次のコマンドはファイルをヌル文字で埋めます。
dd status=progress bs=your_file_size count=1 if=/dev/zero of=/path/to/your/file
ファイルをヌル文字で埋める以外に、dd
疑似乱数データでファイルを強制的に消去することもできます。
dd status=progress bs=your_file_size count=1 if=/dev/urandom of=/path/to/your/file
通常のコマンドを使用してファイルを削除できるようになりましたrm
。
rm /path/to/your/file
長所
- 汎用性 – ファイルを削除する以上のことができます
- ファイルの削除を微調整できます
短所
- コマンドラインプログラムであっても、構文は時代遅れです
- ブロックサイズをよく理解している必要があります
4. ワイプの使用
ワイプも優れた代替手段です。ディストリビューションのソフトウェア センターで検索し、そこからインストールするか、次を使用します。
sudo apt install wipe
その使用は、シュレッドと同じくらい簡単です。Linux でワイプを使用してファイルを削除するには、次のコマンドを実行します。
wipe Pictures/deleteme.png
デフォルトでは、ワイプはセキュリティを強化するために非常に多くの時間のかかるパスを使用するため、これは煩わしいものになる可能性があります。さらに、削除の確認を要求します。
フラグを使用してf
、確認を取り除き、r
サブディレクトリに再帰します。c
必要に応じて (ファイルまたはディレクトリに書き込み権限が設定されていない場合) ワイプを chmod に指示し、q
より迅速に削除するためにパスの数を減らすことができます。を使用するときはq
、小文字であることに注意してください。要求するパスの数を指定する大文字の「Q」を後に続けることができます。たとえば、これらの調整が適用された以前の単純なコマンドは、次のように変更されます。
wipe -rfcq -Q 5 Pictures/deleteme.png
長所
- コマンドラインの経験がほとんどなくても使いやすい
- 合理的で安全なデフォルト パラメータ
短所
- ほとんどのユーザーにとって、デフォルトのパラメータは厳しすぎる可能性があります
- アクティブなジャーナリングではうまく機能しない可能性があります
5. 安全な削除の使用
SRM は、HDD からのデータの安全な削除に特化した Secure Delete スイートのツールの 1 つです。これは、この仕事に最適なツールとして多くの人に支持されています。
完全な Secure Delete スイートを Ubuntu および互換性のあるディストリビューションにインストールするには、次を使用します。
sudo apt install secure-delete
その後、次の方法でファイルを削除できます。
srm Pictures/deleteme.png
セキュリティを強化し、プロセスに関する詳細な情報を取得するために、z
ファイルの内容をゼロで上書きするフラグを使用することをお勧めします。v
ディレクトリとサブディレクトリを扱う場合は、r
再帰モードのフラグも含めます。l
38 回の書き換えが多すぎる場合は、フラグを使用してパスの数を「わずか」2 つに減らすことで、必要な時間とセキュリティを減らすことができます。これにより、前のコマンドが次のようになります。
srm -rlvz Pictures/deleteme.png
長所
- オプションは理解しやすく直感的です
- ファイルの削除は非常に安全で完全です
短所
- 完了するまでに長い時間がかかります
- RAID を使用するシステムではうまく機能しない
6. Perl を使用して Linux でファイルを削除する
ツールを使用する以外に、Perl などの単純なプログラミング言語を利用して、Linux でファイルを削除することもできます。たとえば、次のコード行は、ファイルの内容を文字「0:」に置き換えます。
perl -i -pe 's/[^*]/0/g' /path/to/your/file
- この
-i
フラグは、コマンドで指定したファイルを処理するように Perl に指示します。 - この
-pe
フラグは、ファイルの内容に対して反復ループを作成するようにプログラムに指示します。 -
's/[^*]/0/g'
置換コマンドです。演算子[^*]
はファイル内のすべてのバイトに一致し、 は0
各バイトを置き換えます。
完了したら、rm を使用して変更したファイルを削除できます。
rm /path/to/your/file
長所
- Perl の知識があれば、新しい構文を学ぶ必要はありません。
- sed 置換などの使い慣れた抽象化を使用
短所
- コマンドはファイルに対して単一のパスのみを実行します
- コンテンツを任意のデータに置き換えることは安全ではない可能性があります
7. GUI による方法: Bleachbit の使用
コマンド ラインが嫌いな場合、Bleachbit はデータを安全に消去するための最良のソリューションの 1 つです。(Bleachbit は、Linux システムをクリーンアップする機能でよく知られています。) デフォルトでは、このツールは、必要になってから長い間スペースを占有し続ける「冗長ファイル」の検出と破棄に特化しています。しかし、回復できないファイルを手動で「シュレッダー」する通常忘れられている機能も組み込まれています。
ソフトウェアセンターを介して、または次を使用して、Ubuntu互換ディストリビューションにインストールします。
sudo apt install bleachbit
「メニュー -> 設定」をクリックし、セキュリティを強化するために「ファイルの内容を上書きして回復を防ぐ」オプションを有効にします。
メイン インターフェイスに戻り、[メニュー] -> [ファイルをシュレッド] をクリックし、ポップアップする要求から、転送したいファイルを選択します。「削除」をクリックして、何をしようとしているのか確信があることをBleachbitに安心させてください.
ジャーナリング ファイル システムの使用と、各 HDD のファームウェアがそのコンテンツを「管理」する方法がわからないという事実は、最善の解決策は HDD を完全に消去すること、またはさらに良いことに、HDD を物理的に破壊することであることを常に心に留めておく必要があります。デバイス。
長所
- 使いやすい
- デフォルトで安全に設定できます
短所
- ディスクのワイプを実行できません
- 空き領域を消去しません
8. dd による空き領域のワイプ
安全に削除するとファイルの復元が難しくなりますが、ディスク上のメタデータを使用してファイルを再構築することは可能です。この問題を解決するには、マシン内の利用可能な空き領域をすべて消去してください。
Linux でこれを行う最も簡単な方法は、 を使用して、dd
ハード ドライブ全体を満たすファイルを作成することです。
dd status=progress if=/dev/zero of=/home/$USER/wipefree
完了したら、「空き領域」ファイルをディスクにコミットするようにシステムに指示する必要があります。
sync
最後に、rm を使用して「空き領域」ファイルを削除します。
rm /home/$USER/wipefree
長所
- ファイルを削除しない簡単なコマンド
- 残っているすべてのメタデータを消去します
短所
- 終了まで時間がかかる
- ファイルを直接削除しない
よくある質問
Linux でリモート ファイルを安全に削除することは可能ですか?
リモート ファイルを安全に削除することは可能ですが、リモート Linux システムがディスク内のファイルをバックアップしないという保証はありません。すべてのリモート ディスクとシステムが安全ではないと想定することをお勧めします。
Linux でファイルを安全に削除した後、ファイルは完全になくなっていますか?
システムが古いファイルの一部のメタデータを保持している可能性は依然としてあります。たとえば、スワップ パーティションには、システムでの安全な削除に関する情報を含めることができます。
これを軽減するには、再起動してディスクに新しいファイルを作成します。
ファイルを削除するときはパスが多いほどよいですか?
必ずしも。ほとんどの場合、5 回のパスで、データ回復ツールがファイルを再作成するのを防ぐことができます。5 パスを超えてファイルを復元することは可能ですが、高度に専門化されたツールとプログラムが機能する必要があります。
画像クレジット: Unsplash . Ramces Redによるすべての変更とスクリーンショット。
コメントを残す