Entfernen Sie die Dokumentation, um Speicherplatz auf der Festplatte zu sparen

58

Ich mag es, eine ziemlich kleine Ubuntu-Installation in einer Virtual Box-Maschine zu erstellen. Grundsätzlich sollten nur TeX Live und verwandte Tools bereitgestellt werden. Ich dachte jetzt, dass ich fast 1 GB Daten unter habe /usr/share/doc. Ich brauche diese Dokumentation in diesem Fall nicht, sondern nur die LaTeX-bezogenen manSeiten, die sich nicht dort befinden.

Gibt es eine Möglichkeit, alle diese Dokumentationsdateien mithilfe von zu deinstallieren apt-get?
Oder ist es sinnvoll, nur den Inhalt von zu löschen /usr/share/doc?
Ich teile die Virtual Box-Maschine gerne mit anderen, die keine Probleme haben sollten.

Martin Scharrer
quelle
Dieselbe
user7610
Die Antwort von Denilson löst dieses Problem, ohne einen Hammer zu nehmen. Deinstallieren Sie einfach die doc-Pakete.
Zaz

Antworten:

36

Laut Ubuntu-Wiki können Sie anweisen dpkg, keine Dokumentation zu installieren. Dies sollte verhindern, dass Dokumentation (außer Copyright-Informationen) von apt installiert wird.

Erstellen Sie eine Datei, in /etc/dpkg/dpkg.cfg.d/01_nodocder die gewünschten Filter angegeben sind. Beispiel:

path-exclude /usr/share/doc/*
# we need to keep copyright files for legal reasons
path-include /usr/share/doc/*/copyright
# if you also want to remove the man pages uncomment the next line
#path-exclude /usr/share/man/*
path-exclude /usr/share/groff/*
path-exclude /usr/share/info/*
# lintian stuff is small, but really unnecessary
path-exclude /usr/share/lintian/*
path-exclude /usr/share/linda/*

Dann können Sie die bereits installierte Dokumentation manuell entfernen:

find /usr/share/doc -depth -type f ! -name copyright|xargs rm || true
find /usr/share/doc -empty|xargs rmdir || true
rm -rf /usr/share/groff/* /usr/share/info/*
rm -rf /usr/share/lintian/* /usr/share/linda/* /var/cache/man/*

Wenn Sie auch die Manpages entfernen möchten, gehen Sie wie folgt vor:

rm -rf /usr/share/man/*

Das Beispiel ist für OEMs geschrieben, hat aber auch bei mir funktioniert. Ich habe mein /usr/share/doc/Verzeichnis von ~ 150 MB auf ~ 20 MB verkleinert.

Andrew Ensley
quelle
Ich musste einen dieser Ordner neu erstellen, um die Empfehlung von @ denilson-sá purge zum Laufen zu bringen. Im Einzelnen: mkdir /usr/share/info.
AT
3
Auf einem lokalen Computer können Sie auch die Copyright-Dateien löschen, wodurch weitere ~ 50 MB eingespart werden. Kommentieren Sie diese Zeile wie folgt:# path-include /usr/share/doc/*/copyright
rubo77
1
Die erste Zeile (plus Löschen des Copyrights) hat mir am 13.04. 37MB zur Verfügung gestellt. Es gibt viele verknüpfte Dateien, die von der Suche übersehen werden. Dies hilft durch 5MB: find /usr/share/doc | egrep "\.gz" | xargs rm. Dies fällt die Größe auf 26 MB nach unten: find /usr/share/doc | egrep "\.pdf$" | xargs rm. Hinunter bis 21 MB: find /usr/share/doc | egrep "\.tex$" | xargs rm. Es sind jedoch noch viele weitere Dateien übrig.
Ahcox
@AT, die Befehle in meiner Antwort werden nicht entfernt /usr/share/info. nur sein Inhalt. Das Verzeichnis sollte nach dem Ausführen noch vorhanden sein.
Andrew Ensley
1
Ich empfehle diesen Schritt nicht für ein paar MB. Ich habe und mein System wurde kaputt. Beispielsweise überprüft Virtualbox die Installation, indem überprüft wird, ob ein Verzeichnis /usr/share/doc/virtualboxvorhanden ist. Das Verzeichnis wurde erstellt und alles hat gut funktioniert. Ich habe ungefähr 2 Tage gebraucht, um das herauszufinden. Sprechen Sie über Raum-Zeit-Kompromiss!
12.
31

Dies sollte die Dokumentation für latexbezogene Pakete entfernen:

sudo apt-get --purge remove tex.\*-doc$

Das spart ein paar hundert MB.

mopagemo
quelle
8
Dies scheint auch mein texlive-fullPaket zu entfernen .
Joar
5
@joar Das ist beabsichtigt. texlive-full ist ein Metapaket, das alle Abhängigkeiten
abruft
1
@nealmcb, Aber dann entfernt die automatische Entfernung alle Ihre Tex-Pakete. Genauer gesagt: Wenn Sie tex über texlive-full installiert und anschließend die doc-Pakete entfernt haben, ist texlive-full nicht mehr verfügbar. apt-get autoremoveWenn Sie das nächste Mal ausführen , werden auch alle Ihre Tex-Pakete gelöscht, da sie nur deshalb dort waren, weil sie von texlive-full abhingen, das nicht mehr da ist.
Isarandi
@isarandi Wenn Sie texlive-full für die Installation verwendet haben, klingt das nach einem guten Punkt. Noch ein paar Hinweise : Vorschlag für 2017 zur Aufteilung der Dokumente: bugs.debian.org/cgi-bin/bugreport.cgi?bug=877862 und weitere Angaben zu den Größen: reddit.com/r/LaTeX/comments/2naxke/why_is_texlive_so_large
nealmcb
14

Schneller und unkomplizierter Weg, um die installierten texlive-Pakete zu finden (ich bin mir zu 100% sicher, dass es auch andere Möglichkeiten gibt):

dpkg -l | grep '^ii.*texlive.*doc'

Und sie entfernen:

apt-get remove --purge \
  texlive-fonts-recommended-doc texlive-latex-base-doc texlive-latex-extra-doc \
  texlive-latex-recommended-doc texlive-pictures-doc texlive-pstricks-doc
Denilson Sá Maia
quelle
3
Dies wird auch texlive-fullunter Ubuntu 16.04 entfernt.
12.
6
texlive-fullist ein Metapaket, das alle Abhängigkeiten einschließlich der Dokumentation erfasst.
Denilson Sá Maia
Dies ist die beste und einfachste Antwort.
Shivams
3

Wissen Sie, was den ganzen Raum einnimmt? Meine /usr/share/docist nur ~ 50MB. Wenn nicht, verwenden Sie die Disk Analyzer-Anwendung oder gehen Sie zum Terminal und führen Sie sie aus cd /usr/share/doc. dann laufen du -h -d 1, um herauszufinden, was all diesen Raum nutzt. Wenn Sie wissen, welches Programm oder welches Programm das Problem ist, können Sie entscheiden, ob Sie die Verzeichnisse entfernen möchten /usr/share/docoder nicht.

notkevin
quelle
Mir war nicht bewusst, dass die Verzeichnisnamen unter /usr/share/docden Paketnamen sind. Zumindest von einigen scheint dies wahr zu sein. Ich habe du -sc * | sort -nin /usr/share/doc. Der größte Teil des Speicherplatzes wurde aus den TeX Live 2009-Dokumentationsdateien entnommen, die ich sowieso nicht möchte, da ich die manuell installierten TL 2011-Dateien habe. Danke, obwohl ich immer noch gerne sehen möchte, ob es eine Möglichkeit gibt, die apt-getmeisten Dokumente zu durchsuchen , hat sich diese Lösung für diesen Fall bewährt.
Martin Scharrer
1
Und für diejenigen, die mit du nicht vertraut sind: Sie können Baobab verwenden, um die Festplattennutzung zu analysieren. Man muss es allerdings als root ausführen (sudo baobab), um den Inhalt von /
Vistaus
0

ist es vernünftig, nur den Inhalt von zu löschen /usr/share/doc?

Wenn Sie dies tun, werden die Dateien neu installiert, wenn eines der Pakete aktualisiert wird. Sie sollten stattdessen die entsprechenden Dokumentationspakete entfernen, die häufig (aber nicht immer) auf enden-doc .

Mechanische Schnecke
quelle