Запуск пакетов python из локального каталога пользователя

Я на общем хостинге с ограниченным доступом по SSH.

У меня нет привилегий sudo.

И есть некоторые ограничения на некоторые папки, а именно:

Это вывод терминологии ls -al:

drwx--x--x  17  myusername  myusername  4096    May 23 03:02    .
drwxr-xr-x  3   root        root        4096    Mar 27 11:02    ..
lrwxrwxrwx  1   myusername  myusername  34      Mar 27 01:31    access-logs -> /usr/local/apache/domlogs/myusername
-rw-------  1   myusername  myusername  640     Mar 29 23:56    .bash_history
-rw-r--r--  1   myusername  myusername  18      Oct 14  2014    .bash_logout
-rw-r--r--  1   myusername  myusername  176     Oct 14  2014    .bash_profile
-rw-r--r--  1   myusername  myusername  124     Oct 14  2014    .bashrc
drwxrwx--x  4   myusername  myusername  4096    Mar 27 11:02    .cagefs
drwxr-xr-x  2   myusername  myusername  4096    Mar 27 01:21    .cl.selector
-rw-------  1   myusername  myusername  21      Mar 27 01:21    .contactemail
drwx------  5   myusername  myusername  4096    Mar 31 18:49    .cpanel
-rw-r-----  1   myusername  myusername  1       Mar 31 18:14    cpbackup-exclude.conf
drwxr-x---  2   myusername  mail        4096    Mar 31 20:25    etc
-rw-------  1   myusername  myusername  16      Apr 29 02:50    .ftpquota
-rw-r--r--  1   myusername  myusername  140     Mar 27 01:21    .gemrc
drwxr-x---  2   myusername  nobody      4096    Mar 27 01:21    .htpasswds
-rw-------  1   myusername  myusername  13      Mar 31 18:46    .lastlogin
drwx------  2   myusername  myusername  4096    May 17 02:05    logs
drwxr-x---  8   myusername  myusername  4096    Mar 27 01:21    mail
-rw-------  1   myusername  myusername  44      Mar 27 16:26    .my.cnf
drwxrwxr-x  2   myusername  myusername  4096    Mar 29 11:33    perl5
drwxr-x---  3   myusername  myusername  4096    Mar 27 01:21    public_ftp
drwxr-xr-x  6   myusername  nobody      4096    May 25 20:23    public_html
drwx--x--x  4   myusername  myusername  4096    Mar 27 01:54    .softaculous
drwx------  2   myusername  myusername  4096    Mar 29 11:30    .ssh
drwxr-xr-x  5   myusername  myusername  4096    Mar 31 18:14    ssl
drwxr-xr-x  8   myusername  myusername  4096    Mar 29 20:24    tmp
drwx------  2   myusername  myusername  4096    Mar 27 16:22    .trash
lrwxrwxrwx  1   myusername  myusername  11      Mar 27 01:21    www -> public_html

Моя цель - установка пакетов Python с использованием PIP и Virutalenv.

И из-за ограничений я пытаюсь использовать метод sudo-free для установки PIP и Virtualenv в локальный пользователь, следуя этому руководству!

=============

Эти шаги прошли хорошо:

$wget https://bootstrap.pypa.io/ez_setup.py -O - | python - --user

и ответ от сервера был:

...........
...........    
Processing setuptools-16.0-py2.6.egg
Copying setuptools-16.0-py2.6.egg to /home/myusername/.local/lib/python2.6/site-packages
Adding setuptools 16.0 to easy-install.pth file
Installing easy_install script to /home/myusername/.local/bin
Installing easy_install-2.6 script to /home/myusername/.local/bin

Installed /home/myusername/.local/lib/python2.6/site-packages/setuptools-16.0-py2.6.egg
Processing dependencies for setuptools==16.0
Finished processing dependencies for setuptools==16.0

И этот шаг также:

$wget https://raw.github.com/pypa/pip/master/contrib/get-pip.py -O - | python - --user


............
............
Installing collected packages: pip, argparse, wheel
Successfully installed argparse-1.3.0 pip-7.0.1 wheel-0.24.0

Теперь мой вопрос:

Как я могу запустить эти пакеты?:D

как видите, у меня нет доступа к папке ~/.local/, НЕ появляются в ls -al как вы видели выше!

И писать pip в терминале SSH выдает мне:

$ pip
-bash: pip: command not found

$ python pip
python: can't open file 'pip': [Errno 2] No such file or directory

$ cd /.local/
-bash: cd: /.local/: No such file or directory

$ /.local/bin/pip
-bash: /.local/bin/pip: No such file or directory

$ python /.local/bin/pip
python: can't open file '/.local/bin/pip': [Errno 2] No such file or directory

Извините, если мой вопрос сбил с толку или был недостаточно ясен!

1 ответ

Для использования pip установите

$ mkdir my_project_folder
$ cd my_project_folder
$ curl -L -o virtualenv.py https://raw.github.com/pypa/virtualenv/master/virtualenv.py
$ python virtualenv.py venv
$ source venv/bin/activate

На этом этапе у вас есть готовность к virtualenv. Если вы хотите установить больше пакетов, вы можете сделать следующее:

$ pip install YOUR_PACKAGE --user

Таким образом, вы можете устанавливать пакеты, не касаясь системных каталогов Python, как правило, в ~/.local/

Другие вопросы по тегам