什么 script/user/process 正在写入文件?
What script/user/process is writing to a file?
我正在尝试找出 script/user/process 正在写入文件的内容。
我有 4 台安装了相同 NFS 的主机
我做了一个 scipt 并将它放在所有主机上但没有成功
有人可以帮忙吗
脚本从 5:50 运行到 6:10 这是我的文件被写入的时间段
这是我制作的脚本:
#!/bin/sh
log=~/file-access.log
check_time_to_run() {
tempTime=
if [ $tempTime -gt 555 -a $tempTime -lt 610 ]; then
#Intre intervalul 5:55 si 6:10
lsof /cdpool/Xprint/Liste_Drucker >> $log
else
#In afara intervalului
exit 1
fi
}
while true; do
currTime=`date +%k%M`
check_time_to_run $currTime
sleep 0.1s
done
根本不要为此使用 shell 脚本。相反,安装 sysdig 和 运行:
sysdig 'fd.filename=/cdpool/Xprint/Liste_Drucker'
...保持打开状态,无论何时向该文件写入或读取任何内容,都会打印一条适当的日志消息。
如果要将打印作业的用户名和进程名称(带参数)打印到文件中,可以使用以下格式字符串:
sysdig \
-p '%user.name %proc.name - %evt.dir %evt.type %evt.args' \
'fd.filename=/cdpool/Xprint/Liste_Drucker'
我正在尝试找出 script/user/process 正在写入文件的内容。 我有 4 台安装了相同 NFS 的主机 我做了一个 scipt 并将它放在所有主机上但没有成功 有人可以帮忙吗 脚本从 5:50 运行到 6:10 这是我的文件被写入的时间段 这是我制作的脚本:
#!/bin/sh
log=~/file-access.log
check_time_to_run() {
tempTime=
if [ $tempTime -gt 555 -a $tempTime -lt 610 ]; then
#Intre intervalul 5:55 si 6:10
lsof /cdpool/Xprint/Liste_Drucker >> $log
else
#In afara intervalului
exit 1
fi
}
while true; do
currTime=`date +%k%M`
check_time_to_run $currTime
sleep 0.1s
done
根本不要为此使用 shell 脚本。相反,安装 sysdig 和 运行:
sysdig 'fd.filename=/cdpool/Xprint/Liste_Drucker'
...保持打开状态,无论何时向该文件写入或读取任何内容,都会打印一条适当的日志消息。
如果要将打印作业的用户名和进程名称(带参数)打印到文件中,可以使用以下格式字符串:
sysdig \
-p '%user.name %proc.name - %evt.dir %evt.type %evt.args' \
'fd.filename=/cdpool/Xprint/Liste_Drucker'