ウェブサイト検索

Linux で巨大な (100 ~ 200 GB) ファイルを削除する方法


Linux ターミナル操作の領域では、ファイルを効果的に削除または除去する目的で、さまざまな Linux コマンドを自由に使用できます。

ファイルを削除するタスクに関しては、システムからファイルを迅速に消去する「rm」コマンドが一般的です。セキュリティと保証を強化するために、「シュレッド」コマンドが機能し、ファイルを完全かつ安全に削除し、痕跡を残さないようにします。

さらに、「ワイプ」コマンドは追加の保護層を提供し、復元の可能性を超えてファイルを安全に消去します。より複雑なシナリオや高度なファイル削除のニーズの場合は、安全なファイル削除の最高基準を満たすように設計された安全な削除ツールを利用できます。

これらの強力なオプションを自由に使用できるため、Linux ターミナル環境からファイルを自信を持って効果的に削除できます。

上記のユーティリティのいずれかを使用して、比較的小さなファイルを処理できます。たとえば100~200GBほどの巨大なファイルやディレクトリを削除したい場合はどうすればよいでしょうか?

これは、ファイルの削除 (I/O スケジューリング) にかかる時間と、操作の実行中に消費される RAM の量の点で、思ったほど簡単ではないかもしれません。

このチュートリアルでは、Linux で巨大なファイル/ディレクトリを効率的かつ確実に削除する方法を説明します。

ここでの主な目的は、巨大なファイルを削除する際にシステムの速度を低下させず、合理的な I/O を実現する手法を使用することです。これはionice コマンドを使用して実現できます。

ionice コマンドを使用して Linux で巨大な (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 コマンドの代わりに、前述の安全な削除ツールキットを使用します。

詳細については、ionice のマニュアル ページを参照してください。

man ionice 

今のところはここまでです!上記の目的のために他にどのような方法を考えていますか?以下のコメントセクションを使用して私たちと共有してください。