Linuxで巨大な(100-200GBの)ファイルを削除する方法
Linuxターミナル操作の領域では、ファイルを効果的に削除または取り除くためにさまざまなLinuxコマンドが利用可能です。
ファイル削除の作業に関しては、一般的に「rm」コマンドに頼ります。このコマンドは、システムからファイルを迅速に消去します。安全性と確実性を高めるために、「shred」コマンドが登場します。このコマンドは、ファイルを徹底的かつ安全に削除し、痕跡を残さないようにします。
さらに、「ワイプ」コマンドは、回復の可能性を超えてファイルを安全に消去することで、追加の保護レイヤーを提供します。さらに複雑なシナリオや高度なファイル削除のニーズには、最高の安全なファイル削除の基準を満たすように設計された安全な削除ツールを利用できます。
これらの強力なオプションを利用することで、私たちは自信を持って効果的にLinuxターミナル環境からファイルを削除することができます。
上記のユーティリティのいずれかを使用して、比較的小さなファイルに対処できます。では、約100-200GBの巨大なファイルやディレクトリを削除したい場合はどうすればいいでしょうか?
ファイルを削除する際に必要な時間(I/Oスケジューリング)や操作を実行している間に消費されるRAMの量を考えると、これが見た目ほど簡単ではないかもしれません。
このチュートリアルでは、Linuxで巨大なファイルやディレクトリを効率的かつ信頼性高く削除する方法を説明します。
ここでの主な目的は、大きなファイルを削除する際にシステムを遅くしない技術を使用し、合理的なI/Oを実現することです。これをioniceコマンドを使用して達成できます。
Linuxでioniceコマンドを使用して巨大な(200GB)ファイルを削除する
ioniceは、他のプログラムのI/Oスケジューリングクラスと優先度を設定または取得する便利なプログラムです。引数が指定されていない場合や単に-pが指定された場合、ioniceはそのプロセスの現在のI/Oスケジューリングクラスと優先度を照会します。
コマンド名をrmコマンドのように指定すると、指定された引数でこのコマンドが実行されます。スケジューリングパラメータを取得または設定するために実行中のプロセスのプロセスIDを指定するには、次のように実行します:
# ionice -p PID
使用するスケジューリングクラスの名前または番号を指定してください(0はなし、1はリアルタイム、2はベストエフォート、3はアイドル)以下のコマンド。
これは、rmがアイドルI/Oクラスに属し、他のプロセスがI/Oを必要としない場合のみI/Oを使用することを意味します。
---- Deleting Huge Files in Linux -----
ionice -c 3 rm /var/logs/syslog
ionice -c 3 rm -rf /var/log/apache
システム上であまり怠惰な時間がなければ、最善努力スケジューリングクラスを使用し、次のように低い優先度を設定することを検討するかもしれません。
# ionice -c 2 -n 6 rm /var/logs/syslog
ionice -c 2 -n 6 rm -rf /var/log/apache
注: 大きなファイルを安全な方法で削除するためには、rmコマンドの代わりに、前述の安全削除ツールキットにあるshred、wipe、およびさまざまなツールを使用することがあります。
詳細については、ioniceのマニュアルページをご覧ください:
# man ionice
今はこれだけです!上記の目的のために他にどんな方法を考えていますか?下のコメントセクションで私たちと共有してください。