質問の要件を満たすために、一般ユーザーからはこれらのコマンドが実行できないようにしてください。コマンドによってプロセス監視が始められます。コマンドを利用します。終了したコマンドのみ記録されています。実行中のコマンドは取れません。以下のように、絞り込みやグループ化のオプションが用意されています。以下に設定ファイルがおかれます。以下のようなファイルで良いでしょう。(ログは圧縮されています。オプションで指定するときには、展開したデータを渡す必要があります。endscript}以上です。使用にあたっては、監視の粒度に注意したいところです。大量にコマンド実行履歴を集めますが、コマンドの引数は見ません。ディレクトリ監視、ネットワーク監視、負荷監視などとあわせることで、より細かなことがわかるようになるでしょう。カーネルのシステムコールレベルで環境を記録するもので、事細かなシステムのログを取ります。利用が適切かと思います。個の銅バッジ引数と端末への出力が取れないのが残念ですが、統計が分かりやすくて非常に有用ですね。ありがとうございます。11:10コマンドだけを記録していく方法がスマートかなと思ったのですが、セキュリティを視野に入れると、ユーザ打ちこんだコマンドだけを追っていくのは問題がありますので、「プロセス監視」の方に倒してしまいました。有用なツールは内部でコマンドを繰り返し呼ぶ物もありますから、結構ログの量が馬鹿になりません。トレードオフがありますね。|7Bash限定になりますが、端末への出力以外は全て実現可能です。syslog.UID(ユーザ名)ユーザが入力したコマンドタイムスタンプ詳細はこちらに記載がありますので参照下さい。http://d.hatena.ne.jp/tatac1/20120724/1343106093ログを残す際には、ホストの時刻同期、操作される端末と別のホストにSyslogを転送する、更にLDAP等でユーザーを管理すると更にベターです。ログを取る事を考えるのであれば、syslogデータの表示(通常はrootのみ読み取り可能)、bashのバイナリ解析、ptrace等で確認しない限り気付かれにくいと思います。個の銅バッジSyslogで管理できるのは便利で良いですね。残念ながら今Bashのソースがダウンロー出来ないので、試してませんが、ぜひチャレンジしたいと思います。ありがとうございます。いう環境変数が用意されています。呼び出して実行することが可能になります。する事が可能になります。シェルプログラムなどがユーザから入力されたコマンドを実行する際に使われます。使って「ユーザが入力したコマンドライン」を記録することが可能になります。以下は至極単純なサンプルコードです(配列のサイズなどはいい加減です)。出力した方が良いでしょう。