Jedes Mal, wenn ich die Tipps zur Installation eines SDK, einer IDE, einer Erweiterung usw. lese, heißt es, dass ich sie in einen /opt
Ordner entpacken soll . Warum muss ich das tun?
Bei der Installation von Ubuntu habe ich gelesen, dass ich nur 10-20 GiB für das /
Dateisystem und den verbleibenden Speicherplatz festlegen sollte /home
. Soll ich also den Speicherplatz für den Stammordner erweitern oder alles auf "" belassen /home
? Gibt es da einen Unterschied?
filesystem
disk-usage
Praytic
quelle
quelle
Antworten:
Verstehen Sie zunächst, dass jedes Verzeichnis, das nicht explizit ein Bereitstellungspunkt für eine separate Partition (oder ein Unterverzeichnis eines solchen Bereitstellungspunkts) ist, auf der
/
Partition root ( ) gespeichert ist . Wenn Sie also root (/
) und/home
keine anderen Partitionen haben, ist Ihr/opt
Verzeichnis einfach ein Verzeichnis auf root (/
). Ebenso für/tmp
,/sbin
und alles andere. Daher basiert die erste Frage auf der falschen Annahme, dass Sie für jedes Verzeichnis, das von root (/
) ausgeht, separate Partitionen benötigen und daher nicht direkt beantwortet werden können.Zweitens
/opt
wird für Software von Drittanbietern verwendet, was im Kontext von Ubuntu vorkompilierte Software bedeutet, die nicht über Debian-Pakete verteilt wird. Gelegentlich wird eine offizielle Programmdokumentation angezeigt, auf die/opt
verwiesen wird, aber es gibt Debian-Pakete, die diese Dateien an anderer Stelle ablegen. In solchen Fällen sollten Sie die offizielle Dokumentation ignorieren oder zumindest die Verweise auf den Dateispeicherort ignorieren, wenn Sie das Debian-Paket verwenden. Wenn Sie die Wahl haben, ein vorkompiliertes Paket über einen Tarball oder ein Debian-Paket zu verwenden, ist es im Allgemeinen am besten, das Debian-Paket zu verwenden. Alles in allem ist die Verwendung von/opt
in diesen Tagen ziemlich selten. Wenn Sie immer noch der Meinung sind, dass Sie Dateien/opt
ablegen müssen, können Sie die Software gut benennen, da die Leute hier möglicherweise wissen, ob ein Debian-Paket für diese Software verfügbar ist.Wenn man die beiden vorherigen Punkte kombiniert, ist es sehr selten, dass Ubuntu-Installationen
/opt
in eine separate Partition aufgeteilt werden, da dort nur selten erhebliche Datenmengen gespeichert werden. Die meisten Ubuntu-Software geht in/usr
und anderen Orten. Früher war es üblich,/usr
in eine separate Partition aufzuteilen , aber diese Praxis ist heute ziemlich selten. Wenn Sie eine Menge Software installieren müssen/opt
, erstellen Sie möglicherweise eine separate PartitionSinn machen - aber in vielen Fällen wird dies nicht wirklich hilfreich sein. Separate Partitionen sind sinnvoll, wenn Sie die Sicherheit unterschiedlich behandeln müssen, wenn verschiedene Dateisystemfunktionen hilfreich sind, um Daten in einer Multi-Boot-Konfiguration für mehrere Betriebssysteminstallationen gemeinsam zu nutzen, und aus anderen Gründen. Eine routinemäßige Softwareinstallation profitiert wahrscheinlich nicht von einer separaten Partition. Tatsächlich kann das Erstellen einer separaten Partition für/opt
Probleme verursachen, wenn sich die Größe der dort gespeicherten Software ändert oder wenn die Größenschätzung anfänglich falsch ist.quelle
Machst du?
Tatsache ist, dass Sie es nicht tun müssen. Verwenden
/opt
ist eine Konvention. Ich würde es empfehlen, aber es ist nicht unbedingt erforderlich.Aus der Linux-Dateisystemhierarchie: Kapitel 1. Linux-Dateisystemhierarchie :
quelle
/opt
war oft ein separater Antrieb. Es wurde verwendet, um proprietäre Software zu installieren, die aufgrund der Bündelung aller erforderlichen Bibliotheken und anderer Ressourcen häufig einen enormen Speicherplatzbedarf aufwies. In der heutigen Zeit sind Laufwerke so groß, dass es machbar und einfacher ist, nur einen Stamm auf einem einzelnen Laufwerk zu verwenden./opt
wird für (manchmal proprietäre) externe Anwendungen verwendet, die nicht Teil der Linux-Distribution sind. Diese Anwendungen verfügen möglicherweise über fest codierte Pfade und werden daher nur dann ordnungsgemäß ausgeführt, wenn sie installiert/opt
sind. Wenn jedoch keine fest codierten Pfade vorhanden sind, können Sie sie auf einem beliebigen Pfad installieren. Ein Programm, in dem installiert/opt
ist, soll in sich geschlossen sein.Der Hauptgrund für die Verwendung
/opt
besteht darin, einen gemeinsamen Standardpfad bereitzustellen, in dem externe Software installiert werden kann, ohne den Rest des installierten Systems zu beeinträchtigen./opt
wird nicht in Standard-Compiler- oder Linker-Pfaden (gcc -print-search-dirs
oder/etc/ld.so.conf
Ähnlichem) angezeigt, daher sind die dort installierten Header und Bibliotheken etwas vom Hauptsystem isoliert und sollten bereits installierte Programme nicht beeinträchtigen.Die Verwendung von
/opt
wird durch den Dateisystem-Hierarchie-Standard : / opt festgelegt , der feststellt, dass es sich/opt
ursprünglich um Unix handelt.quelle
Es ist nichts Heiliges daran
/opt
, es ist nur übliche Praxis, vorkompilierte Software, die für alle Benutzer eines Systems zugänglich sein sollte, in dieses Verzeichnis zu stellen. Wenn Sie der einzige Benutzer des Systems sind, ist es überhaupt nicht falsch, es in Ihr Home-Verzeichnis zu extrahieren. Und selbst wenn auf dem System mehrere Benutzer Zugriff auf diese Software benötigen, Sie jedoch den Speicherplatz auf Ihrer/home
Partition nutzen möchten , ist es kein Problem, ein öffentlich zugängliches/home/softwarename
Verzeichnis zu erstellen und Ihre Software dort zu extrahieren (der einzige Nachteil ist, wenn Sie dies tun) Um einen Benutzer mit einem Namen zu versehensoftwarename
, können Sie ihn nicht im Home-Verzeichnis des Benutzers verwenden.quelle
Die detaillierten Antworten sind sehr gut, aber (abgesehen von Software, die möglicherweise fest codierte absolute Pfade enthält - nicht die beste Programmierpraxis), ist der Hauptpunkt, dass Nicht-System- / Nicht-Distributions-Software nicht gemischt mit dem gespeichert werden sollte reguläre Systemdateien.
Dinge reinstellen
/opt
oder/usr/local
sauberer und sicherer halten.Insbesondere bestimmt Ihr Software-Suchpfad ($ PATH) die Reihenfolge, in der nach Orten gesucht wird, wenn Sie nach einem Programm mit einem bestimmten Namen suchen, das ausgeführt werden soll. Normalerweise stehen Orte wie
/opt
und/usr/local
am Ende der Liste.Wenn Sie ein Paket installieren, in dem ein Programm namens enthalten
cp
ist, wird in der mit Ihrer Distribution gelieferten Standard-Suchreihenfolge die normale Reihenfolge gefunden, da das Verzeichnis, in dem es gespeichert ist, vor Orten wie durchsucht wird/opt
.Wenn es nicht so funktioniert hat, wer weiß, was eine Sicherheitslücke aufbrechen oder öffnen könnte, wenn ein Programm mit dem Namen
cp
, das etwas anderes tut, ausgeführt wird, wenn Sie glauben, nur einige Dateien zu kopieren.Wenn so etwas passiert, kann es eine Weile dauern, bis jemand denkt, einen Befehl wie
type cp
(der möglicherweise nicht einmal ausreicht, um zu zeigen, dass etwas nicht stimmt) auszuführen, um herauszufinden, dass das, was ausgeführt wird, nicht das ist, was Sie denken. Bis dahin stecken Sie fest bei "Alles ist genau so, wie es sein sollte, abgesehen von dem kleinen Detail, dass es nicht funktioniert!"Dies hilft im Grunde, unerwartete Ereignisse zu vermeiden und Situationen zu vermeiden, in denen Systemupdates einige oder alle Ihrer "benutzerdefinierten" installierten Pakete entfernen oder ersetzen. Umgekehrt können einige "benutzerdefinierte" Programme vom System bereitgestellte Programme überschreiben, auf die sich viele andere Programme oder Skripte stützen.
Aus administrativer Sicht versetzt das Mischen von "System" und "optionalen" Programmen / Dateien an denselben Orten Ihr System in einen "undefinierten" oder zumindest "mehrdeutigen" Zustand.
Wenn Sie ein Problem mit Ihrem System oder einem Programm haben und Hilfe benötigen, lautet eine der ersten Fragen: "Was haben Sie geändert?" und "Können wir einige dieser Änderungen vorübergehend deaktivieren, damit wir wissen, dass wir das eigentliche Problem betrachten und nicht nur ein Symptom für etwas anderes."
Durch getrennte Speicherorte können diese Änderungen schnell identifiziert werden. Sie müssen lediglich (zumindest für die Programme selbst) die Verzeichnisse vorübergehend aus dem Pfad entfernen.
quelle