root@ms:~# cd /etc
#更改之前先备份,养成良好的习惯,否则肠子都要悔青了
root@ms:/etc# cp profile profile.bak
root@ms:/etc# vi profile
在文章末尾加入下列shell脚本
history
USER=`whoami`
USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`
if [ "$USER_IP" = "" ]; then
USER_IP=`hostname`
fi
if [ ! -d /var/log/history ]; then
mkdir /var/log/history
chmod 777 /var/log/history
fi
if [ ! -d /var/log/history/${LOGNAME} ]; then
mkdir /var/log/history/${LOGNAME}
chmod 777 /var/log/history/${LOGNAME}
fi
export HISTSIZE=4096
DT=`date +"%Y%m%d_%H:%M:%S"`
export HISTFILE="/var/log/history/${LOGNAME}/${USER}@${USER_IP}_$DT"
chmod 600 /var/log/history/${LOGNAME}/*history* 2>/dev/null
/var/log/history/这个文件路径可以自己定义。
然后重启
root@ms:~#reboot
再次登录进去,进行几个操作,cd啦,ls啦,做个样子就行了。
然后退出登录。
再登录进去。
root@ms:~# cd /var/log/history
root@ms:/var/log/history# ls
#列出了以登录用户为名的文件夹
root
root@ms:/var/log/history# cd root
root@ms:/var/log/history/root# ls
#列出登录日志 格式:用户名@IP地址_时间
root@219.144.205.86_20181019_10:18:17
root@ms:/var/log/history/root# cat root@219.144.205.86_20181019_10:18:17
#列出上次操作的所有shell命令
cd /var/log/
ls
cd history/
ls
cd root/
ls
cd
ls
ci /etc/profile
vi /etc/profile
cd /etc/
ls
cd
cd /home/
ll
cd /var/log/history/
ls
cd root/
ls -l
useradd test
passwd test
exit
注意!注意!注意!
在创建用户的时候,尽量使用adduser
要问为什么,就是在useradd的时候没有创建用户的家目录,在登录此用户的的时候会报错。
Could not chdir to home directory /home/test: No such file or directory
-sh: 29: history: not found
$
完结。