如何才能不要求 root 身份识别来编辑某些目录中的文件?

如何才能不要求 root 身份识别来编辑某些目录中的文件?

我的电脑上安装了最新版本的 Ubuntu。我想设置它,以便我可以轻松地在PHP、JavaScript、HTML 和 CSS

我已经安装了 Nginx 并进行了设置,安装了 MySQL 并进行了设置,还有一个编辑器(还没有决定是使用 Sublime Text 2 还是 PhpStorm 6,不过目前这还不是问题),然后有点作品。

我的主要问题是,我需要做sudo任何事情才能编辑甚至访问任何配置文件,甚至是公共 www 文件。这真是太烦人了。我不想为了开发而打开每个程序的终端窗口。我知道有,gksu但同样,必须一次又一次地识别所有东西很烦人。

另外,我无法安装 sublime-text 插件,因为权限被拒绝错误。同样,我不想sudo每次使用 sublime 时都这样做!

值得一提的是,我正在开发图形用户界面,包括正在运行的程序等等。

提前致谢。

答案1

为了能够从文件管理器更改任何文件,请使用:

sudo nautilus

要在后台运行它,请使用:

sudo nautilus &

要更改文件以便您始终可以访问它们,请右键单击每个文件夹,Properties然后单击Permissions选项卡,然后将下拉菜单中的权限更改为您的用户名而不是 root。确保您可以读取和写入目录。这对大多数配置文件来说并不安全。

为了能够只更改您正在处理的内容,您应该始终为该用户启动一个终端,该终端可以只更改您需要的内容。这就是使 Linux 安全的原因。特别是对于服务器 (wwww)。然后从该用户启动 GUI。(如 nautilus 或文本编辑器)。为了能够更改 www 文件夹中的文件,请使用:

sudo su - www-data -s /bin/bash(使用 www-data 用户在 shell 内打开一个新的 bash shell)

从这里您可以做如下事情:

gedit &(这将在后台启动 gedit 文本编辑器,您可以使用它来编辑 www 文件夹中的所有文件。您可以使用任何其他编辑器。此后,如果您不想要调试信息,可以关闭终端。)

如果您使用 root 用户在 www 文件夹中创建了新文件,这些文件将以 root 作为用户和组,您应该将这些文件更改为 www-data。

www-data 也可能是 www 或其他用户。

最好的方法仍然是复制、以普通用户身份编辑、备份并以特权用户身份复制回来并更改权限。但我明白为什么你不想每次都这样做。

相关内容