繁体   English   中英

无法在没有 sudo 访问权限的情况下安装 Python

[英]Unable to install Python without sudo access

我在我的服务器中提取、配置和使用了安装 package 的 make。

但是,我无法使用make install 我得到错误

[~/wepapps/python/Python-2.6.1]# make install
/usr/bin/install -c python /usr/local/bin/python2.6
/usr/bin/install: cannot create regular file `/usr/local/bin/python2.6': Permission denied
make: *** [altbininstall] Error 1

我运行文件夹

chmod +x Python-2.6.1

我仍然得到同样的错误。

如何在没有 sudo 访问权限的情况下运行make install

如何安装到我的主目录下的路径?

mkdir /home/masi/.local

cd Python-2.6.1
make clean
./configure --prefix=/home/masi/.local
make
make install

然后使用:

/home/masi/.local/bin/python

同样,如果您的脚本(例如 CGI)需要您自己的 Python 用户版本,您必须明确告诉他们:

#!/home/masi/.local/bin/python

而不是使用“#./usr/bin/env python”将选择的默认系统 Python。

您可以更改您的 PATH 设置以使从控制台中键入“python”运行该版本,但这对于在不同用户下运行的 web 应用程序没有帮助。

如果您编译链接到 Python 的东西(例如 mod_wsgi),您必须告诉它在哪里可以找到您的 Python,否则它将使用系统一。 这通常是这样的:

./configure --prefix=/home/masi/.local --with-python=/home/masi/.local

对于其他基于 setup.py 的扩展,如 MySQLdb,您只需使用正确版本的 Python 运行 setup.py 脚本:

/home/masi/.local/bin/python setup.py install

截至 2020 年, pyenv是安装 Python 无需 sudo 权限的最佳选择,假设系统具有必要的构建依赖项。

# Install pyenv
$ curl https://pyenv.run | bash

# Follow the instruction to modify ~/.bashrc

# Install the latest Python from source code
$ pyenv install 3.8.3

# Check installed Python versions
$ pyenv versions

# Switch Python version
$ pyenv global 3.8.3

# Check where Python is actually installed
$ pyenv prefix
/home/admin/.pyenv/versions/3.8.3

# Check the current Python version
$ python -V
Python 3.8.3

扩展 bobince 答案,如果您的系统中没有安装 readline development package 并且您没有 root 访问权限,则会出现问题。

当 Python 在没有 readline 的情况下编译时,您的箭头键将无法在解释器中工作。 但是,您可以安装 readline 独立 package,如下所示: 添加 Readline 功能而不重新编译 Python

另一方面,如果您更喜欢使用本地安装的 readline 编译 python,以下是方法。

在按照 bobince 所说的做之前,编译并安装 readline。 这些是这样做的步骤:

然后,将此行添加到 your.bash_profile 脚本:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/.local/lib

最后但并非最不重要的一点是,执行以下命令

export LDFLAGS="-L$HOME/.local"

我希望这可以帮助别人!

你不能; 无论如何,不要/usr 只有超级用户可以写入这些目录。 尝试将 Python 安装到主目录下的路径。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM