Wie installiere ich Pakete unter Linux ohne Root-Zugriff?

656
Mikhail T.

Aus irgendeinem Grund beschränken root-fähige Administratoren in unserer Organisation die Auswahl der Pakete auf das offizielle "Basis" -Repository des Anbieters (RHEL).

Nicht einmal EPEL ist möglich, geschweige denn IUS.

Unsere eigenen, handgefertigten RPMs sind zulässig, müssen jedoch noch ausgefüllt und abgewartet werden. Dies macht die Installation nicht nur unnötig schmerzhaft, sondern erschwert auch die Paketentwicklung - ich kann mein neues RPM nicht sofort testen.

Wir dürfen jedoch jede gewünschte Software erstellen und installieren - solange sie sich in "unserem" Verzeichnis befindet. Wir haben solche Dinge seit einiger Zeit gebaut und installiert, und ich frage mich, ob wir solche Dinge besser organisieren können, sodass beispielsweise gcc-8.2 auf einem System erstellt werden kann (mit prefixlike / Data / local`). und auf mehreren anderen installiert.

Natürlich kann ich das mit einfachen Teerbällen machen, aber es wäre schöner, über eine Art Paket-Manager-Funktionalität zu verfügen, zum Beispiel um Abhängigkeiten zu verfolgen ...

Gibt es da draußen irgendetwas oder bleiben wir bei den selbst gebrauten Werkzeugen?

2
Haben Sie versucht, vorhandene Paketmanager (rpm, opkg, ipkg usw.) zu verwenden, um Pakete mit benutzerdefinierten Installationsverzeichnissen zu erstellen? Werfen Sie einen Blick auf `stow`, um Symlinks in einem gemeinsamen Baum mit verschiedenen Paketen in ihren eigenen Stubtrees zu verwalten. So organisiere ich` / usr / local` auf meinem Computer. dirkt vor 6 Jahren 0
Ein völlig anderer Paketmanager kann die bereits auf der Maschine vorhandenen Dinge nicht berücksichtigen. Die Verwendung von rpm erfordert root - für die Registrierung von Paketen - auch bei der Installation in einem privaten Verzeichnis. Es ist etwas notwendig, um beide zu überwinden ... Mikhail T. vor 6 Jahren 0
Nun, Kumpel, Sie haben Glück, es gibt Paketformate, die Sie ohne Root-Zugriff verwenden können. AppImages (https://www.appimagehub.com/) kann ohne Root-Zugriff ausgeführt werden. Das einzige Problem ist, dass FUSE erforderlich ist, um verwendet zu werden. Ich weiß, dass es zumindest in CentOS nicht vorinstalliert ist wahrscheinlich auch nicht RHEL. Es gibt auch Linuxbrew (http://linuxbrew.sh/), das Linux-Äquivalent zu Homebrew von macOS. NetBSDs pkgsrc kann auch unter Linux ohne Root-Zugriff verwendet werden (http://www.pkgsrc.org/). BH2017 vor 6 Jahren 0
Ich kenne pkgsrc sehr gut und es hat das Problem, auf das ich bereits angedeutet habe - keine Integration mit dem installierten Material (oder verfügbar) über das Standard-Yum / RPM. Werden die anderen aufgeführten Lösungen in die offiziellen Pakete integriert? Mikhail T. vor 6 Jahren 0
Das klingt wirklich nach einem Problem, das Sie mit Ihrem IT-Management in Ihrem Unternehmen angehen müssen. Ich werde dieses Thema als "Off-Topic" kennzeichnen, da "spezifische Probleme für die IT-Unterstützung und Netzwerke von Unternehmen" hier speziell per https als Off-Topic gelten: / /superuser.com/help/on-topic acejavelin vor 6 Jahren 2
Ich bin hier mit Acejavelin. Dies ist keine Umgebung, in der die Entwicklung effizient durchgeführt werden kann. Sie benötigen eine Entwicklungsumgebung mit verschiedenen Richtlinien, in der Sie sie direkt bereitstellen und testen können. Daniel B vor 6 Jahren 0
@acejavelin, die Frage, die ich gestellt habe, bezieht sich auf alternative Paketmanager - nicht auf die Überwindung von Problemen mit der Unternehmens-IT, selbst die Überwindung ist meine Motivation. Mikhail T. vor 6 Jahren 1
@acejavelin Ziemlich Standard, keinen Root-Zugriff zu haben, insbesondere wenn Sie in einer Vor-Container-Welt wie einer Bank arbeiten, in der Sie bei> 5k-Entwicklern enden, die Root-Zugriff auf 100.000-Maschinen haben, oder sogar zu Hause, die Sie lieber nicht verwenden möchten Root-Zugriff für Routineaufgaben aus guter Sicherheitspraxis. Es gibt keinen technischen Grund, warum wir keine Pakete in ~ / oder in einem anderen Verzeichnis, das vom Benutzer beschrieben werden kann, installieren können. Sicher hat jemand eine vernünftige Lösung für das Paketmanagement auf Benutzerebene gefunden? Calchas vor 6 Jahren 0
Sehen Sie, deshalb habe ich "Entwicklungsumgebung" gesagt. Ein Entwickler benötigt keinen unternehmensweiten Root-Zugriff. Sie wollen es auch nicht. Aber wie sollen sie Softwarepakete erstellen, wenn sie sie nicht unter realen Bedingungen testen können? Daniel B vor 6 Jahren 0
Sie fragen nach einer Lösung, die zu den Lücken in den IT-Einstellungen passt. Was auch immer Sie tun, sollte mit der IT koordiniert werden. Ich nehme jedoch an, dass es ein Thema ist, nach Lösungen zu fragen, die die IT möglicherweise nicht kennt. fixer1234 vor 6 Jahren 0

0 Antworten auf die Frage