17 permissions nano
我使用rkhunter
,我想检查它的日志:
nano /var/log/rkhunter.log
Run Code Online (Sandbox Code Playgroud)
但是nano
输出了这个错误:
Error reading /home/arthur-dent/.nano_history: Permission denied
Press Enter to continue starting nano.
Run Code Online (Sandbox Code Playgroud)
如果我按下ENTER我可以查看文件。我已经检查了该文件的权限,现在它们是:
-rw------- 1 root root 12 May 3 20:26 .nano_history
Run Code Online (Sandbox Code Playgroud)
所以我想我只是将所有权改回给我?但是因为我实际上只是在使用nano
,为什么权限和所有权(可能,因为我不知道原始所有权是什么)会突然改变?是不是因为我只是将它与 一起使用sudo
,如果是这样,这很奇怪,因为以前从未发生过sudo
这样的事情并且我经常使用它?
Description: Ubuntu 15.04
Release: 15.04
Run Code Online (Sandbox Code Playgroud)
nano:
Installed: 2.2.6-3
Candidate: 2.2.6-3
Version table:
*** 2.2.6-3 0
500 http://gb.archive.ubuntu.com/ubuntu/ vivid/main amd64 Packages
100 /var/lib/dpkg/status
Run Code Online (Sandbox Code Playgroud)
A.B*_*.B. 15
如果.nano_history
不存在并且您以 root 身份编辑任何文件,则这是可能的。使用Ctrl+开始搜索操作W并且.nano_history
拥有错误的所有权。
sudo chown arthur-dent:arthur-dent /home/arthur-dent/.nano_history
Run Code Online (Sandbox Code Playgroud)
以后,文件的所有权将不会改变。
我测试过:
% ls -l .nano_history
ls: cannot access .nano_history: No such file or directory
% sudo nano ~/tmp/<any_file>
Run Code Online (Sandbox Code Playgroud)
Ctrl+W
搜索任何东西。
Ctrl+X
% ls -l .nano_history
-rw------- 1 root root 6 Mai 3 22:08 .nano_history
% sudo chown aboettger:aboettger .nano_history
% ls -l .nano_history
-rw------- 1 aboettger aboettger 6 Mai 3 22:08 .nano_history
% sudo nano ~/tmp/<any_file>
Run Code Online (Sandbox Code Playgroud)
Ctrl+W
搜索任何东西。
Ctrl+X
% ls -l .nano_history
-rw------- 1 aboettger aboettger 11 Mai 3 22:11 .nano_history
Run Code Online (Sandbox Code Playgroud)
当您不拥有通常包含在您的主目录中的 .nano_history 文件时,就会发生这种情况。当我第一次在我的 Ubuntu 安装上运行 nano 和 sudo 时,这发生在我身上。这意味着 .nano_history 由 root 拥有并且不可读,除非每次都将 sudo 与 nano 一起使用。不使用时,nano 会在启动时抱怨“权限被拒绝”。将其准确复制并粘贴到您的终端中以解决问题:
sudo chown $USER:$(id -gn) $HOME/.nano_history
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
14899 次 |
最近记录: |