Linux: Wo werden installierte Programme gespeichert?

6 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Hallo

Wo werden denn die Programme gespeichert, wenn man sie installiert?

Das kommt darauf an welche Software es ist.

Die Pfade auf die der User zugriff hat stehen in der Systemvariablen $PATH, das sieht bei mir so aus:

$PATH
/home/linuxhase/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/X11R6/bin:/usr/games:/opt/kde3/bin:/home/linuxhase/

Wenn sie außerhalb des /home-Verzeichnisses sind, dann sollte ja die Partition "/" doch nicht so klein sein.

Da Linux-Systeme aggressiv miteinander verzahnt sind und sich die Bibliotheken teilen, ist der tatsächliche Speicherverbrauch extrem gering. In meinen über sieben Jahren Linux Nutzung habe ich die 20 GB noch nie gesprengt, trotz meiner vier installierten Desktops.

Bei Windows sind es ja auch nicht unbedingt die Programme, sondern die Multimediadateien der Spiele, welche so viel Festplattenspeicher benötigen; könnte man die außerhalb von C:\ ablegen wäre viel Platz darauf gewonnen.

Linuxhase

Woher ich das weiß:eigene Erfahrung – Ich benutze seit 2007 Linux und habe LPIC101 und LPIC102
kururin 
Fragesteller
 22.11.2013, 14:46

Ok, danke für die Antwort. Ich denke mal, 25-30 GB dürften also auf jeden Fall reichen und du kriegst den Stern :)

1

das ist unterschiedlich. Programme werden u.a. in /bin oder /usr/bin oder /sbin oder ... gespeichert.

Man kann selbstverständlich auch Programme z.B. unter /home//bin speichern. Die Systemwerkzeuge verwenden aber die Verzeichnisse, die ich oben angegebene habe.

Unix/Linux besitzt nur einen Verzeichnisbaum, der mit / beginnt. Man kann so auf den ersten Blick nicht erkennen wie viele Partitionen da eingebunden sind. Erst mit dem Befehl mount wird das durchsichtiger.

Deine Annahme, dass / nicht zu klein sein darf ist nicht korrekt. Die Partition mit der Wurzel muss mindestens so groß sein, dass alle Programme, die beim Booten benötigt werden , auch dort Platz finden.

Firefox z.B. wird dafür nicht gebraucht, diese Programm, wie viele andere kann man dann auf anderen Partitionen speichern. Sollte es mal eng werden, dann kann der erfahrene Benutzer eine 2. Platte in sein System integrieren und z.B. /opt/ dorthin verlagern. ( das gilt auch für die Erweiterung von /home )

Er muss nur aufpassen, dass alles das, was vor dem mounten der Partitionen benötigt wird, auch verfügbar ist.

So kritisch ist aber der Platzbedarf nicht. Auch große Programme sind nicht zu groß, denn viele Programmteile werden aus Bibliotheken geholt, die sie mit anderen Programmen "teilen".

Woher ich das weiß:Berufserfahrung – openSuSE seit 1995

Programme bestehen aus den Programm an sich, Bibliotheken, Grafiken für Symbole und einigem mehr.

Diese Dinge werden auf verschiedene Verzeichnisse aufgeteilt...

Ausführbare Programme zB unter:

  • /usr/bin
  • /usr/local/bin
  • /usr/sbin
  • /usr/local/sbin
  • /bin
  • /sbin
  • /opt
  • usw.

Bibliotheken zB unter:

  • /lib
  • /usr/lib
  • /usr/local/lib
  • etc.

Symbole wieder wo anders....

Auf der Root-Ebene (/) gibt es aber noch andere Verzeichnisse wie

/tmp in dem temporäre Dateien erstellt / gespeichert werden

/var in dem zB im Unterordner /var/log dann die ganzen Protokolle und Log-Dateien angelegt werden oder /var/spool in dem Warteschlangen liegen, in denen wieder Dateien angelegt werden im laufenden Betrieb...

Sprich es geht nicht nur um die Programme sondern auch um einiges mehr was Linux so im Betrieb anlegt...

Für alle Fälle empfehle ich darum / auf 50-100 GB zu setzen und /home auf eine eigene Partition zu legen und SWAP sollte 2 mal so groß wie der RAM sein. Nimm lieber 100GB - Speicherplatz kostet ja heute nicht die Welt...

Dann musst du dir auch keine Sorgen machen...

Wenn du einen Server betreibst, der ebenfalls Daten unter /var ablegt (zB MySQL-Server) dann solltest du /var eine eigene Partition in ausreichender Größe spendieren!

Auf Servern empfiehlt es sich im allgemeinen immer /var als eigene Partition anzulegen, damit Log-Dateien nicht über kurz oder lang den ganzen Speicherplatz der Root-Partition verbrauchen...

Linuxhase  20.11.2013, 21:13

@mbauer588

Für alle Fälle empfehle ich darum / auf 50-100 GB zu setzen

  • Auch wenn Festspeicher heute so günstig sind das es nicht ins "Gewicht" fällt, ist Deine Empfehlung total übertrieben.
  • Auch beim SWAP die gleiche maßlose Übertreibung.
    • SWAP braucht keinesfall größer zu sein als der gesamte Arbeitsspeicher (sofern genug davon da ist), denn dorthin wird ja nur soviel ausgelagert wie nicht mehr in den RAM passt.

In mehr als 7 Jahren hat mein /-Laufwerk noch niemals die 20Gb überschritten.

Linuxhase

0
mbauer588  21.11.2013, 08:56
@Linuxhase

Naja mein Centos-PC steht auf 16GB von 49GB und mein Fedora-Experimentier-PC auf 29GB von 70GB...

Kommt drauf an wieviel man installiert und welche Pakete...

Selbst wenn ich mal DVDs rippe oder irgendwas rendere oder Filme schneide und darum größere Datenmengen unter /tmp einlagere brauch ich mir keine Sorgen zu machen...

Mein Vorschlag war ja eine Partition für / eine für /home und eine SWAP...

Sprich auf er / Partition muss ich dann ja noch mit Platz für /var /tmp klakulieren...

Mit SWAP gebe ich dir Recht... Die Regel SWAP = 2 x RAM ist alt... Ob man nun 4GB oder 8GB SWAP vergibt ist egal... Aber mehr als 8GB SWAP wäre bei schon sehr übertrieben.

0
Linuxhase  21.11.2013, 20:48
@mbauer588

@mbauer588

Naja mein Centos-PC steht auf 16GB von 49GB und mein Fedora-Experimentier-PC auf 29GB von 70GB...

Du willst mir aber nicht erzählen das die Installationsroutine das explizit so verlangt hat oder?

Zeig doch für Spaß mal:

df -hT
sudo du -ch / 2>/dev/null | egrep '[0-9]*,[0-9]*G|insgesamt'

Linuxhase

0
mbauer588  21.11.2013, 21:09
@Linuxhase

Ne, natürlich hat der Installer das so nicht verlangt!

Beim Centos-PC wird dich das interessieren:

8,9G   /usr
2,2G   /opt
2,8G   /var
1,9T   insgesamt

Die Ausgabe hab ich gleich um Unterordner und /home/* gekürzt.

Am Fedora-PC ist mehr oder weniger Haufenwweise Software installiert und ich bin schlicht weg zu faul was ich mal ausprobiert habe und nicht mehr brauche zu deinstallieren...

Dennoch ist meine Empfehlung mal 50-100 GB einzuplanen wobei 50 GB reichen für den normalen Betrieb... Vor allem auf Rechnern die lange laufen (wie zB unsere Centos-PCs in der Firma) ca. 2,5 Jahre sammelt sich in /var einiges an und auch in /usr bleiben immer wieder altlasten über...

Was mit den von dir vorgeschlagenen 20GB schnell mal knapp werden kann!

Speziell Anfänger wollen mal rumprobieren und da wird dann schnell man einiges Zeug installiert... Da ist etwas mehr Platz schon hilfreich!

0
Linuxhase  24.11.2013, 00:36
@mbauer588

@mbauer588

Die Ausgabe hab ich gleich um Unterordner und /home/* gekürzt.

Dafür gibt es ja Parameter und grep :-)

Hast aber eine beachtliche Größe bei opt&var, denn da habe ich nur MB statt GB:

du -ch / --max-depth=1 2>/dev/null | egrep -v 'home|windows|mint|tmp|lost|media|proc|sys'
20M     /lib64
387M    /lib
4,6M    /bin
240K    /dev
1,4M    /srv
199M    /root
27M     /etc
4,0K    /.w3m
4,0K    /selinux
11M     /sbin
9,1G    /usr
19M     /run
832M    /var
57M     /boot
8,0K    /.config
65M     /opt
4,0K    /mnt
594G    /
594G    insgesamt

Am Fedora-PC ist mehr oder weniger Haufenwweise Software installiert und ich bin schlicht weg zu faul was ich mal ausprobiert habe und nicht mehr brauche zu deinstallieren...

Ja Altlasten und nicht aufgeräumte Verzeichnisse tragen schnell dazu bei das etwas überläuft. Ich räume regelmäßig auf. Aber Du hast recht, im Firmeneinsatz oder mit vielen Benutzern, kann /var ganz schnell voll werden - Da möchte ich gar nicht wissen welchen Loglevel Du verwendest.

Speziell Anfänger wollen mal rumprobieren und da wird dann schnell man einiges Zeug installiert... Da ist etwas mehr Platz schon hilfreich!

Dann sind aber 50GB auch genug für Anfänger (Vor allem weil die ja doch schneller mal neu installieren weil sie nicht aufräumen könne.

Linuxhase

0
mbauer588  24.11.2013, 01:09
@Linuxhase

Dafür gibt es ja Parameter und grep :-)

Ist mir klar! Nur hatte ich deinen Befehl schon abgesetzt und gleich in eine Datei umgeleitet... Daher hab ich nur die 3 Zeilen rauskopiert ;-)

Unter /opt sind einige gekaufte Programme drin und eines von denen lagert die Daten in einer MySQL-DB aus... Die liegt dann unter /var ;-)

Is doof so aber ich hab beim installieren der Dinger nicht aufgepasst und bin nun etwas zu faul um das zu ändern... :(

Außerdem hab ich so einen schwachsinnigen speziellen VPN-Client vom einem Firewall-Hersteller (bin am Mac und will den Lappi nicht extra booten daher weiß ich den Namen grad nicht) der mich nach 10 Min inaktivität disconected... Wenn ich den auf Verbindung halten stelle macht das Unding alle 10 min. einen Auto-Reconnect und schreibt wieder zig Zeilen in ein Logfile... Das Mistding ballert mir /var regelmäßig voll!

Aber so kann das gehen... Ein paar Tools oder Spiele installiert und / ist auch schnell voll... Bei mir ist es andere Software. Du hast ja Recht für den Büro-PC reichen 20GB auch aus... Bei einem Anfänger empfehle ich gern mehr... Installier mal Flightgear oder noch 2-3 ähnlich große Spiele dann bekommst du 50GB auch bald voll.

0

Das lässt sich nicht pauschal beantworten. Da kochen viele Distributionen leider ihr eigenes Süppchen. Aber die gängigsten Verzeichnisse sind meines Wissens /usr/bin/, /usr/local/bin und /opt.

Wenn sie außerhalb des /home-Verzeichnisses sind, dann sollte ja die Partition "/" doch nicht so klein sein.

$ df -h
Dateisystem    Größe Benutzt Verf. Verw% Eingehängt auf
/dev/sda1        46G     25G   19G   58% /
dev             1,9G       0  1,9G    0% /dev
run             1,9G    592K  1,9G    1% /run
tmpfs           1,9G    7,0M  1,9G    1% /dev/shm
tmpfs           1,9G       0  1,9G    0% /sys/fs/cgroup
tmpfs           1,9G     12K  1,9G    1% /tmp
/dev/sda2       413G     81G  311G   21% /home
/dev/sdb1       1,8T    1,1T  644G   64% /media/extern

Wie du siehst, so groß sind Programme gar nicht. Und 8GB gehen noch für mein swapfile drauf.