当我从 Ubuntu 终端向 SVN 存储库提交更改时,出现此错误,如何解决?

当我从 Ubuntu 终端向 SVN 存储库提交更改时,出现此错误,如何解决?

当我在 SVN 存储库提交更改时,我总是在 Ubuntu 终端中遇到以下问题:

Error reading /home/ssylee/.nano_history: Permission denied

有什么想法可以解决它吗?

答案1

这通常是由运行 引起的sudo nano [file]。这将以 root 身份运行 nano 进程,但保留$HOME设置为普通用户的主目录,因此如果 nano 创建任何文件(包括 .nano_history 文件),它将归 root 所有并放置在您的主目录中。

您可以通过运行来验证这一点:

ls -l /home/ssylee/.nano_history

如果ls报告文件所有者为root,那么您可以合理地确定这是原因。如果是,则可以通过运行以下命令修复此情况:

sudo chown $USER: ~/.nano_history

或者拼写出该命令:

sudo chown ssylee: /home/ssylee/.nano_history

一个更好的习惯是使用sudoeditsudo -e代替sudo nano。这将$EDITOR在正在编辑的文件副本上运行程序,然后在编辑器退出时自动替换原始文件(这在编辑系统文件时非常有用)。

默认情况下,这可能会启动vi,但你可以通过如下方式调用它来暂时修复此问题:

EDITOR=nano sudoedit [filename]

您可以永久配置$EDITOR您的.bashrc,或通过放置

EDITOR=nano

/etc/environment

答案2

chmod最简单的方法是删除有问题的文件。其次最简单的方法是使用/使其可读chown。再其次最简单的方法是使用不同的编辑器。

答案3

我总是用这个:
sudo chown -R username:username /home/username

解决了权限混乱的问题。

答案4

只需按如下方式更改文件的权限.nano_history

sudo chown youruser:yourgroup /home/<username>/.nano_history

完成!消息消失了!=)真的就这么简单。

相关内容