linux查看历史命令记录及时间(linux查看历史命令执行时间)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux查看历史命令记录及时间(linux查看历史命令执行时间)相关的知识,希望对你有一定的参考价值。

参考技术A 1."linux查看历史命令,为您提供linux查看历史命令图文信息,打开linux客户端。

2.点击连接linux按钮。

3.输入用户名,主机ip地址。

4.输入密码。

5.显示连接成功,就可以进行操作。

6.输入history命令,即可返回命令的历史记录。

Linux下查看/管理当前登录用户及用户操作历史记录

一、查看及管理当前登录用户

1、使用w命令查看登录用户正在使用的进程信息,w命令用于显示已经登录系统的用户的名称,以及他们正在做的事。该命令所使用的信息来源于/var/run/utmp文件。w命令输出的信息包括:

  • 用户名称

  • 用户的机器名称或tty号

  • 远程主机地址

  • 用户登录系统的时间

  • 空闲时间(作用不大)

  • 附加到tty(终端)的进程所用的时间(JCPU时间)

  • 当前进程所用时间(PCPU时间)

  • 用户当前正在使用的命令

w

 15:09:01 up  4:55,  2 users,  load average: 0.11, 0.06, 0.05

USER     TTY      FROM              [email protected]   IDLE   JCPU   PCPU WHAT

root     tty1     :0               10:14    4:55m  5.93s  5.93s /usr/bin/Xorg :0 -br -verbose -audit 4 -auth /var/run/gdm/auth-for-gdm-QUGS

root     pts/0    desktop-hml9g7j. 10:21    0.00s  1.30s  0.00s w

此外,可以使用who am i查看使用该命令的用户及进程,使用who查看所有登录用户进程信息,这些查看命令大同小异;

2、使用p

二、查看所有登录用户的操作历史

        在linux系统的环境下,不管是root用户还是其它的用户只有登陆系统后用进入操作我们都可以通过命令history来查看历史记录,可是假如一台服务器多人登陆,一天因为某人误操作了删除了重要的数据。这时候通过查看历史记录(命令:history)是没有什么意义了(因为history只针对登录用户下执行有效,即使root用户也无法得到其它用户histotry历史)。那有没有什么办法实现通过记录登陆后的IP地址和某用户名所操作的历史记录呢?答案:有的。

通过在/etc/profile里面加入以下代码就可以实现:

##修改登录命令提示符
PS1="`whoami`@`hostname`:"‘[$PWD]‘
history
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 /log/loginlog ]
then
mkdir -p /log/loginlog
chmod 777 /log/loginlog
fi
if [ ! -d /log/loginlog/${LOGNAME} ]
then
mkdir /log/loginlog/${LOGNAME}
chmod 300 /log/loginlog/${LOGNAME}
fi
export HISTSIZE=4096
DT=`date "+%Y-%m-%d_%H:%M:%S"`
export HISTFILE="/log/loginlog/${LOGNAME}/${USER_IP}_loginlog.$DT"
chmod 600 /log/loginlog/${LOGNAME}/*loginlog* 2>/dev/null

source /etc/profile 使用脚本生效

退出用户,重新登录

上面脚本在系统的/tmp新建个loginlog目录,记录所有登陆过系统的用户和IP地址(文件名),每当用户登录/退出会创建相应的文件,该文件保存这段用户登录时期内操作历史,可以用这个方法来监测系统的安全性。

kill强制退出登录的用户


使用pkill可以结束当前登录用户的进程,从而强制退出用户登录,具体使用可以结合w命令;

首先:使用w查看当前登录的用户,注意TTY所示登录进程终端号

其次:使用pkill –9 -t pts/1 结束pts/1进程所对应用户登录(可根据FROM的IP地址或主机号来判断)







本文出自 “孤独没有颜色” 博客,请务必保留此出处http://tenderness.blog.51cto.com/8855468/1954370

以上是关于linux查看历史命令记录及时间(linux查看历史命令执行时间)的主要内容,如果未能解决你的问题,请参考以下文章

Linux下查看/管理当前登录用户及用户操作历史记录

Linux下查看/管理当前登录用户及用户操作历史记录

linux中查看历史记录

linux命令历史

怎样查看CMD中已运行的命令(历史记录)

linux如何查看用户所有的历史操作记录