-1

我想写一个小工具来记录用户copy在他们的系统中执行的操作。这可以覆盖系统复制功能吗?我想记录他们的文件名,并执行时间戳,以及操作是否成功。

这可以为类 linux 系统做这些黑客攻击吗?有任何想法吗?谢谢。

4

2 回答 2

1

您可以为命令创建一个包装器cp(假设您的意思是 with copy)。

重命名cp:

mv /usr/bin/cp /usr/bin/real.cp

然后创建一个名为的新文件/usr/bin/cp并添加以下内容:

#!/bin/sh

USER=`whoami`
DATE=`date`

echo "$DATE - $USER: $@" >> /var/log/yourlog

real.cp $@

exit

确保/var/log/yourlog所有用户都可写。 $@包含所有命令行参数。因此,如果您将它们传递给 cp,它将再次将它们传递给 real.cp。

于 2012-07-08T08:43:41.627 回答
1

如果您正在谈论窗口管理器的复制/粘贴行为,我认为这是不可能的,除非您准备好修改源代码然后重新编译它。

但是,如果您在终端中谈论 cp 命令,那么您可以在 /home/your_user/.bashrc 中创建一个“别名”,这样每次调用“cp”时,都会调用一个更高级的命令,即调用date +%s 获取时间戳,并执行您想做的任何其他事情,例如在实际调用真正的 cp 之前将其记录到 /var/log/my_cp_log 中。

于 2012-07-08T03:36:41.597 回答