javac installiert in /etc

javac installiert in /etc

Ich habe es auf Ubuntu installiert openjdk-9-jdk:amd64und beim Ausführen which javacwird mir ein Softlink angezeigt, der zum /etcVerzeichnis führt:

$ ls -l /usr/bin/javac
lrwxrwxrwx 1 root root 23 kwi 13 08:09 /usr/bin/javac -> /etc/alternatives/javac

Soweit ich weiß, sollten nur Konfigurationsdaten in gespeichert werden /etc. Warum werden sie javacdort gespeichert und sollte ich diese ausführbare Datei verschieben?

Antwort1

Wenn Sie sich das ansehen, /etc/alternativeswerden Sie feststellen, dass es keine ausführbaren Dateien enthält, sondern weitere symbolische Links; zum Beispiel

$ ls -l /etc/alternatives/javac
lrwxrwxrwx 1 root root 43 Sep 20  2016 /etc/alternatives/javac -> /usr/lib/jvm/java-8-openjdk-amd64/bin/javac

So werden Alternativen implementiert: Die „Binärdatei“ im Pfad ist ein Symlink zur Alternative in /etc/alternative, die wiederum ein Symlink zur gewählten Zielbinärdatei ist. Diese AuswahlIstKonfigurationsdaten, /etcist also vollkommen angemessen. (Alternativen können für mehr als nur Binärdateien verwendet werden, daher finden Sie dort auch Manpages usw.)

verwandte Informationen