ubuntuusers.de

Verzeichnishierarchie

Status: Ungelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |
Dieses Thema ist die Diskussion des Artikels Verzeichnisstruktur.

kaputtnik

Anmeldungsdatum:
31. Dezember 2007

Beiträge: 9245

*Du wirst langsam sauer. Schade.*

BigMc schrieb:

BigMc schrieb: Ich hab auch schon geschrieben, dass das was anderes ist. /etc ist zum Beispiel nur zum Verändern da (Konfigurationsdateien). /var/www wär auch witzlos, wenn man es nicht ändert. Wenn man nichts ändern dürfte, wäre dieser Artikel ja nicht nötig. In /usr soll man wirklich nichts ändern.

OK. Stimmt. War gestern n bisschen voreilig... Eine Grundsätzliche Warnung sollte man aber doch ausprechen (s.u.)?

Habe jetzt:

  • Oben "Fortgeschrittenen"-Box eingefügt

  • Oben "Warnung"-Box eingefügt (ist vllt in Deinen Augen unkorrekt, aber die Annahme das Laien den Artikel lesen und anfangen wild Dateien hin und herschieben rechtfertigt die Warnung, oder? Siehe http://forum.ubuntuusers.de/topic/kein-zugriff-auf-dateien-ordner-nach-kopierak/) Alternativ kann für jedes Verzeichnis explizit angeben, ob man Daten ändern darf, oder nicht.

  • /usr/local in Hinweisbox gepackt

Zum Verständnis fehlen mir noch bestimmte Angaben unter /var

  • /var/lib/mysql: Welche Anwendung(en) benötigen das? Welche Art Daten liegen hier? In Amarok kann ich einstellen, welche Datenbank es benutzt. Wenn ich dort mysql einstelle, liegt dann die Datenbank von Amarok in diesem Verzeichnis?

  • /var/www: Ist nicht im FHS vorhanden

  • /var/mail: Welche Art Mails (Programm?) liegen hier? Muss man dazu auch einen Mailserver einrichten?

Desweiteren würde ich noch gerne die Abkürzungen der Verzeichnisnamen etwas erläutern, so als Eselsbrücke... Bei usr scheiden sich ja die Geister woher das kommt, aber dort könnte man beide Varianten benutzen: User und UnixSystemRessources

noisefloor Team-Icon

Anmeldungsdatum:
6. Juni 2006

Beiträge: 29567

Hallo,

/var/lib/mysql

Da liegen die Datenbanken von MySQL drin, dass Verzeichnis ist auch im MySQL Artikel drin.

/var/www

Wie otzenpunk oben schreibt: ist nicht wirklich konform, ist aber Ubuntu das Standardverzeichnis für Websites für Apache & Co.

/var/mail

Keine Ahnung

Gruß, noisefloor

otzenpunk Team-Icon

Avatar von otzenpunk

Anmeldungsdatum:
17. Oktober 2005

Beiträge: 8691

Wohnort: Hamburg-Altona

Ok, ich mach das alles mal ohne Zitate. Hier ist ja ordentlich was los gewesen übers Wochenende. 😉

Unterschied bin/sbin

Der Unterschied ist einfach der, dass Programme in den sbin-Verzeichnissen im Allgemeinen nur Sinn machen, wenn man sie als Administrator ausführt. Normale Benutzer haben daher die sbin-Verzeichnisse nicht im PATH.

Die Übergänge sind manchmal fließend und die Einordnung an den Schnittstellen wohl auch etwas willkürlich. Z.B. können auch normale Benutzer /sbin/ifconfig nutzen, um die aktuellen Daten von Netzwerkschnittstellen abzufragen. (Nicht aber zu verändern.) Dagegen liegt apt-get wohl nur deswegen in /usr/bin, weil es die source-Option gibt, die auch normale Benutzer ausführen können.

NetworkManager

Ihr vergleicht Äpfel mit Birnen. /usr/sbin/NetworkManager ist ein Daemon, der sowohl unter Ubuntu als auch Kubuntu mit Root-Rechten im Hintergrund läuft und die Netzwerkschnittstellen verwaltet. Darauf greift der Benutzer über grafische Frontends zurück, nämlich /usr/bin/knetworkmanager oder das NetworkManager-Applet (/usr/bin/nm-applet).

/ und /usr

Der Unterschied bezieht sich nicht nur auf netzwerkgemountetes /usr, sondern auch auf den Systemstart. Wenn sich /usr auf einer eigenen Partition befindet, wird es erst nach dem fsck eingebunden. Im Rettungsmodus sogar gar nicht. Wäre ziemlich blöd, wenn sich dann Tools wie mount, fsck, usw. in /usr/sbin befinden würden. Gleiches gilt für /bin/sh oder für in den Startskripten genutzte Unix-Tools á la grep, mkdir, chmod usw.

/usr/local und /opt

Wie BigMC schon geschrieben hat: /opt ist für Programmpakete in eigenen Verzeichnissen. Meist sind diese dann statisch gelinkt bzw. bringen alle ihre Bibliotheken mit.

/var/mail

Da liegen die Inboxen der Benutzer drin, wenn man einen Mailserver laufen hat. (Der nicht seinen eigenen Mailspeicher mitbringt.) Da der Mailserver den Benutzern nicht in die Homeverzeichnisse schreiben kann, landen sie alle in seiner Mailbox in /var/mail, wo die Gruppe mail Schreibzugriff hat. Im Mail-Client kann man sich dann ein Konto einrichten, dass mit "lokale Unix-mbox" o.ä. bezeichnet wird.

Ich weiß nicht, inwieweit das an Universitäten oder anderen großen Einrichtungen noch in Gebrauch ist, aber "normale" Desktopbenutzer nutzen heutzutage wohl eher POP3 oder IMAP und daher ist das Verzeichnis meist leer.

Ähnlich wie /var/www entspricht das auch nicht (mehr) dem FHS, wird aber aus Gründen der Abwärtskompatibilität behalten. FHS-konform müsste das Verzeichnis wohl /var/spool/mail heißen, weshalb es einen entsprechenden Symlink gibt.

Bedeutung der Abkürzung /usr

Das bedeutete wirklich am Anfang User, weil dort die Benutzerverzeichnisse der User lagen. Das waren meist auch gleichzeitig Programmierer. In /bin lagen also die Programme des Systems, und in /usr neben den Benutzerverzeichnissen auch die Applikationen, die von den Benutzern programmiert wurden.

Als dann die Rollen der Benutzer und der Programmierer sich trennten, wurde irgendwann /home eingeführt, und irgendein Schlaumeier kam auf die Idee, /usr zukünftig mit "Unix System Resources" zu erklären, was aber auch nicht verständlicher ist, als "User", oder warum befinden sich z.B. Gerätedateien in /dev, obwohl es doch definitiv "Ressourcen" sind?

Siehe auch hier: http://linux.derkeiler.com/Newsgroups/comp.os.linux.misc/2005-12/msg02154.html

Also /usr ist die Abkürzung für "User", und ich wäre jederzeit bereit, dass in einem Edit-War gegen "Unix System Resources" auszufechten. 😈

BigMc

Avatar von BigMc

Anmeldungsdatum:
18. März 2007

Beiträge: 1814

kaputtnik schrieb:

*Du wirst langsam sauer. Schade.*

Keine Sorge, so schnell werde ich nicht sauer. ☺

Ok, habe die Warnung aber etwas geändert. Dass man nur etwas Ändern sollte wenn man weiß, was man tut, kann ruhig gesagt werden, aber dass man generell nichts ändern sollte ist schlicht falsch.

Die Fortgeschrittenen-Box habe ich auch mal wieder entfernt, da der Artikel doch auch für interessierte Einsteiger gut geeignet ist und man kein Vorwissen braucht. Sorry, da habe ich nicht richtig drüber nachgedacht als du gefragt hast.

  • /usr/local in Hinweisbox gepackt

Habe den restlichen Text noch Hinzugefügt und die Beschreibungen der anderen Verzeichnisse so angepasst, dass sie für /usr und /usr/local passen.

Gruß, BigMc

kaputtnik

Anmeldungsdatum:
31. Dezember 2007

Beiträge: 9245

otzenpunk schrieb:

Unterschied bin/sbin

OK. Die Frage bleibt, wie man das am besten im Artikel beschreibt... in wenigen Worten...

NetworkManager

Aha! Dann muss ich annhemen, das der NetworkManager zwar GNOME ist, aber zu jeder Ubuntuinstallation gehört, weil es der networkdaemon ist? Hmmm. ich glaube diese Diskussion ist an dieser Stelle OT...

/ und /usr

Der Unterschied bezieht sich nicht nur auf netzwerkgemountetes /usr, sondern auch auf den Systemstart. Wenn sich /usr auf einer eigenen Partition befindet, wird es erst nach dem fsck eingebunden. Im Rettungsmodus sogar gar nicht. Wäre ziemlich blöd, wenn sich dann Tools wie mount, fsck, usw. in /usr/sbin befinden würden. Gleiches gilt für /bin/sh oder für in den Startskripten genutzte Unix-Tools á la grep, mkdir, chmod usw.

OK. Ist das für den Artikel relevant? Man könnte bei /sbin noch reinschreiben, das /sbin im Gegensatz zu /usr immer

Sollte man die Verzeichnisse nach "Immer vorhanden" und "je nach Betriebssituation engehängt" unterscheiden/ordnen? Sehe ich mittlerweile als Sinnvoll an.

/usr/local und /opt

Wie BigMC schon geschrieben hat: /opt ist für Programmpakete in eigenen Verzeichnissen. Meist sind diese dann statisch gelinkt bzw. bringen alle ihre Bibliotheken mit.

OK. Der Unterschied muss noch eingearbeitet, deutlicher hervorgehoben, werden.

/var/mail

Da liegen die Inboxen der Benutzer drin, wenn man einen Mailserver laufen hat.

Ich sehe gerade, das dort auch Aktivitäten von Anacron gelistet sind (und ich habe keinen Mailserver installiert):

From: Anacron <root@kaputtnik>
To: root@kaputtnik
Subject: Anacron job 'cron.daily' on DerVadder
Message-Id: <E1LYy9H-0001qd-K2@DerVadder>
Date: Mon, 16 Feb 2009 08:44:15 +0100

/etc/cron.daily/apt:
/etc/cron.daily/apt: could not lock the APT cache
run-parts: /etc/cron.daily/apt exited with return code 1

Das sollte man doch im Artikel erwähnen?

Also /usr ist die Abkürzung für "User", und ich wäre jederzeit bereit, dass in einem Edit-War gegen "Unix System Resources" auszufechten. 😈

😊 Ich schreib "User"...


Was haltet ihr von so einer Tabellenstruktur für die Unterverzeichnisse?

/usr

Enthält die meisten Systemtools, Bibliotheken und installierten Programme

Hinweis:

Das Verzeichnis /usr/local enthält noch einmal die gleiche Verzeichnisstruktur wie /usr und ist für Programme gedacht, die man an der Paketverwaltung vorbei installieren möchte, z.B. selbsterstellte Programme. Bei einem neu installierten Ubuntu ist es fast leer.

Unterverzeichnisse (Beispiele)
Verzeichnis Bedeutung Inhalt (Beispiele) Ausführen darf Ändern darf
/usr/bin Distributionsbedingte- und über Paketverwaltung installierte Programme Desktopumgebungen und ihre Programme (Distributionsbedingt) Audacity (nachträglich über Paketverwaltung installiert) Benutzer Paketverwaltung
/usr/include Header-Dateien für C-Programme (nur für Programmierer interessant) - Benutzer Benutzer
/usr/lib Bibliotheken der Programme - - Paketverwaltung
/usr/sbin Distributionsbedingte aber für Linux nicht unbedingt notwendige Systemprogramme dmidecode Administrator Paketverwaltung
/usr/share Im Gegensatz zu #/var für statische, sich nicht ändernde, Dateien; ist Architekturunabhängig, aber nicht für unterschiedliche Betriebsysteme (zB können sich "Ubuntu 8.10 i386" und "Ubuntu 8.10 amd64" dieses Verzeichnis teilen, aber nicht "Ubuntu 8.10" und "Ubuntu 9.04") - - Paketverwaltung
/usr/share/man Manpages - Benutzer Paketverwaltung

BigMc

Avatar von BigMc

Anmeldungsdatum:
18. März 2007

Beiträge: 1814

Ich finde die jetzige Struktur besser als eine Tabelle. Ist übersichtlicher und eine Tabelle führt nur dazu, dass man unwichtige Informationen aus Prinzip mitliefert, nur weil da sonst ein Tabellenfeld frei wär.

Da ist doch nun schon überall sehr schöner Text, der alles viel besser erklärt. ☺

kaputtnik

Anmeldungsdatum:
31. Dezember 2007

Beiträge: 9245

BigMc schrieb:

Habe den restlichen Text noch Hinzugefügt und die Beschreibungen der anderen Verzeichnisse so angepasst, dass sie für /usr und /usr/local passen.

Ok, sieht gut aus 👍

BigMc schrieb:

Ich finde die jetzige Struktur besser als eine Tabelle. Ist übersichtlicher und eine Tabelle führt nur dazu, dass man unwichtige Informationen aus Prinzip mitliefert, nur weil da sonst ein Tabellenfeld frei wär.

Ich finde es eigentlich genau andersherum... 😕 Tabelle = mehr Übersicht. Leere Tabellenfelder sind kein Problem. Wo nix is, braucht man ja auch nix schreiben...

Da ist doch nun schon überall sehr schöner Text, der alles viel besser erklärt. ☺

Man braucht den Text ja nur in die Tabelle eintragen... Am Text selber wird ja nix geändert. Was man nur hinzufügen muss sind die zwei Spalten mit den Rechten, die sicherlich auch von Bedeutung sind.

march wär bestimmt auch für die Tabellenform... ABSTIMMUNG!!! 😀

Derweil die Abstimmung läuft, guck ich nochmal über den Artikel... 😇

march Team-Icon

Avatar von march

Anmeldungsdatum:
12. Juni 2005

Beiträge: 17368

Wohnort: /home/noise

march wär bestimmt auch für die Tabellenform... ABSTIMMUNG!!! 😀

Yep ☺

otzenpunk Team-Icon

Avatar von otzenpunk

Anmeldungsdatum:
17. Oktober 2005

Beiträge: 8691

Wohnort: Hamburg-Altona

kaputtnik schrieb:

Aha! Dann muss ich annhemen, das der NetworkManager zwar GNOME ist, aber zu jeder Ubuntuinstallation gehört, weil es der networkdaemon ist? Hmmm. ich glaube diese Diskussion ist an dieser Stelle OT...

Der NetworkManager ist nicht Gnome, sondern desktop-unabhängig. (Auch wenn er zuerst für Gnome entwickelt wurde.) Genauso wie Apt. Das gibt es auch auf jedem debian-basierten System, aber es gibt verschiedene Frontends wie Synaptic oder Adept, je nachdem welchen Desktop man benutzt oder was einem besser gefällt. Der Unterschied ist bloß, dass der NetworkManager pur, ohne Frontend, wenig Sinn macht.

/ und /usr

Sollte man die Verzeichnisse nach "Immer vorhanden" und "je nach Betriebssituation engehängt" unterscheiden/ordnen? Sehe ich mittlerweile als Sinnvoll an.

Ich würde einfach unterteilen in muss beim Systemstart vorhanden sein und der Rest.

/var/mail

Da liegen die Inboxen der Benutzer drin, wenn man einen Mailserver laufen hat.

Ich sehe gerade, das dort auch Aktivitäten von Anacron gelistet sind (und ich habe keinen Mailserver installiert):

Da mbox-Dateien einfache Textdateien sind, kann natürlich jedes Programm mit den entsprechenden Schreibrechten da eine Mail anhängen. Im allgemeinen findet das aber nicht statt, und die meisten Cron-Jobs achten extra darauf keine Ausgaben zu produzieren. Der durchschnittliche Benutzer kommt mit diesem Verzeichnis überhaupt nicht in Berührung, weswegen ich die Beschreibung ziemlich kurz halten würde. Also in etwa so: Ist eben da. Kannst du ignorieren. Hat was mit der Mailzustellung zu run, wenn man keine IMAP- oder POP-Server benutzt, und auch kein Webmail, sondern lokale Unix-Postzustellung. (Das Wort "Unix" ist immer gut dafür geeignet, damit Leute sich keine weiteren Gedanken darüber machen wollen. 😉 )

Also /usr ist die Abkürzung für "User", und ich wäre jederzeit bereit, dass in einem Edit-War gegen "Unix System Resources" auszufechten. 😈

😊 Ich schreib "User"...

Ich würde es so schreiben: /usr stand ursprünglich für "User", weil dort u.a. die Benutzerverzeichnisse untergebracht waren. Neben der Software, die von Benutzern gepflegt wurde. Inzwischen wurden diese Funktionen aber getrennt und die Benutzerverzeichnisse nach /home umgesiedelt. Die /usr-Hierarchie enthält heutzutage die meisten Systemtools, Bibliotheken und installierten Programme, die nicht aus irgendwelchen Gründen in der Top-Level-Hierarchie liegen.

Was haltet ihr von so einer Tabellenstruktur für die Unterverzeichnisse?

Ich bin da eher der Meinung von BigMC, aber nicht bloß weil man dann unnötige Tabellenzellen mit Überflüssigem stopft, sondern auch weil man u.U. einen Sachverhalt unangemessen kurz abhandelt, um das Tabellenlayout nicht zu zerreißen.

kaputtnik

Anmeldungsdatum:
31. Dezember 2007

Beiträge: 9245

Oh shit... 2:2

noisfloor spielt das Zünglein an der Waage 😉

otzenpunk schrieb:

Ich bin da eher der Meinung von BigMC,

otzenpunks "eher" ist eine Tendenz... Also stehts "eher": 1,5(contra) : 2,5 (pro) 😛

aber nicht bloß weil man dann unnötige Tabellenzellen mit Überflüssigem stopft, sondern auch weil man u.U. einen Sachverhalt unangemessen kurz abhandelt, um das Tabellenlayout nicht zu zerreißen.

Ich habe im Beispiel genau den gleichen Text hergenommen, wie er eh schon im Artikel drinsteht. Also unangemessen kurz kann man das nicht nennen.

Der einzige Nachteil: Der Artikelcode wird dann etwas unleserlich.

BigMc

Avatar von BigMc

Anmeldungsdatum:
18. März 2007

Beiträge: 1814

kaputtnik schrieb:

Der einzige Nachteil: Der Artikelcode wird dann etwas unleserlich.

Du meinst wohl "zusätzlicher Nachteil". 😛

kaputtnik

Anmeldungsdatum:
31. Dezember 2007

Beiträge: 9245

BigMc schrieb:

kaputtnik schrieb:

Der einzige Nachteil: Der Artikelcode wird dann etwas unleserlich.

Du meinst wohl "zusätzlicher Nachteil". 😛

😊

linopolus

Avatar von linopolus

Anmeldungsdatum:
21. Juli 2008

Beiträge: 986

Wohnort: Ottendorf-Okrilla

Falls das ueberhaupt eine Rolle spielt: Ich bin gegen eine Tabellenstruktur, aus den schon genannten Gruenden:

Der Artikelcode wird dann etwas unleserlich.

Na gut, das interessiert mich wenig 😉

aber nicht bloß weil man dann unnötige Tabellenzellen mit Überflüssigem stopft, sondern auch weil man u.U. einen Sachverhalt unangemessen kurz abhandelt, um das Tabellenlayout nicht zu zerreißen.

Ist natuerlich ausser Kraft gesetzt, wenn man einfach das schon vorhandene uebernimmt. Aber die Versuchung ist vielleicht hoeher... 😉

Ich finde die jetzige Struktur besser als eine Tabelle. Ist übersichtlicher und eine Tabelle führt nur dazu, dass man unwichtige Informationen aus Prinzip mitliefert, nur weil da sonst ein Tabellenfeld frei wär.

Und natuerlich das ich Tabellen(kA warum]☺) generell nicht mag 😉

kaputtnik

Anmeldungsdatum:
31. Dezember 2007

Beiträge: 9245

Dann stehts jetzt 2,5 : 2,5 ...

Ok, is ja gut, die Tabelle lass ich sein.

Da es nicht meine Artikel-idee ist, und ich nur den Artikel bearbeite damit er aus der Baustelle kommt, füge ich in den nächsten Tagen noch einige der hier angesprochenen Änderungen ein und gut is.

Melde mich dann wieder zum abschließenden showdown 😉

noisefloor Team-Icon

Anmeldungsdatum:
6. Juni 2006

Beiträge: 29567

Hallo,

ohne Tabellen ist schon schön.

Ein Detail: unter /var sollte IMHO das MySQL Verzeichnis weg - das passt nicht zum Artikel, weil es sehr Programm-spezifisch ist. Und ohne installiertes MySQL (was ja per Voreinstellung der Fall ist) sollte das Verzeichnis so wie so nicht existeren.

Gruß, noisefloor