Gefällt dir dieser Artikel?

Gentoo: Emerge Oracle Java JDK/JRE schlägt fehl

erschienen in der Kategorie Software, am 27.10.2014
Schnatterente
Bei mir kam gerade eine Mail von Thomas, einem Gentoo-Nutzer, an, der Probleme damit hatte, Oracles Java auf seinem System zu installieren. Das Problem war schnell gelöst, aber für den Fall, dass noch jemand damit kämpft, will ich hier kurz was dazu schreiben.

Thomas wollte Java auf Version 8 updaten und hat alles gemacht wie immer, sprich: Archiv von oracle.com herunterladen, nach /usr/portages/distfiles/ verschieben und dann die Installation mittels emerge starten.

Bisher klappte das immer auf diesem Weg, doch nun brach die Installation stets mit dem folgenden Fehler ab:
gzip: /var/tmp/portage/dev-java/oracle-jre-bin-1.8.0.11/distdir/jre-8u11-linux-x64.tar.gz: Permission denied
tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors

Anhand der Aussage "Permission denied" von gzip war eigentlich schnell klar, dass hier etwas an den Dateirechten nicht stimmte. Thomas hat die Java-Archiv-Datei als root-Benutzer heruntergeladen und in den distfiles-Ordner verschoben. Die Installation via emerge wird aber nicht vom root, sondern vom Benutzer portage durchgeführt. Deswegen muss man den Besitzer des heruntergeladenen Java-Installationspakets entsprechend ändern:
# cd /usr/portage/distfiles
# chown portage:portage jre-8u11-linux-x64.tar.gz

Nach diesem kleinen Eingriff lief die Installation problemlos durch.

Dieses Fehlerbild kann übrigens immer auftreten, wenn man Pakete installiert, die man per Hand in den distfiles-Ordner legen muss - es hat also mit Java selbst gar nichts zu tun.
Danke an Thomas, für die Frage. :)

Geschnatter

1 Kommentar, selbst mitschnattern << < Seite 1/1 > >>
Martin, am 27.10.2014 um 22:32 Uhr
Hmmm, Du schreibst, daß Thomas die Datei als root-Benutzer runter geladen hat. Ich würde nie auf die Idee kommen, etwas als root runter zu laden. Viel zu gefährlich.
Ich glaube eher, daß Thomas es als normaler User runter geladen hat und dann nicht nach /usr/portage/distfiles verschieben konnte, ohne vorher die Rechte auf root zu setzen.
Antwort: Nope, er hatte die Datei direkt als Root mit wget geladen.