トップ 差分 一覧 ソース 置換 検索 ヘルプ PDF RSS ログイン

Linuxでコマンドの履歴を残す

http://www.drk7.jp/MT/archives/000988.html

実行コマンドのログをとる方法は以下の5つが考えられます。

  • sudo を使って実行ログをとる
  • .bash_history を定期的にバックアップして実行ログとして保存する
  • script コマンドを使うことで実行ログ(画面出力のコピー)をとる
  • システムアカウンティング機能(psacct)を有効にして実行ログをとる
  • 実行シェルを改造し、ログを保存するようにする

問題点

  • sudo の場合 → sudo -s で抜け道がある。
  • .bash_history の場合 → 実行ユーザが .bash_history を削除できる
  • script コマンドの場合 → 実行ユーザがログファイルを削除できる
  • システムアカウンティング機能(psacct)の場合 → 余分な情報が多すぎ
  • 実行シェルを改造し、ログを保存するようにする → 実装が難しい

history

history に日時を残すには

export HISTTIMEFORMAT='%F %T '

を .bash_profile あたりに追加する

psacct

無難そうなpsacctの使い方

yum install psacct
chkconfig --level 2345 psacct on

 使用頻度確認

sa -m

 コマンドの履歴確認

lastcomm
lastcomm --user ユーザー名
lastcomm --command vim

とか

 ログの場所

/var/account/pacct
[カテゴリ: OS > Linux]



  • Hatenaブックマークに追加
  • livedoorクリップに追加
  • del.icio.usに追加
  • FC2ブックマークに追加

最終更新時間:2012年06月14日 22時28分56秒