非 root 用户的 emacs 权限问题(Ubuntu 11.10)

非 root 用户的 emacs 权限问题(Ubuntu 11.10)

背景

我正在开发我的个人 VPS,主要用于学习系统管理员和个人项目。遇到了一个问题,我的非 root 用户只能使用sudo命令在 emacs 中创建/编辑文件。这不是目录权限的问题,因为我可以在没有 sudo 的情况下创建文件touch

  • 不记得了,但 emacs 可能最初是由 root 用户安装的。
  • 用户创建并添加如下:
    • root@hadron:~# adduser my_user
    • root@hadron:~# addgroup admin
    • root@hadron:~# adduser my_user admin

具体内容

运行类似的命令emacs newfile.txt总是会打开一个无法保存的空白文档,并在终端底部的文件路径中记下以下内容:File exists: /home/my_user/.emacs.d/

检查.emacs.d文件,权限如下:

  • drwx------ 3 root root 4096 2012-03-26 08:07 .emacs.d

更改 .emacs.d 文件的权限以允许任何人访问它可以解决问题,但这似乎不是正确的解决方案:

  • chmod 777 ~/.emacs.d
  • drwxrwxrwx 3 root root 4096 2012-03-26 08:07 .emacs.d

解决这个问题的适当方法是什么?

答案1

目前尚不完全清楚哪个用户尝试运行 emacs。

还不清楚命令是什么

$ adduser my_user admin

是的。你的意思是

$ adduser --group admin my_user

这里?

.emacs.d用户主目录中的目录应归用户自己所有。因此

$ chown -R my_user ~/.emacs.d
$ # Fix the 'broken' permissions
$ chmod go-w ~/.emacs.d

在最后一条命令中,您可能还想添加xr标志以删除组和其他人的读取和执行权限。

相关内容