Linux rm を誤って実行した場合は、実行する必要がない場合があります

王林
リリース: 2024-02-11 21:33:19
転載
467 人が閲覧しました

Linux システムで誤って削除したファイルをソフトウェアを使って復元することは本当に不可能なのでしょうか?

Linux rm を誤って実行した場合は、実行する必要がない場合があります

ファイルの回復は 2 つの状況に分類できます

  • 1 つは、削除後もプロセスに削除情報が残っていることです。
  • もう 1 つは、削除後にプロセスが見つからず、ツールを使用しないと復元できないことです。

今日は、ファイルが削除された後も関連プロセスがまだ存在する状況についてのみ説明します

#「

この状況は通常、アクティブなプロセスが標準入力または標準出力の実行を継続し、ファイルが削除された後もプロセス PID が存在する場合に発生します。これは、一部のサーバーが特定のファイルを削除してもディスク領域が解放されない理由でもあります。

#メッセージを受信しました。Linux システムで誤って削除されたファイルをソフトウェアを使用して復元することは本当に不可能ですか?
ファイルの回復は 2 つの状況に分けられます。1 つは、削除後のプロセスに削除情報がまだ存在する場合です。もう 1 つは、削除後にプロセスが見つからず、ツールを使用しないと復元できない場合です。

今日は、ファイルが削除された後も関連プロセスがまだ存在する状況についてのみ説明します。 > この状況は通常、アクティブなプロセスが標準入力または標準出力を実行し続けている場合に発生し、ファイルが削除された後もプロセス PID が存在します。 。これは、一部のサーバーが特定のファイルを削除してもディスク領域が解放されない理由でもあります。

ケースデモンストレーション

ファイルを作成します

リーリー

tail -f を使用して rumenz.txt ファイルを開きます

#「

目的は、

rumenz.txtが削除された後もプロセスが存在できるようにすることです

# リーリー

新しいターミナルを開いて

rumenz.txtを削除します。 リーリー

rumenz.txt を占有しているプロセスを見つけます

lsof を使用して、削除されたファイル プロセスがまだ存在するかどうかを確認します。
  • インストールされていない場合は、yum install lsof または apt-get install lsof
  • を実行してください。 rree
#「

进程ID是10222,从上面可以看出,当前文件状态为已删除(deleted)

恢复文件

  • /proc/10222/fd:进程操作的文件描述符目录
> cd /proc/10222/fd
> ls -al
dr-x------ 2 root root  0 May 11 21:41 .
dr-xr-xr-x 9 root root  0 May 11 21:41 ..
lrwx------ 1 root root 64 May 11 21:41 0 -> /dev/pts/1
lrwx------ 1 root root 64 May 11 21:41 1 -> /dev/pts/1
lrwx------ 1 root root 64 May 11 21:41 2 -> /dev/pts/1
lr-x------ 1 root root 64 May 11 21:41 3 -> /root/test/rumenz.txt (deleted)
lr-x------ 1 root root 64 May 11 21:41 4 -> anon_inode:inotify
ログイン後にコピー

开始恢复文件

> cp 3 /root/test/rumenz.txt
> cat /root/test/rumenz.txt
123
ログイン後にコピー

能恢复的根本原因

当程序运行时,操作系统会专门开辟一块内存区域,提供给当前进程使用,对于依赖的文件,操作系统会发放一个文件描述符,以便读写文件,当我们执行rm -f删除文件时,其实只是删除了文件的目录索引节点,对于文件系统不可见,但是对于打开它的进程依然可见,即仍然可以使用先前发放的文件描述符读写文件,正是利用这样的原理,所以我们可以使用I/O重定向的方式来恢复文件。

以上がLinux rm を誤って実行した場合は、実行する必要がない場合がありますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:lxlinux.net
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!