私の本番サーバーではatop
バージョン 1.23、このファイルで作成されたデータ ファイルがあり、そのファイルからプロセスの完全なコマンド ラインを抽出する必要があります。
残念ながら:
- このバージョンでは、
atop
ディスプレイの列80以降のデータは表示されません。 - 水平スクロールは1.27でのみ導入されました。
- 新しいバージョンは、以前のバージョンで作成されたデータファイルの読み取りを拒否します。
- ファイル自体が圧縮されており、単純
strings
検索にはなりません
私のデータファイルからコマンドライン全体を回復する方法はありますか?
ベストアンサー1
編集する。マニュアルページを確認した後、完全なコマンドラインを得ることができるようです。
atop -r /var/log/atop.log -P PRG
圧縮ファイルからデータを抽出するいくつかの一般的な方法は次のとおりです。
次のコマンドを使用して、最上位のログファイルからデータを抽出できます。
xxd -p < /var/log/atop.log |
fold -w4 |
awk -v cmd='xxd -r -p | zlib-flate -uncompress | strings' '
/789c/{if (x) close(cmd); x=1}; x {print | cmd}' |
grep your-command
アイデアは、zlibヘッダー(で始まる789c
)を検出してに渡すことですzlib-flate -uncompress
。完璧という保証もなく、最も効率的な方法でもありませんが、私には効果的でした。
代替zlip-flate -uncompress
(一部qpdf)にはとopenssl zlib -d
が含まれますpigz -zd
。