/ tmpに何千もの.svgファイルが作成されましたが、削除されませんでした。

/ tmpに何千もの.svgファイルが作成されましたが、削除されませんでした。

明らかに数ヶ月間、一部のプロセスは毎分/ tmpに空の.svgファイルを生成し、そのまま残しました。今、私はこれらの262バイトファイルのうち43,000を蓄積しました。定期的に削除することもできますが、原因を見つけて防ぐことができれば本当に良いです。

これが何であるか、どうやって知ることができるかを知っている人はいますか?私は別のファイルシステムに/ tmpを再マウントする方法を見つけたくありません。この回答、auditctlは機能しません。これらのメソッドがなければ、ループでlsofを実行できますか?まだ何も生産していません。

.svgの内容は次のとおりです(常に同じ)。

$ cat /tmp/tmpuo80js2t.svg
<?xml version="1.0" encoding="UTF-8"                         standalone="no"?><svg id="empty" xmlns="http://www.w3.org/2000/svg"                         height="22" width="1" version="1.0"                         xmlns:xlink="http://www.w3.org/1999/xlink"></svg>

更新:ファイル名パターンは/tmp/tmp????????.svg次のとおりです。

/tmp/tmpsxzk1ktl.svg
/tmp/tmpti2by97z.svg
/tmp/tmp0woym_0_.svg

答え1

まあ、私はauditctlを正しく理解していないことがわかりました。これを利用して犯人を追跡することができました。

だからそれはすべてです。メトリックシステムモニタ。それ定期的な死Ubuntuでは、毎分再起動するスクリプトでラップしました。私の考えでは、起動時にのみこのファイルが生成されるようです。おそらく私がファイルを終了した方法のためにクリーンアップする機会が与えられていない可能性があります。 (私はエラーがそれ自体で解決されていないのではなく、私が間違っていると仮定します。)

子孫のために私が追跡した方法は次のとおりです。

まず、次auditdを見始めました/tmp

$ sudo auditctl -w /tmp

次に、ファイルの1つの作成を記録するのに十分な時間を観察し、最新のファイルを選択してログからそのファイルを検索します。

$ ls -lt /tmp/tmp*.svg | head -n 1
-rw------- 1 me me 262 Jul  5 13:42 /tmp/tmp4i0zh3mj.svg
$ ausearch -i -f /tmp/tmp4i0zh3mj.svg

出力には、複数のプロセスに関する複数の項目が含まれていますがnametypeCREATEproctitleこのディレクティブのコマンド()はです/usr/bin/python3 /usr/bin/indicator-sysmonitor

関連情報