Kann ich speziell auf einem Himbeer-Pi (mit Raspbian Wheezy), aber auch allgemein, alle Manpages deaktivieren?
Dies würde keine gespeicherten Manpages bedeuten, keine "Verarbeitungsauslöser für man-db" und so weiter und so fort. Da die Handbuchseiten immer im Internet verfügbar sind, muss sie nicht wirklich installiert werden, und das Generieren und Speichern scheint unnötig.
debian
package-management
man
Soumya
quelle
quelle
/usr/share/doc
.Antworten:
Ich hatte das gegenteilige Problem mit einem Debian 8-Image, das jemand für ein Wandboard zusammengestellt hatte. Ich habe versucht, die Handbuchseite für einige bereits installierte Pakete zu finden, und festgestellt, dass nach der Installation einiger neuer Pakete die Handbuchseiten fehlten, obwohl sie in der Deb-Datei vorhanden waren.
Ich habe dann diese Datei 01_nodoc in /etc/dpkg/dpkg.conf.d gefunden. Dies ist eine einfache Lösung für die ursprüngliche Frage, wie Speicherplatz gespart werden kann, indem manuelle Seiten und Gebietsschemas sowie Copyright-Dateien gelöscht werden, bei denen der Speicherplatz knapp ist (z. B. eingebettet) Systeme).
quelle
Das Problem ist, dass das Paketverwaltungssystem erwartet, dass die von ihm installierten Dateien (einschließlich Manpages) dort verbleiben. Unabhängig davon, welchen Mechanismus Sie zum Entfernen verwenden (außer, dass jedes Paket neu erstellt wird, wie von HalosGhost vorgeschlagen), wird es verwirrt.
Wenn Sie eine Single-Purpose-Appliance erstellen möchten, können Sie auch separate Build- und Bereitstellungsschritte für die Appliance durchführen. Das heißt, Sie installieren alle gewünschten Pakete in einer separaten Build-Umgebung (einer anderen SD-Karte oder einem emulierten RPi) und kopieren dann nur das, was Sie in der Produktion haben möchten, aus der Build-Umgebung in die Produktionsumgebung. In diesem Stadium können Sie Manpages und alles andere weglassen, was in der Produktion nicht benötigt wird.
Um aktualisierte Betriebssystem- oder Sicherheitskorrekturen zu erhalten, aktualisieren oder erstellen Sie die Build-Umgebung neu und kopieren (oder rsync) erneut in die Produktion.
Das ist ein bisschen mehr Arbeit, aber es gibt Ihnen ein sehr kontrolliertes Produktionsgerät im Vergleich zum Anmelden und direkten Ausführen von Upgrades.
quelle
Nun, da ich nicht weiß, welche Distribution Ihr RPi ausführt, kann ich Ihnen nicht mit den genauen Befehlen helfen, aber Sie können wahrscheinlich das
man-db
Paket entfernen , das sowohl dasman
Dienstprogramm als auch eine Vielzahl von Manpages bietet . Das Entfernen aller Manpages würde jedoch das Entfernen jeder Manpage aus jedem Paket erfordern - ich kann mir nicht vorstellen, dass dies Ihre Zeit wert ist, nur um KiBs Platz zu sparen.Wenn Sie wirklich wollten, müssten Sie jedes Paket neu erstellen. In einer Distribution wie Archlinux oder Gentoo ist dies nicht unbedingt unmöglich, aber dennoch ziemlich langweilig. Bei anderen weniger "praktischen" Distributionen ist diese Aufgabe möglicherweise unglaublich schwierig.
quelle
apt-get remove --purge man-db
wird auch deinstalliertdebhelper
wird das nicht benötigt?Das Paket
debsums
installiert eine Aktion zum automatischen Generieren von md5sum-Listen für Pakete, nachdem ein Paket installiert wurde, ohne bereits eine eigene md5sums-Datei zu haben.Sie können nach jeder Installationsaktion eine ähnliche Aktion nach der Installation hinzufügen, mit der nach Manpages (und Infodokumenten) gesucht und diese entfernt werden.
Um die Manpages und die Besitzpakete zu erhalten, müssen Sie alle
/var/lib/dpkg/info/PACKAGENAME.list
Dateien durchsuchen .Sie sollten die
*.list
Dateien aktualisieren , ganz zu schweigen von den entfernten Manpages.localepurge
teilweise auch. Zitiert ausapt-cache show localepurge
:Das wichtigste Zitat:
;-D
Machen Sie einfach ein vollständiges Backup und versuchen Sie, Ihre
manpagekiller
...quelle
man-db
). Ich würde den Post-Invoke-Hook/etc/dpkg.cfg.d
eher über als über APT hinzufügen , um direkte Aufrufe von zu verarbeitendpkg
..deb
Aktion pro Paket (pro ) istdpkg
dies sogar einfacher als als Aktion nach der Installation,apt
da Sie den Paketnamen haben und nicht alle*.list
Dateien immer wieder nach Manpages durchsuchen müssen. Ich habe nur vergessen, dassdpkg
sich auch ein Haken hat ...*.list
Dateien noch gescannt werden. Trotzdem ist derdpkg
Post-Invoke-Hook der bessere Ort, um diese Aktion auszulösen.