在没有 root 权限的服务器上安装 pip
假设有这么一台服务器,你没有 root 权限,然后预配置的 tensorflow 环境很神奇地调用不了 GPU,只有 pip2 没有 pip3,python2 python3 都试过了都没法用 GPU,pip list 也显示安装了 tensorflow-gpu,且给你用户的人信誓旦旦地告诉你我这配置没问题,但是你就是用不了 GPU,那么怎么办呢?
解决方法还是比较简单的,首先在用户态安装一个 pip(本文要装 pip3)
wget https://bootstrap.pypa.io/get-pip.py && python3 get-pip.py --user
这时候 pip3 会被安装到 ~/.local/bin 下面,如果你的 PATH 里面有这个路径的话,直接 pip3 就可以运行。
然后就很简单了,该干嘛干嘛,比如安装 virtualenv 等等,只不过这时候你安装任何 python 包的时候,要加上 –user 参数,才能安装到 $HOME 下面,例如 pip3 install virtualenv –user。
我之前提到的那台服务器呢,在装了 pip3 以后,list 一下发现根本就没有 tensorflow-gpu,只有 tensorflow;pip2 里面有,但是调用不了显卡,搞不懂 IT 究竟是怎么配置的。最后我也懒得烦了,直接 virtualenv,装一个 tensorflow-gpu,问题就解决了。
安装一个简单的 deb 包(没有 dependency 问题那种)
apt download <package> dpkg-deb -x package_x.y.z_x86_64.deb my-private-root #dpkg-deb -e package_x.y.z_x86_64.deb my-private-control
然后就装在了你自己的 $HOME 下面。
如果你装的是 screen,且你对 /var/run/screen/ 也没权限的话,这么干:
mkdir ~/.screen && chmod 700 ~/.screen export SCREENDIR=$HOME/.screen
然后把对应的内容添加到 .bashrc 里面去让你每次都可用,比如说:
PATH=~/usr/bin:$PATH export SCREENDIR=$HOME/.screen