这就是我不断得到的:
ascendermedia@magic2tower:~$ sudo apt-get install flashplugin-installer
bash: sudo: command not found
ascendermedia@magic2tower:~$ sudo apt-get install flashplugin-installer
bash: sudo: command not found
ascendermedia@magic2tower:~$ apt-get install flashplugin-installer
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
ascendermedia@magic2tower:~$ sudo aptitude install flashplugin-nonfree
bash: sudo: command not found
ascendermedia@magic2tower:~$ aptitude install flashplugin-nonfree
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
ascendermedia@magic2tower:~$
我究竟做错了什么?
答案1
root
是系统上的超级用户帐户 - 它(基本上)拥有所有权限。许多系统都经过配置,以便您可以sudo
在另一个命令前面使用该命令来“以 root 身份”运行该命令 — 也就是说,就好像您是 root 用户一样,具有相同的权限。
通常情况下,您需要 root 权限才能安装系统软件包,这就是事实apt-get
。所以,第一次是行不通的,因为你没有sudo
可用的;第二次是因为sudo
它并没有因为你运行了两次而神奇地出现;第三次(和第五次)因为apt-get
(和aptitude
)确实需要 root 权限才能安装这样的软件包。
正如您从第一条错误消息中看到的,sudo 要么未安装,要么不在您的路径中,并且可能未配置。您也许可以进行替换su -c
,并在出现提示时提供 root 密码(帐户的密码root
)。
如果您不知道该密码,则需要 a) 请知道该密码的人员为您执行此任务(如果该密码不是您的系统),或者 b) 找到某种方法来恢复它。
答案2
“你是根吗?”是什么意思?意思是?
为了在系统范围内安装软件包(apt-get
做什么),它需要 root 权限,因为您将创建和更改系统文件(root
是 *nix 管理员帐户的常用名称)。
“你是 root 吗?”该消息是一个温和的提醒,您“需要 root”才能运行apt-get install
。这是该问题最常遇到的原因(如上所示):
/var/lib/dpkg/lock-打开(13:权限被拒绝)
。
如何成为root?
苏
“成为root”的传统方式是运行su
(并提供root用户的密码)。苏(1)代表s上层你序列或s巫婆你爵士
请注意,它可以用来成为任何用户,因此您可以su john
以 john 身份运行以获取 shell。不使用用户名运行su
是 的简写su root
。
为此,必须启用 root 用户帐户并设置密码。某些系统被配置为禁用 root 帐户(即使是默认情况下),以避免有人 - 例如。攻击者-使用管理员帐户登录。在这些情况下,他们提供了另一种运行管理命令的方式,例如 sudo。
须藤
须藤(1)是一个允许您以另一个用户身份执行命令的程序(如上所示,通常为 root 用户执行)。它在 中进行配置/etc/sudoers
,并允许更精细的控制,例如仅允许以 root 身份运行单个程序,特定用户(可以设置为再次需要他们自己的密码),并且还提供日志记录设施(例如“约翰以 root 身份执行了 destroy-system”)。
还有其他选项可以以增加的权限运行(例如加利福尼亚州)但它们的使用率要低得多。
您的上述日志表明sudo
magic2tower 上未安装。
答案3
您需要 root 权限才能通过 执行系统更新apt-get
。
您可以使用 切换到 root 帐户su root
。您似乎没有sudo
安装该程序。
答案4
他们已经解释了 root 是什么,当您出现“未找到命令”时,可能是因为您没有安装尝试运行的程序,或者您的环境变量中没有路径。
尝试像这样运行命令:
/usr/bin/sudo apt-get install flashplugin-installer
在某些 Linux 发行版中,您无法更改为 root,因此每个命令都可以使用 sudo 运行。 =)