我似乎无法在根系统中编辑和保存配置文件(例如/etc/dhcp/dhcpd.config
:);它只是说“权限被拒绝”或文本编辑器中的保存选项被阻止。
我很确定我是 root 用户,但我该如何确定呢?如果我是 root 用户,我该如何修复此问题?
答案1
您使用的是哪种文本编辑器?如果您是 sudoer 并且知道您的密码,请尝试(在终端中):
sudoedit /etc/dhcp/dhcpd.config
如果您正在使用基于终端的编辑器(如)nano
或正在通过 ssh 进入服务器。gedit admin:///etc/dhcp/dhcpd.config
使用协议admin://
gedit
与 GNOME 应用程序(以及支持 GVfs 的其他应用程序)一起使用。sudo -H <text editor> /etc/dhcp/dhcpd.config
适用于一般的 GUI 编辑器。- 在旧版本的 Ubuntu 中,
gksudo <text editor here> /etc/dhcp/dhcpd.config
可用于启动 GUI 编辑器。
无论哪种情况,您都需要在要求时首先提供您的密码。
从 Ubuntu 14.04 开始,gksudo
默认情况下不安装。您必须安装该gksu
软件包(从软件中心或通过sudo apt-get install gksu
)才能获取它。
在 Ubuntu 17.10 中,Wayland 是默认设置,而不是传统的 X 服务器,并且以 root 身份运行图形编辑器很困难。请参阅为什么 gksu/gksudo 或使用 sudo 启动图形应用程序不能与 Wayland 一起使用?了解详情。
在 Ubuntu 18.04 中,gksudo
在官方存储库中不可用。
答案2
如果您不想使用终端,您可以以 root 身份调用 GUI 程序,如下所示(此示例针对 Gedit):
- 按Alt+F2调出运行对话框。
键入
gksudo
后跟程序的可执行名称(可能与 GUI 显示的名称不同)。例如:gksudo gedit
- 打Enter。
答案3
我想不出 root 会得到什么情况permission denied
。
在 12.04 中,您可以这样做: alt+f2并gksudo
在出现的框中输入如下内容:
你会看到一个像这样的框,输入gedit
并点击ok:
点击Open:
只需浏览到该文件:
完毕
警告:存在超级用户/root 是有原因的。这是为了防止您不小心将一些不好或不合结构的内容错误地放入重要内容中。您应该非常小心,确保您以 root 身份编辑的任何内容都是您想要编辑的正确文件,并且您的语法是完美的。如果有其他工具可用于编辑,建议使用这些工具。例如,使用visudo
终端命令而不是手动编辑/etc/sudoers
。
有些文件可能会被弄乱,但恢复起来却很容易。其他文件则相对复杂,或者您必须使用恢复控制台和大量命令行。
是的,恢复控制台命令行看起来比这. 小心一点就好。
答案4
如果你正在使用Ubuntu 17.04或更高版本,建议使用gvfs 管理后端。只需将其添加admin://
到要在应用程序中打开的完整文件路径的前面,例如文本编辑器或者文件应用程序。
例如,要更改启动设置,请打开
admin:///etc/default/grub
如果你使用的是带有默认 Wayland 的 Ubuntu 17.10,sudo
并且gksu
如旧答案中所述,这里将不是工作。