Wie sind Linux-Dateien und -Anwendungen organisiert?

5934
doup

Ich bin ein Neuling Linux (Ubuntu) und ich würde gerne wissen, ob jemand Ratschläge gibt, wo er Sachen installieren soll, welche Ordner sich nicht berühren, welche Bedeutung die einzelnen Ordner haben und so weiter.

Meine erste Sorge ist, sollte alles in meinen Heimatordner gehen? Ich habe "manuell" Komodo Edit (es ist eine IDE) installiert und es ist in meinen Home-Ordner gegangen. Ich mag die Idee, eine Anwendung dort zu haben, wirklich nicht. (In Windows hatte ich früher meine Arbeitsdateien / Bilder / Downloads ... und dann die Betriebssystempartition mit allen Apps).

Gibt es irgendwo einen Ort, wo ich diese Software installieren könnte? Irgendwelche Ratschläge für die Bestellung meines Heimatordners? Vielleicht sollte ich einen Apps-Ordner in meinem Heimatverzeichnis erstellen?

Danke im Voraus. :)

pd: Meistens benutze ich apt, um Sachen zu installieren, aber ich finde nicht immer die gewünschte Software dort ...

4
Ich habe gesehen, dass es grundsätzlich drei Möglichkeiten gibt, Software zu installieren. Zuerst Pakete (am besten), dann in sich geschlossene Tarballs (einfach entpacken und ausführen) und schließlich das "make install" -Ding. Ich habe einen Apps-Ordner für die Tarballs und für die "make install" -Apps erstellt. Ich verwende "checkinstall", wodurch ein Paket erstellt wird, so dass es später einfacher ist, diese Apps zu deinstallieren. Trotzdem danke für die Antworten. :) doup vor 14 Jahren 0
Standardmäßig können Benutzer nur in ihrem Heimatverzeichnis schreiben. Wenn für Ihre Distribution ein Paket verfügbar ist, verwenden Sie es, sofern Sie keinen triftigen Grund dafür haben. Wenn Sie etwas manuell installieren müssen, legen die meisten Benutzer dies unter / opt / packagename oder / usr / local / packagename fest ivanivan vor 7 Jahren 0

3 Antworten auf die Frage

4
Aren B

/home/<yourlogin>ist Ihr effektives "Meine Dokumente", das Fenstern entspricht. Ihr Desktop ist dort, Ihre Bilder usw.

Normalerweise laden Sie dort Dinge herunter und kompilieren / ausführen RPMs von diesem Ort aus, die dann den Superuser-Zugriff (Elevation) anfordern und deren Anwendungen an Orten wie dem folgenden installieren:

/usr/bin /usr/lib usw...

  • /binEnthält globale OS-Befehle, ähnlich wie PATHunter Windows
  • /sbin Enthält globale Befehle des Betriebssystems für Superbenutzer (erfordert Erhöhung)
  • /usr/bin Enthält Apps
  • /usr/sbin Enthält Apps, für die eine Erhöhung erforderlich ist
  • /devEnthält Geräte (z. B .: /dev/sda0Scsi-Laufwerk A, Partition 0, /dev/floppyDiskettenlaufwerk usw.).
  • /etc Ihre Systemkonfiguration befindet sich normalerweise in .conf-Dateien

Das ist eine grundlegende Grundierung, denke ich.

Wenn Sie einen Ordner mit einem Präfix versehen, .wird er "ausgeblendet", d. H. /home/aren/.ssh, Sie können immer noch dorthin gehen. Sie müssen ihn jedoch verwenden ls -a, damit er in der Liste angezeigt wird.

The filesystem stuff is called POSIX. There are many documentations which describe that. Besides that. Usually you install software in 3 flavours. 1) .deb with APT/dpkg 2) source (./configure, make, make install) 3) unzip it. Komodo is most likely the third one. Usually when you would install a software, you have to use the following commands. ./configure --prefix=/usr && make && sudo make install. || HOWEVER. It is NOT recommended. You should just use the PPAs: https://launchpad.net/ubuntu/+ppas (click on one to get more info. In a nutshell, fresh/other software) Shiki vor 14 Jahren 2
(Weitere Informationen: PPA ist kurz Personal Package Archive. Es ist wie ein kleiner Speicherplatz (~ 1 GB), in dem Sie Ihr Quellpaket hochladen können, und die Server werden .debs daraus erstellen. Was ist der Punkt? Sie können .deb-Pakete erstellen Mit Leichtigkeit verteilen Sie sie usw. Außerdem ist es ein Kinderspiel, ein solches PPA zu Ihrem Ubuntu hinzuzufügen. Klicken Sie einfach auf eines und verwenden Sie den blauen Text "Weitere Informationen zur Installation ...".) Shiki vor 14 Jahren 0
Siehe: http://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard Josh vor 14 Jahren 0
4
Josh

Wikipedia hat dazu einen großartigen Artikel . Ein Zitat aus dem nützlichsten Teil dieses Artikels:

In der FHS erscheinen alle Dateien und Verzeichnisse im Stammverzeichnis "/", auch wenn sie auf unterschiedlichen physischen Geräten gespeichert sind. Beachten Sie jedoch, dass einige dieser Verzeichnisse auf einem Unix-System vorhanden sein können oder nicht, je nachdem, ob bestimmte Subsysteme wie das X Window-System installiert sind.

Die meisten dieser Verzeichnisse sind in allen UNIX-Betriebssystemen vorhanden und werden im Allgemeinen auf ähnliche Weise verwendet. Die Beschreibungen hier sind jedoch diejenigen, die speziell für die FHS verwendet werden, und gelten nicht für andere Plattformen als Linux.

  • / Primäres Hierarchie-Root- und Root-Verzeichnis der gesamten Dateisystemhierarchie.
  • /bin/ Wichtige Befehls-Binärdateien, die im Einzelbenutzermodus verfügbar sein müssen; für alle Benutzer, z. B. cat, ls, cp.
  • /boot/ Bootloader-Dateien, z. B. Kernel, initrd; oft eine separate Partition [8]
  • /dev/ Wichtige Geräte, z. B. / dev / null.
  • /etc/ Hostspezifische, systemweite Konfigurationsdateien (der Name stammt von et cetera [9]).
  • /etc/opt/ Konfigurationsdateien für / opt /.
  • /etc/X11/ Konfigurationsdateien für das X Window System, Version 11.
  • /etc/sgml/ Konfigurationsdateien für SGML.
  • /etc/xml/ Konfigurationsdateien für XML.
  • /home/ Benutzerverzeichnisse, die gespeicherte Dateien, persönliche Einstellungen usw. enthalten .; oft eine separate partition.
  • /lib/ Bibliotheken, die für die Binärdateien in / bin / und / sbin / erforderlich sind.
  • /media/ Einhängepunkte für Wechselmedien wie CD-ROMs (erschienen in FHS-2.3).
  • /mnt/ Vorübergehend eingebundene Dateisysteme.
  • /opt/ Optionale Anwendungssoftwarepakete [10].
  • /proc/ Virtuelles Dateisystem, das den Kernel und den Prozessstatus als Textdateien dokumentiert, z. B. Betriebszeit, Netzwerk. Entspricht in Linux einem Procfs-Mount.
  • /root/ Ausgangsverzeichnis für den root-Benutzer.
  • /sbin/ Wichtige Systembinärdateien, z. B. init, ip, mount.
  • /srv/ Standortspezifische Daten, die vom System bereitgestellt werden.
  • /tmp/ Temporäre Dateien (siehe auch / var / tmp). Häufig zwischen Systemneustarts nicht beibehalten.
  • /usr/ Sekundäre Hierarchie für schreibgeschützte Benutzerdaten; enthält die Mehrzahl der Dienstprogramme und Anwendungen für mehrere Benutzer. [11]
  • /usr/bin/Nicht wesentliche Befehls-Binärdateien (im Einzelbenutzermodus nicht erforderlich); für alle Benutzer.
  • /usr/include/ Standard-Include-Dateien.
  • /usr/lib/ Bibliotheken für die Binärdateien in / usr / bin / und / usr / sbin /.
  • /usr/sbin/ Nicht wesentliche System-Binärdateien, z. B. Daemons für verschiedene Netzwerkdienste.
  • /usr/share/ Architekturunabhängige (gemeinsam genutzte) Daten.
  • /usr/src/ Quellcode, zB der Kernel-Quellcode mit seinen Header-Dateien.
  • /usr/X11R6/ X Window System, Version 11, Release 6.
  • /usr/local/Tertiärhierarchie für lokale Daten, spezifisch für diesen Host. Enthält normalerweise weitere Unterverzeichnisse, z. B. bin /, lib /, share /. [12]
  • /var/ Variable Dateien - Dateien, deren Inhalt sich während des normalen Betriebs des Systems voraussichtlich ständig ändert, z. B. Protokolle, Spool-Dateien und temporäre E-Mail-Dateien. Manchmal eine separate Partition.
  • /var/lib/Zustandsinformationen. Persistente Daten, die von Programmen während der Ausführung geändert werden, z. B. Datenbanken, Metadaten des Verpackungssystems usw.
  • /var/lock/Dateien sperren Dateien, die die aktuell verwendeten Ressourcen überwachen.
  • /var/log/Protokolldateien. Verschiedene Protokolle.
  • /var/mail/ Benutzerpostfächer
  • /var/run/ Informationen zum laufenden System seit dem letzten Start, z. B. aktuell angemeldete Benutzer und laufende Daemons.
  • /var/spool/ Spool für Aufgaben, die auf Bearbeitung warten, z. B. Warteschlangen und ungelesene E-Mails.
  • /var/spool/mail/Veralteter Speicherort für Postfächer der Benutzer. /var/tmp/Temporäre Dateien, die zwischen Neustarts beibehalten werden sollen.
  • /var/www/ Websitehierarchien (der Standardspeicherort für von Apache betriebene Websites).
1
Benjamin Bannier

Unter Linux sind die Verzeichnisse im Stammverzeichnis /nach dem Filesystem Hierarchy Standard angeordnet . Normalerweise verwendet man einen von der Distribution bereitgestellten Paketmanager zum Installieren und Deinstallieren von Software. Es gibt auch mehrere Orte, an denen Konfigurationsdateien gespeichert werden (vor allem in /etc/), die manchmal vom Benutzer bearbeitet werden müssen. Andernfalls sollten Sie sich außerhalb Ihres Heimatverzeichnisses kaum noch herumschlagen.

Wenn Sie Software von Hand installieren in der Regel wollen Sie nicht wie in die Systemverzeichnisse installieren /usr/bin/, /bin/oder /sbin/oder /usr/sbin/. Stattdessen sollte manuell installierte Software verwendet /usr/local/werden, um Kollisionen mit durch den Paketmanager installierter Software zu vermeiden, die effektiv die gleiche Struktur wie die /manuelle Installation /usr/localals Präfix aufweist

Wenn Sie Software außerhalb der üblichen Struktur installieren, kann die Shell die ausführbaren Dateien nicht finden, und die Binärdateien finden möglicherweise keine Bibliotheken, mit denen sie verknüpft sind. Nach Binärdateien wird in allen Verzeichnissen gesucht, die in der Shell-Variablen aufgeführt sind $PATH, die Sie anpassen können. Dasselbe gilt für $LD_LIBRARY_PATHdie Liste der Verzeichnisse, die beim Auflösen von Linkabhängigkeiten nach Bibliotheken durchsucht werden sollen (siehe man ld).

(Anmerkung: oben enthält eine Menge "normalerweise" und "üblich". Dies liegt daran, dass niemand Sie zwingt, einem (vernünftigen) Standard zu folgen - Sie können sich selbst in den Fuß schießen.)