linux系统记录登录用户的所有操作

(base) [root@lnpg ~]# mkdir -p /db/user_audit

(base) [root@lnpg ~]# touch /db/user_audit/user_audit.log

(base) [root@lnpg ~]# chown nobody:nobody /db/user_audit/user_audit.log

(base) [root@lnpg ~]# chmod 002 /db/user_audit/user_audit.log

(base) [root@lnpg ~]# chattr +a /db/user_audit/user_audit.log

(base) [root@lnpg ~]# vi /etc/profile

/etc/profile

复制代码
export HISTORY_FILE=/db/user_audit/user_audit.log
export PROMPT_COMMAND='{ date "+%Y-%m-%d %T ##### $(who am i |awk "{print \$1\" \"\$2\" \"\$5}")  #### $(id|awk "{print \$1}") #### $(history 1 | { read x cmd; echo "$cmd"; })"; } >> $HISTORY_FILE'

(base) [root@lnpg ~]# source /etc/profile

新开窗口做操作,可以看到实时的记录到用户的操作

(base) [root@lnpg ~]# tail -f /db/user_audit/user_audit.log

2025-10-20 11:57:07 ##### root pts/2 (10.168.20.66) #### uid=0(root) #### source /etc/profile

2025-10-20 11:57:33 ##### root pts/4 (10.168.20.66) #### uid=0(root) #### history|head

2025-10-20 11:57:42 ##### root pts/4 (10.168.20.66) #### uid=0(root) #### pwd

2025-10-20 11:57:49 ##### root pts/4 (10.168.20.66) #### uid=0(root) #### ls

2025-10-20 11:57:58 ##### root pts/4 (10.168.20.66) #### uid=54323(dmdba) #### exit

2025-10-20 11:58:05 ##### root pts/4 (10.168.20.66) #### uid=54323(dmdba) #### free -h

将文件名按日志保存写入:

复制代码
export CURRENT_DATE=$(date "+%Y-%m-%d")
export HISTORY_FILE=/db/user_audit/user_audit_${CURRENT_DATE}.log
export PROMPT_COMMAND='{ date "+%Y-%m-%d %T ##### $(who am i |awk "{print \$1\" \"\$2\" \"\$5}")  #### $(id|awk "{print \$1}") #### $(history 1 | { read x cmd; echo "$cmd"; })"; } >> $HISTORY_FILE'


=========================

(base) [root@lnpg ~]# chmod -R 777 /db/user_audit/
chmod: changing permissions of '/db/user_audit/user_audit.log': Operation not permitted
(base) [root@lnpg ~]# ll /db/user_audit/*
-rwxrwxrwx 1 root   root    294 Oct 20 13:32 /db/user_audit/user_audit_2025-10-20.log
--------w- 1 nobody nobody 2347 Oct 20 13:31 /db/user_audit/user_audit.log
(base) [root@lnpg ~]# chown -R nobody:nobody /db/user_audit/
chown: changing ownership of '/db/user_audit/user_audit.log': Operation not permitted

https://chat.deepseek.com/share/x4feonhrk3w1vifbvq

相关推荐
Trouvaille ~7 分钟前
【Linux】理解“一切皆文件“与缓冲区机制:Linux文件系统的设计哲学
linux·运维·服务器·操作系统·进程·文件·缓冲区
ITKEY_9 分钟前
archlinux 通过wpa_supplicant 连接wifi固定ip设置方法
linux·固定ip
@淡 定16 分钟前
异常处理最佳实践
java
一起养小猫18 分钟前
LeetCode100天Day1-字符串匹配与Z字形变换
java·leetcode
白宇横流学长20 分钟前
基于SpringBoot实现的冬奥会科普平台设计与实现【源码+文档】
java·spring boot·后端
APIshop31 分钟前
Java爬虫1688详情api接口实战解析
java·开发语言·爬虫
Evan芙1 小时前
Tomcat内存机制以及按场景调优
java·tomcat
FIT2CLOUD飞致云1 小时前
操作教程丨通过1Panel快速安装Zabbix,搭建企业级监控系统
运维·服务器·开源·zabbix·监控·1panel
总爱写点小BUG1 小时前
打印不同的三角形(C语言)
java·c语言·算法
幸存者letp1 小时前
Python 常用方法分类大全
linux·服务器·python