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

相关推荐
小猪佩奇TONY4 分钟前
Linux 内核学习(18) --- linux dma_buf 机制
linux·运维·学习
维天说7 分钟前
Agent会听人话,反而更难管
java·开发语言·人工智能
SamDeepThinking8 分钟前
if嵌套最好控制在3层以内
java·后端·程序员
边境悍匪10 分钟前
蜗牛学苑 Java 智能体学习 Day36|阿里云 OSS 文件上传、Spring 事务、全局异常思维导图复盘
java·学习·阿里云
苏渡苇11 分钟前
Spring Insight 里上报 Span 为什么用 JDK HttpClient 而不是 RestTemplate
java·后端·spring·spring cloud·springboot·性能监控
zhengqweasd13 分钟前
网站卡死、接口超时的隐性根源
运维·服务器·网络
AIGS00114 分钟前
工艺参数散在Excel和纸质文件里,能不能统一管、随查随用
服务器·数据库·excel·经验沉淀·知识管理·工艺知识·本体语义
裕晟资质规划14 分钟前
军工保密资质二级申报的四个可量化硬条件:条文位置、数值口径与西安配套企业实务要点
java·服务器·网络·数据库·算法
初願致夕霞16 分钟前
C/C++传统程序内存分布(代码实测)
java·c语言·c++
掉鱼的猫16 分钟前
不只是 Token 流:Solon AI 4.1 的语义化聊天事件
java·openai