我有 Ubuntu 13.10。我有一个键盘记录器来帮助我记住我做了什么。当我像这样运行它时,运行键盘记录器会将输出打印到终端:
keylogger
我将它添加到启动中,如下所示:
keylogger >>/home/user/log
它记录得很好,但是当日志文件超过 1MB 或 2MB 时,它会停止写入日志文件。
输出重定向有这样的文件大小限制吗?
编辑#1
我忘了提及,我的文件是一个隐藏文件/home/user/.log
,例如 ,以防万一。
编辑#2
输出ulimit -a
:
$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 23953
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 23953
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
答案1
您可能是进程或通过 ulimit(或 limit)进行用户限制所施加的文件大小限制的受害者。
答案2
您没有指定,但是当您仅在终端中运行它或从启动时运行它时,它是否会出现此问题?
另外为了了解它停止的原因,我会进一步调试它,如下所示:
$ strace -s 2000 -o keylog.log keylogger >> /home/user/log
答案3
也许是配置错误的日志旋转器?也许另一个应用程序试图获取您的文件? (使用另一个名称)。
键盘记录器停止后,您可以将任何内容添加到日志文件中吗?总而言之,如果您想要终端上显示的内容,您可以使用“脚本”。否则,您可以通过终端的历史记录(例如 .bash_history)看到您最近使用的命令。