Não é possível instalar Python sem acesso sudo
-
05-07-2019 - |
Pergunta
Eu extraí, configurado e make usado para o pacote de instalação no meu servidor.
No entanto, eu não poderia usar make install . Eu recebo o erro
[~/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
Eu corro a pasta com
chmod +x Python-2.6.1
Eu ainda obter o mesmo erro.
Como posso executar make install sem acesso sudo?
Solução
Como posso instalar para um caminho sob o meu diretório home?
mkdir /home/masi/.local
cd Python-2.6.1
make clean
./configure --prefix=/home/masi/.local
make
make install
Em seguida, execute usando:
/home/masi/.local/bin/python
Da mesma forma, se você tiver scripts (por exemplo, CGI.) Que exigem a sua própria versão do usuário de Python que você tem que dizer-lhes explicitamente:
#!/home/masi/.local/bin/python
em vez de usar o padrão do sistema Python que “#! / Usr / bin / env python” vai escolher.
Você pode alterar a configuração de PATH para fazer apenas digitando “python” a partir do console de execução que versão, mas isso não vai ajudar em aplicações web que está sendo executado sob um usuário diferente.
Se você compilar algo que links para Python (eg. Mod_wsgi) você tem que dizer a ele onde encontrar o seu Python ou ele vai usar o sistema em vez. Isso é muitas vezes feito algo como:
./configure --prefix=/home/masi/.local --with-python=/home/masi/.local
Para outras extensões baseadas em setup.py como MySQLdb você simplesmente tem que executar o script setup.py com a versão correta do Python:
/home/masi/.local/bin/python setup.py install
Outras dicas
Você não pode; não /usr
, de qualquer maneira. Somente os superusuários podem escrever para os diretórios. Tente instalar Python para um caminho no seu home vez.
Estendendo resposta bobince, não é um problema se você não tiver o pacote de desenvolvimento readline instalado em seu sistema, e você não tem acesso root.
Quando Python é compilado sem readline, as teclas de seta não vai funcionar no interpretador. No entanto, você pode instalar o pacote autônomo readline da seguinte forma: Adicionando Readline Funcionalidade sem recompilar Python
Por outro lado, se você preferir python de compilação usando uma instalação local do readline, aqui está como.
Antes de fazer como bobince estava dizendo, compilar e instalar o readline. Estas são as etapas para fazer isso:
- ftp://ftp.cwru.edu/pub/ bash / readline-6.2.tar.gz
- tar -zxvf readline-6.2.tar.gz
- cd readline-6.2
- ./ configure --with-prefix = $ HOME / .local
- make
- make install
Em seguida, adicione esta linha ao seu roteiro .bash_profile:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/.local/lib
Por último, mas não menos importante, execute o seguinte comando
export LDFLAGS="-L$HOME/.local"
Espero que isso ajude alguém!