Nicht imstande, Python ohne sudo Zugang zu installieren
-
05-07-2019 - |
Frage
I extrahiert, konfiguriert und machen für das Installationspaket in meinem Server verwendet wird.
Allerdings konnte ich nicht verwenden make install . Ich erhalte den Fehler
[~/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
Ich betreibe den Ordner mit
chmod +x Python-2.6.1
Ich bekomme immer noch den gleichen Fehler.
Wie kann ich laufen make install ohne sudo Zugang?
Lösung
Wie kann ich auf einen Pfad unter meinem Home-Verzeichnis installieren?
mkdir /home/masi/.local
cd Python-2.6.1
make clean
./configure --prefix=/home/masi/.local
make
make install
Führen Sie dann mit:
/home/masi/.local/bin/python
Ebenso, wenn Sie Skripte (zB CGI.), Die Ihre eigene User-Version von Python benötigen Sie ihnen zu sagen haben ausdrücklich:
#!/home/masi/.local/bin/python
stattdessen die Standard-System-Python zu verwenden, die „#! / Usr / bin / env python“ wählen wird.
Sie können Ihre PATH ändern, nur um sicher Einstellung „Python“ von der Konsole ausführen, die Version eingeben, aber es wird für Web-Anwendungen werden ausgeführt unter einem anderen Benutzer nicht helfen.
Wenn Sie etwas kompilieren, die Python Links zu (zB. Mod_wsgi) haben Sie es zu sagen, wo Ihr Python zu finden, oder es wird das System einen stattdessen verwenden. Dies wird oft getan etwas wie:
./configure --prefix=/home/masi/.local --with-python=/home/masi/.local
Für andere setup.py-basierten Erweiterungen wie MySQLdb Sie einfach den setup.py-Skript mit der richtigen Version von Python ausführen:
/home/masi/.local/bin/python setup.py install
Andere Tipps
Sie können nicht; nicht, jedenfalls /usr
. Nur Superuser können auf diese Verzeichnisse schreiben. Versuchen Sie, Python auf einen Pfad in Ihrem Home-Verzeichnis statt.
Die Ausweitung bobince Antwort, gibt es ein Problem, wenn Sie in Ihrem System installiert ist nicht das Readline- Entwicklungspaket, und Sie keinen Root-Zugang haben.
Wenn Python ohne Readline- kompiliert wird, die Pfeiltasten nicht im Interpreter arbeiten. Sie können jedoch die Readline- Standalone-Paket installieren, wie folgt: Hinzufügen von Readline Funktionalität ohne Neukompilierung Python
Auf der anderen Seite, wenn Sie Python zu kompilieren es vorziehen, eine lokale Installation von Readline- verwenden, gehen Sie wie folgt.
Zuvor als bobince erzählte, kompilieren und Readline- installieren. Dies sind die Schritte zu tun, so:
- 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
- machen
- make install
Dann fügen Sie folgende Zeile zu Bash_profile Skript:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/.local/lib
Last, but not least, führen Sie den folgenden Befehl
export LDFLAGS="-L$HOME/.local"
Ich hoffe, das hilft jemand!