Reg*_*ser 63 sudo software-installation
这似乎是一个先有鸡还是先有蛋的问题。最常见的任务sudo是安装和删除软件。
sudo apt-get purge <appname>
Run Code Online (Sandbox Code Playgroud)
但sudo本身是可以去除的。
sudo apt-get purge sudo # Do not run this command on production computers!
Run Code Online (Sandbox Code Playgroud)
这就是乐趣所在
ubuntu@ubuntu:~$ sudo
bash: /usr/bin/sudo: No such file or directory
Run Code Online (Sandbox Code Playgroud)
虽然很明显没有人会清除sudo(除了我之外),但有人可能会被愚弄运行此命令(不是直接,以十六进制模式,或其他任何名称),或者有人可以伪装成技术大师进行SSH和做的烂摊子。
那么有没有办法重新安装sudo?
Rad*_*anu 59
我可以使用以下方法安装应用程序:
pkexec apt-get install <appname>
Run Code Online (Sandbox Code Playgroud)
来自man pkexec:
Run Code Online (Sandbox Code Playgroud)pkexec allows an authorized user to execute PROGRAM as another user. If username is not specified, then the program will be executed as the administrative super user, root.
所以,我想这也pkexec apt-get install sudo应该有效。
编辑:现在我可以确认:是的,sudo可以使用以下方法安装pkexec apt-get install sudo:
(点击放大)
Avi*_*Raj 22
是的,sudo可以通过chroot方法重新安装软件包。
首先从 Ubuntu 实时磁盘启动。
将之前安装的 Ubuntu 分区挂载到您想要的任何目录中/media/ubuntu。就我而言,我将它挂载到.
sudo mkdir /media/ubuntu
sudo mount /dev/sdaX /media/ubuntu # /dev/sdaX - previously installed Ubuntu partition.
Run Code Online (Sandbox Code Playgroud)默认情况下,您在 chroot 到分区后无法获得互联网连接。因此,请运行以下命令使其工作。
for d in dev sys run proc; do sudo mount --bind /$d /media/ubuntu/$d ; done
Run Code Online (Sandbox Code Playgroud)感谢@Oli 提供了这段精彩的代码。
现在 chroot 进入那个挂载的目录,
$ sudo chroot /media/ubuntu
# apt-get update
Run Code Online (Sandbox Code Playgroud)sudo通过运行安装包,
# apt-get install sudo
Run Code Online (Sandbox Code Playgroud)现在退出 chroot 环境。
exit
Run Code Online (Sandbox Code Playgroud)最后启动你的 Ubuntu 操作系统。现在测试你的sudo命令,它肯定会工作。
| 归档时间: |
|
| 查看次数: |
16304 次 |
| 最近记录: |