Chienomi

【Linux Tips】 それはいつの出来事ですか

Live With Linux::tips

私が使っているVPSが一体いつからあるインスタンスなのか知りたくて、調べようとしたのだが、 journalが残っていなくて、ちょっと変わった方法で調査した。

あまり有用とも言えないが、Tips程度にはなるのでここで紹介しよう。

Journalがあるなら話が早い

最も単純なのはSystemdのログを使用することである。 これは、次のコマンドで確認できる。

journalctl -b 1

Syslogを使っているのなら、/var/log/messagesの最も古いアーカイブを見れば良い。

ただし、Systemd Journalはある程度のサイズで切り詰めていることもあるし、Syslogのログも保存する世代や期間が限定的かもしれない。

Zshのイベント

Zshのイベントは次の容量で記録されている。 (一部抜粋)

: 1590486198:0;git status
: 1590486201:0;git commit -a -m "Update article."
: 1590486203:0;git push
: 1590487044:0;mpvauto .
: 1590490794:0;ffmpeg -ss 239 -t 115 -i Record_2020-05-24-02-49-31.mp4 -c:v libx264 -crf 24 -c:a libopus lv0.mkv
: 1590490863:0;ffmpeg -ss 2264 -i Record_2020-05-25-01-01-37.mp4 -c:v libx264 -crf 24 -c:a libopus arcana.mkv
: 1590490973:0;ffmpeg -ss 474 -i Record_2020-05-26-14-24-31.mp4 -c:v libx264 -crf 24 -c:a libopus transparency.mkv
: 1590556419:0;ffmpeg -t 1415 -i Record_2020-05-27-02-27-32_81285ba1b861b33b22075aa0026ad08f.mp4 -c:v libx265 -crf 27 -c:a copy Record_2020-05-27-02-27-32_choped.mp4
: 1590556438:0;ffmpeg -t 385 -i Record_2020-05-27-00-23-11_81285ba1b861b33b22075aa0026ad08f.mp4 -c:v libx265 -crf 27 -c:a copy ~/Record_2020-05-27-00-23-11_choped.mp4
: 1590556564:0;sudo cpupower frequency-set -g performance
: 1590558900:0;mpv ~/Record_2020-05-27-00-23-11_choped.mp4
: 1590559868:0;mpv Record_2020-05-27-02-27-32_choped.mp4
: 1590560265:0;cd
: 1590560386:0;ssh conoha-main cat
: 1590560556:0;ssh conoha-main socat -u TCP-LISTEN:11155 STDOUT > mysql.tar.xz
: 1590560579:0;cd Degraded
: 1590560580:0;ls -l
: 1590561199:0;ls -lh
: 1590566205:0;cd log
: 1590566223:0;mkdir ConohaMain
: 1590566225:0;cd ConohaMain
: 1590566239:0;rsync -rv conoha-main:log/ ./
: 1590568845:0;ssh conoha-main
: 1590560905:7881;for i in *08f.mp4; do ffmpeg -i "$i" -c:v libx265 -crf 27 -c:a copy "${i%_*}.mp4"; done
: 1590568854:0;rm *08f.mp4
: 1590568863:0;mv ~/Record_2020-05-27-00-23-11_choped.mp4 .
: 1590568864:0;ls
: 1590569154:0;fc -p
: 1590569434:0;exit
: 1590575622:0;ls
: 1590575623:0;ls -a
: 1590575630:0;less .bash_history
: 1590575647:0;journalctl -b 1
: 1590575816:0;less .zhistory

Bashのヒストリには時間の記載はないが、Zshには条件付きである。 Zshのヒストリが共有されるようになっているならば(APPEND_HISTORY、デフォルト有効)、拡張ヒストリを使っているならば(EXTENDED_HISTORY)そこから知ることができる。 拡張ヒストリは使っていない人が多いかもしれないが、grml-zsh-configでは有効になっている。

だが、問題はこれがエポック秒で表示されているということだ。 エポック秒をわかりやすい時間にするにはどうすればいいか。 これは、Rubyを使うと話が早い。

% ruby -e 'puts Time.at 1590490789'
2020-05-26 19:59:49 +0900