在我的主目录中,我有一个运行 rdiff-backup 的程序,我以 root 权限作为 cron 运行该程序。
我在此过程中使用 touch 创建的输出日志文件。
在此过程结束之前我做了一件事sudo chown <me>:<me> /home/<me>/<log-file>
。
在 14.04 中我可以正常打开此日志文件,但在 16.04.1 中我需要输入密码。
行为为何发生改变?
这里是程序内部的 ls-l:
#touch $LogDatei;
#ls -l $LogDatei;
-rw-r--r-- 1 root root 0 Sep 23 11:41 /home/khg/Sicherungen/logs/2016-09/2016-09-23-11-41-02-reorg.log
#rdiff-backup --remove-older-than 10Y /media/KHG0001TB/ &>> $LogDatei;
#ls -l $LogDatei;
-rw-r--r-- 1 root root 66 Sep 23 11:41 /home/khg/Sicherungen/logs/2016-09/2016-09-23-11-41-02-reorg.log
#chown khg:users $LogDatei;
#touch $LogDatei
#ls -l $LogDatei;
-rw-r--r-- 1 khg users 66 Sep 23 11:41 /home/khg/Sicherungen/logs/2016-09/2016-09-23-11-41-02-reorg.log
当我将这些ls -l
行插入脚本时,我注意到,我也只能用密码打开此文件。所以这似乎是一个普遍的问题。
#getfacl /home/khg/Sicherungen/logs/2016-09/2016-09-23-11-41-02-reorg.log -e
# file: home/khg/Sicherungen/logs/2016-09/2016-09-23-11-41-02-reorg.log
# owner: khg
# group: users
user::rw-
group::r--
other::r--
答案1
从 14.04 更新到 16.04 时,文本 *.log 的应用程序顺序发生了变化。我有一个名为 Kate 的“kate”条目和一个名为 KateP 的“kdesudo kate”条目。
按照旧顺序,‘kate’ 排在第一位。更新后,‘kdesudo kate’ 排在第一位。
原因就是这样。