每当我尝试使用sudo
. 我将/var/
文件夹的权限更改为777
,我认为这会导致错误。请帮我找回一个功能性sudo
和/var
.
你有一个非常大的问题,但不是真正为这里所述原因。
更改所有权限/var
可能会使您无法正确恢复所有权限,因为您将不知道每个文件应该具有哪些权限。您以后可能会遇到问题。根据具体情况,您的问题可能与安全相关。
因此,您不妨考虑重新安装 Ubuntu。或者,您可以尝试从另一个类似的完整系统中的文件获取权限。权限通常相同。通常。一个更严重的问题是,您的系统中可能有一些文件在/var
另一个系统中不存在,因此可能并非所有权限都将得到修复。
不过,在没有工作的情况下在桌面系统上执行管理任务sudo
通常非常容易。
当您知道权限应该是什么时,更改回权限很容易,并且很少需要启动到恢复模式或从 Live CD 启动。这是因为,虽然它并不广为人知,但桌面版本的 Ubuntu(以及当今大多数其他 GNU/Linux 操作系统)有两种设置方式来执行管理任务:
虽然我们倾向于将其sudo
视为您root
在 Ubuntu 上执行操作的方式,但实际上 PolicyKit 是大多数(尽管不是全部)图形实用程序变成root
. (多年来一直如此。)
实际上,使用 PolicyKit 手动运行图形程序有时是一项重大任务,因为图形应用程序必须具有特殊的配置文件,PolicyKit 才能愿意运行它们。但是终端应用程序不会——使用 PolicyKit 运行基于文本的命令就像使用sudo
.
要做到这一点,请pkexec
在您原本要输入的地方输入sudo
。(它们不采用所有相同的命令行选项,但最常见的语法sudo
是, 并在其位置上完美运行。)sudo command
pkexec
所以,因为sudo
坏了,你不能运行:
sudo chmod 0755 /mnt/var/lib/sudo
sudo chmod 0700 /mnt/var/lib/sudo/<username>
Run Code Online (Sandbox Code Playgroud)
但是你可以运行:
pkexec chmod 0755 /mnt/var/lib/sudo
pkexec chmod 0700 /mnt/var/lib/sudo/<username>
Run Code Online (Sandbox Code Playgroud)
这是一个好的开始,它可能会sudo
再次发挥作用。(不过,它不会修复 中的所有其他文件/var
。)
相关(但是,在大多数情况下,不相同)的情况下pkexec
是有帮助的:
?如何修改无效的 /etc/sudoers 文件?它抛出一个错误,它不允许我再次编辑来修复它
?在尝试更改 ushare 配置时意外阻止了对 sudoers.d 的访问
?更改“/usr”目录的权限后“sudo”不起作用
?如何在“chmod -R 777 /usr/bin”之后修复sudo?, sudo 错误,是模式 0777,应该是 0440 ,
如何修复“sudo: /etc/sudoers 是模式 0640,应该是 0440?”
? 安装 ZFS 更改了我的 sudoers 文件
?密码对 sudo 不起作用(“身份验证失败”
为什么我随机更改了一些文件权限后不起作用?
? 使用“sudo chmod 665 /etc”更改了oneiric (ubuntu11.10) 中的/etc 权限,现在不能使用sudo
?如何在没有密码的情况下运行特定的 sudo 命令?(只是如果出现问题)
?无法从 Ubuntu live CD 写入 /etc/sudoers(如果出现问题)
归档时间: |
|
查看次数: |
15577 次 |
最近记录: |