私は CrunchBang マシンを使用しており、OS のインストール日を参照する必要があるスクリプトを作成しようとしています。
検索して次のコマンドを見つけました:
ls -lct /etc | tail -1 | awk '{print $6, $7, $8}'
印刷します
Mar 31 21:24
そのtail -1
部分は理解できませんでしたが、$6 $7 $8 はコマンドが参照している最後の行の 6 番目、7 番目、8 番目の出現であることは理解できました。
しかし、コマンドに年が表示されなかったため、年を含めることができないことに気付きましたls -ltc
。
/etc
作成日を見つける方法や、/var/log/syslog
その他を確認する方法を提案する人もいました。これらはディストリビューションに少し特有のものではないかと考えました。
OS のインストール日を見つけるための、ディストリビューションに依存しない方法として、どのような方法をお勧めしますか?
答え1
ext{2,3,4} ファイルシステムがあり、OS をインストールしたときにルート ファイルシステムをフォーマットした (そして、ワイプなしで別の OS からアップグレードしていない) と仮定すると、dumpe2fs を使用できます。
% dumpe2fs -h /dev/mapper/vg_desktop-lv_root 2>&1 |grep 'Filesystem created'
Filesystem created: Sat Jul 23 04:28:07 2011
答え2
これに対する正式な方法は知りません。
私がいつもやってきたことは、
touch /install-`date +"%F"` && chattr +i /install-20*
これにより、「install-」の後に現在の日付が続くファイル (今日実行した場合は install-2012-04-03) が作成され、不変として設定されるため、誤って削除されることはありません。
では、そのファイルを見て、OS がいつインストールされたかを確認するだけです。