我正在尝试部署Django应用。
当我打印
apt-get update
我看到

W: Unable to read /etc/apt/apt.conf.d/ - DirectoryExists (13: Permission denied)
W: Unable to read /etc/apt/sources.list.d/ - DirectoryExists (13: Permission denied)
W: Unable to read /etc/apt/sources.list - RealFileExists (13: Permission denied)
E: List directory /var/lib/apt/lists/partial is missing. - Acquire (13: Permission denied)
E: Unable to read /var/cache/apt/ - opendir (13: Permission denied)
E: Unable to read /var/cache/apt/ - opendir (13: Permission denied)
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?


当我打印sudo apt-get update
我看到了

-bash: sudo: command not found


我尝试使用su代替sudo
这很奇怪。
例如我打印su apt-get update
什么也没有发生
我只是看到一个新行,

(uiserver):u78600811:~$ su apt-get update
(uiserver):u78600811:~$


如果我尝试安装一些软件包。
我该怎么办?

如果有用的信息-我正在使用Debian

(uiserver):u87600811:~$ uname -a
Linux infong1559 3.14.0-ui16294-uiabi1-infong-amd64 #1 SMP Debian 3.14.79-2~ui80+4 (2016-10-20) x86_64 GNU/Linux


评论

这是商业服务器上的客户帐户吗?

@tomas yeah ////

如果您不拥有服务器,是什么使您认为您有权安装或删除软件?询问管理员

如果运行apt-cache policy sudo会发生什么?并非所有Linux发行版默认都安装sudo(例如,仅当您在安装时未指定root密码时,Debian才会安装sudo)。您可以在没有root特权的情况下运行apt-cache。

#1 楼

默认情况下,sudo未安装在Debian上,但是您可以安装它。首先启用su-mode:su -

通过运行以下命令安装sudo:apt-get install sudo -y

之后,您需要使用用户和权限。将sudo权限授予您自己的用户。

usermod -aG sudo yourusername

确保您的sudoers文件中添加了sudo组。运行:visudo修改sudoers文件并在其中添加以下行(如果丢失):

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL


您需要重新登录或完全重启设备才能更改生效。

评论


这应该被接受的答案,这解决了我的问题

–卡拉特
18年3月18日在18:19

我收到“ su:无法确定您的用户名”。在做苏-

–user674669
19年5月3日在23:26

@ user674669您是否检查过此帖子:serverfault.com/questions/816969/…?

–Maksim Luzik
19年5月6日在6:45

谢谢@MaksimLuzik。我的是一个码头集装箱。该页面上的想法对我没有帮助。也许,我应该发布一个单独的问题。

–user674669
19年5月7日,3:11

给我的用户sudo权限安全吗?

– Nanquim
20年1月8日,0:51

#2 楼

由于它是一台商用服务器,因此您将无法访问root帐户,也无法使用root特权进行操作。这意味着您将无法运行sudo或安装软件包。您可以尝试做的是:


检查您是否有权使用编译器,并在自己的家庭空间中编译所需的内容。
检查是否可以运行虚拟机。这样可以让您运行要在其上安装软件包的OS的私有实例。


#3 楼

susudo是两个不同但相关的命令。不安装sudo是不寻常的,但可能根本不在您的路径中。请尝试/usr/bin/sudo command。使用它的最简单方法是简单地运行:

su -


这将要求您输入sudo用户的密码,此时您可能应该su,注销root shell,然后按常规进行操作。

请注意,与sudo询问您的密码不同,root会询问您root的密码。

评论


当我写su-什么都没发生-只是换行

–user2950593
17 Mar 30 '17 at 20:33

然后,您可能已经是root。检查与whoami。如果您是root用户,请按照说明安装sudo。

–DopeGhoti
17 Mar 30 '17 at 20:40

(uiserver):u78600811:〜$ apt安装sudo

–user2950593
17 Mar 30 '17 at 20:47



W:无法读取/etc/apt/apt.conf.d/-DirectoryExists(13:权限被拒绝)E:无法打开锁文件/ var / lib / dpkg / lock-打开(13:权限被拒绝)E:无法锁定管理目录(/ var / lib / dpkg /),您是root用户吗?

–user2950593
17 Mar 30 '17 at 20:47

取决于PS1设置为什么。

–DopeGhoti
17年3月31日17:50