一切都需要sudo吗?设置一个ubuntu机器

时间:2014-12-17 00:57:48

标签: ubuntu permissions virtualenv sudo permission-denied

我是linux系统的新手。我正在通过AWS建立一个Ubuntu 14.04服务器。我正在使用他们的“ubuntu”用户,根据我的理解应该拥有root所有的权限,但是我到处获得权限错误,需要大量的“sudo”。我特别难以设置virtualenvs。

基本步骤

apt-get install python-pip
pip install virtualenv
virtualenv --python=/usr/bin/python3.4 venv_path
source venv_path/bin/activate
pip install django

但是那里的每个命令似乎都需要pip,否则它会返回一个Permission Denied。 因此,当我安装Django时,我要么拒绝Permission,要么我使用sudo,Django安装到全局目录中。有些人似乎这么说是因为我在创建virtualenv时使用了sudo,但是,再次使用不带sudo的命令会返回Permission Denied错误。

那该怎么办?如何摆脱权限地狱?如果需要,可以针对任何给定命令发布特定权限被拒绝。

1 个答案:

答案 0 :(得分:2)

如果没有sudo,ubuntu用户没有root权限。这是ubuntu推荐的方式。

正如您在virtualenv中观察到的那样使用sudo并不像您期望的那样工作。如果您要在某个需要root访问权限的地方创建virtualenv,请在激活virtualenv时使用su,如下所示

sudo su
source venv_path/bin/activate

su让你成为超级用户。然后,您在virtualenv中运行的所有命令都将以root权限运行

pip install django

将按预期工作。