ログイン時にサーバ上で自動でログを取得する方法を探していたら、以下のページがありました。
Linux/UNIX 上でコマンドの実行履歴を残す方法
そこに、scriptコマンドを利用したログ取得スクリプトが載っていたのですがLinux専用だったのでFreeBSD版に修正してみました。ただし注意があり、FreeBSDでbashを使う場合だけ利用できます。bashはportsからインストールしないとだめなので、rootの管理用シェルには使えないと思います。
now=`date +%Y%m%d%H%M%S`
user=`whoami`
logfile=/var/tmp/log/script_logs/$user/$now
if [ ! -e /var/tmp/log/script_logs/$user ]
then
mkdir -p /var/tmp/log/script_logs/$user
fi
if [ -e $logfile ]
then
mv -f $logfile $logfile.bak
fi
p_proc=`ps -O ppid|grep $PPID|grep bash|awk '{print $6}'`
if [ "$p_proc" = -bash ]
then
script -q $logfile
exit
fi