GNU/Linux >> Linux の 問題 >  >> Linux

現在書き込み中の削除済みファイルを復元する

tail の使用 フォローモードでは、やりたいことができるはずです。

tail -n +0 -f /proc/<pid>/fd/<fd> > abc.deleted

簡単なテストを行ったところ、ここで動作するようです。ファイルがバイナリファイルであるかどうかについては言及していません。私の主な懸念は、ファイルの先頭からコピーされない可能性があることですが、-n +0 引数はバイナリ ファイルに対してもコピーする必要があります。

ダウンロードの最後に tail コマンドが終了しない場合があるため、自分で終了する必要があります。


実は私には別の考えがありました。別のコマンドを使用して /proc/<pid>/fd/<fd> を読み取る場合 そのプログラムを実行し続け、ダウンロードが完了したら、適切な /proc/<pid2>/fd/<fd2> からコピーできます 2 番目のコマンドのファイル。

試してみてください

less /proc/<pid>/fd/<fd>

別のシェルで。 less コマンドの /proc エントリを見ると、削除されたファイルが表示されます。


Linux
  1. /proc/[pid]/pagemaps および /proc/[pid]/maps | Linux

  2. プロセスが実行されているフォルダーを見つける方法は?

  3. unix:///var/run/supervisor.sock そのようなファイルはありません

  1. echo または print /dev/stdin /dev/stdout /dev/stderr

  2. /dev/tcp を使用するために < または > が必要な理由

  3. 推奨される使用方法に従って、Web サイトは /var/ または /usr/ に配置する必要がありますか?

  1. Linuxは複数の連続したパスセパレーター(/ home //// username /// file)をどのように処理しますか?

  2. Linux – / proc/mntを/proc/ mountsにリンクしますか?

  3. Ubuntu 14.04「エントリーファイルで再生Uriを取得しませんでした:/// *」?