長い話を短くログは約770MiBを保存しますが、表示ログは90MiBのデータのみを生成するのはなぜですか?
#修正する#
私はjournalctl -a -o verbose
少なくとも約530MiBを生成しましたが、ジャーナルがディスクで使用する770MiBより少ないものを作成しました。いずれにせよ、ディスクのログは何らかの形で圧縮され、530MiBより小さくなければなりません。どうしたの?
#アップデート2#
journald
ほとんどは空のログファイルを生成する傾向があるようです。
$> cat [email protected]~ | wc -c
8388608
#> cat [email protected]~ | sed 's/\x00//g' | wc -c
47181
これは@Mioriinのコメントが提案するものかもしれません。ジャーナルドが保存したログファイルが8MiBですが、ほとんど空になる理由はありますか?
背景を持つ長いバージョン
/var/log
私のシステムは、Linuxカーネルdmesg出力、gnome DEなどで非常におしゃべりです。残念ながら、使用しているシステムロガーを介して私のディレクトリを埋めますjournald
(まだ標準のシステムアーチLinuxで)。
探してみるとdu -hs /var/log
約2GiBくらい出てくるのに主にジャーナルですjournald
ね。 90日を過ぎたデータを削除しましたが、journalctl --vacuum-time=90d
残念ながら3ヶ月を過ぎたログは削除され、ログjournald
に使用されるディスク容量が約770MiBに減りました。
$> journalctl --disk-usage
Archived and active journals take up 768.0M in the file system.
本当にすごいです。しかし、私のアーチLinuxボックスに収められた90日間の770MiBデータはかなり多いようで、770MiBがどのような用途に使用されるのかを調べてみました。ログ出力の初期サイズを測定するために、IMHOの最初の論理ステップを実施した。
$> journalctl | wc
584467 7662317 90227741
そしてもう一度確認してみてください。
$ journalctl | dd of=/dev/null iflag=fullblock bs=1M
86+1 records in
86+1 records out
90244229 bytes (90 MB, 86 MiB) copied, 9.21893 s, 9.8 MB/s
何らかの理由で読んでいることを示します。「スペースを節約するのでバイナリです」 journald
プレーンテキストは、770MiB未満のデータを生成せず、90MiBのみを生成します。
今私の質問はなぜこれらの2つの数字が一致しないのですか?愛する人はどのようにjournald
770MiBを使用して90MiBのデータを保存できますか?
「結果を測定し、混乱させること」に加えて、自分自身を助けるために何をしましたか?
私は長いコンテンツを見て、man journactl
それが提供するかなり複雑な詳細にはっきりと圧倒されましたが、バイナリ圧縮ジャーナルデータがバイナリ圧縮ジャーナルデータよりも多くのスペースを使用できるようにする反直観的なコンテンツを提案するものが見つかりませんでしたです。実際のプレーンテキスト複製ログ。
私は「簡単な」説明があるべきだと思う。