Es gibt Möglichkeiten, RPMs in einem Benutzerverzeichnis mit zu installieren rpm
, aber ich glaube nicht, dass es einfach ist. Ich glaube nicht, dass es einen Weg mit gibt yum
.
Meine übliche Praxis ist es, von der Quelle in ein local
Verzeichnis in meinem Haus zu kompilieren
$ mkdir ~/local
$ mkdir ~/local/bin
$ mkdir ~/local/lib
$ mkdir ~/local/include
Ich lade den Quellcode so herunter, wie ich es tun würde, /usr/local
wenn ich root habe, z ~/local/git
. B. in .
Beim Kompilieren habe ich das Präfix auf das local
Verzeichnis gesetzt
$ configure --prefix=/home/user_name/local
$ make
$ make install
Ich füge ~/local/bin
dann meinem $ PATH hinzu .bash_profile
.
Das Problem bei der Installation von der Quelle ist natürlich, dass Sie keine automatische Abhängigkeitsauflösung erhalten. Wenn Sie feststellen, dass Sie Abhängigkeiten installieren müssen, kompilieren und installieren Sie diese wie oben beschrieben. Wenn Sie dann kompilieren git
, müssen Sie die Kompilierungsflags aktualisieren, damit sie am richtigen Speicherort für die Bibliotheken und Include-Dateien der Abhängigkeit angezeigt werden:
./configure --prefix=/home/user_name/local LDFLAG='-L/home/user_name/local/lib' CFLAGS='-I/home/user_name/local/include' CPPFLAGS='-I/home/user_name/local/include' CXXFLAGS='-I/home/user_name/local/include'
Eine .rpm-Datei ist eigentlich eine Form des
cpio
Archivs, die einer einfachen Form von sehr ähnlich isttar
. Dasrpm2cpio
Dienstprogramm ist wahrscheinlich auf dem System installiert und erfordert keine Berechtigungen. Es schreibt nach Standard aus, so umzuwandeln:Es gibt einen
man cpio
man sich selbst sehen kann, aber was wollen Sie jetzt tun füttern wird das Archiv zu cpio in „Kopie in“ Modus:Sehr wahrscheinlich ist das Zeug in einem Verzeichnisbaum organisiert, so dass die Dateien an geeigneten Orten (bin usw. usw.) abgelegt werden. Wenn diese in Ihrem pwd nicht vorhanden sind, erhalten Sie eine Fehlermeldung, die jedoch die Dateien im Archiv auflistet (dasselbe können Sie mit dem Schalter
-t
/ erreichen--list
). Wenn Sie die Verzeichnisse automatisch erstellen möchten, verwenden Sie-d
. Also ein schneller Weg, um eine rpm auszupacken:Sie können dies verwenden, um in $ HOME zu installieren. Das einzige Problem wird sein, wenn das Programm erwartet,
/etc
Dinge in usw. zu finden , da der Installationsort vieler Dinge für welchen Zweck auch immer fest programmiert ist, wenn sie kompiliert werden.Das Erstellen von der Quelle aus ist wahrscheinlich eine bessere Option (da Sie den richtigen Speicherort angeben können), aber wenn Sie dies in jedem Fall zum Funktionieren bringen können, ist es schnell und einfach.
Mit dem Midnight Commander - Dateibrowser (
mc
) und wahrscheinlich auch mit anderen Dateibrowsern können Sie in einer rpm - oder cpio - Hierarchie (oder einer komprimierten tar - oder zip - Hierarchie) navigieren und einzelne Dateien so kopieren, als ob das Archiv entpackt wäre (es erstellt eine temporäres Dateisystem, um den Archivinhalt darin zu durchsuchen).quelle
Dies ist eine Alternative (ohne yum) und die Erlaubnis wird verrückt sein, aber Sie können
chown
dem Zielbenutzer danach: - Auch es ist ein Hit oder Miss :-(Fügen Sie dann Ihrem Pfad die entsprechenden Positionen hinzu.
quelle