Posso desativar todas as páginas do manual?

8

Especificamente em um pi de framboesa (rodando Raspbian Wheezy), mas também em geral, posso desabilitar todas as páginas de manual?

Isso significa que não há páginas de manual armazenadas, nenhum "acionamento de processamento para o man-db" e assim por diante. Com as páginas de manual sempre disponíveis na internet, eu realmente não preciso delas instaladas, e gerá-las e armazená-las parece desnecessário.

    
por Soumya 11.05.2014 / 08:52

4 respostas

12

Eu estava tendo o problema oposto em uma imagem do Debian 8 que alguém montou para um Wandboard. Eu estava tentando encontrar a página de manual para alguns pacotes que já estavam instalados e notei que depois de instalar alguns novos, as páginas de manual estavam faltando, mesmo que elas estivessem presentes no arquivo deb.

Encontrei então este arquivo 01_nodoc em /etc/dpkg/dpkg.conf.d, que é uma solução simples para a pergunta original sobre como economizar espaço excluindo páginas de manual e locais e arquivos de direitos autorais onde o espaço é um prêmio (por exemplo, sistemas incorporados).

# /etc/dpkg/dpkg.conf.d/01_nodoc

# Delete locales
path-exclude=/usr/share/locale/*

# Delete man pages
path-exclude=/usr/share/man/*

# Delete docs
path-exclude=/usr/share/doc/*
path-include=/usr/share/doc/*/copyright
    
por 23.05.2015 / 18:57
6

A questão é que o sistema de gerenciamento de pacotes espera que os arquivos que ele instala (incluindo man pages) permaneçam lá, então qualquer mecanismo que você use para removê-los (exceto reconstruir todos os pacotes como o HalosGhost sugere) irá confundi-lo.

Se o que você está fazendo é produzir um appliance de finalidade única, uma abordagem que você pode adotar é ter etapas de criação e implementação separadas para o appliance. Ou seja, você instala todos os pacotes que deseja em um ambiente de criação separado (um cartão SD diferente ou um RPi emulado) e copia somente o que deseja ter na produção, do ambiente de construção para o ambiente de produção. Nesse estágio, você pode deixar de fora as man pages e qualquer outra coisa que não seja necessária na produção.

Para obter atualizações do sistema operacional ou de segurança, você atualiza ou recria o ambiente de criação e copia (ou rsync) para produção novamente.

Isso é um pouco mais trabalhoso, mas oferece um dispositivo de produção muito controlado, em comparação ao login e à execução de atualizações diretamente nele.

    
por 11.05.2014 / 10:32
5

Bem, não sabendo qual distro seu RPi está executando, não posso ajudá-lo com os comandos exatos, mas você provavelmente pode remover o pacote man-db que fornece o utilitário man e uma variedade de páginas man. No entanto, a remoção de todas as páginas man requer a remoção de cada página man de cada pacote - não posso imaginar que isso valha a pena apenas para economizar KiBs de espaço.

Se você realmente quisesse, precisaria reconstruir cada pacote; em uma distro como Archlinux ou Gentoo, isso não é necessariamente impossível, mas ainda é bastante entediante. Em outras distros menos "hands-on", você pode achar essa tarefa incrivelmente difícil.

    
por 11.05.2014 / 09:11
4
$ cat /etc/apt/apt.conf.d/90debsums 
DPkg::Post-Invoke { "if [ -x /usr/bin/debsums ]; then /usr/bin/debsums --generate=nocheck -sp /var/cache/apt/archives; fi"; };

O pacote debsums instala uma ação para gerar listas md5sum para pacotes automaticamente depois que um pacote é instalado sem ter um arquivo md5sums próprio.

Você pode adicionar uma ação semelhante à pós-instalação para verificar e remover as páginas de manual (e os documentos de informações) após cada ação de instalação.

Para obter os manpages e os pacotes proprietários, você precisa varrer todos os arquivos /var/lib/dpkg/info/PACKAGENAME.list .

Você deve atualizar os arquivos *.list para não mencionar as páginas de manual removidas também.

localepurge parcialmente também faz isso. Citado de apt-cache show localepurge :

This is a script to recover disk space wasted for unneeded locales, Gnome/KDE localizations and localized man pages. Depending on the installation, it is possible to save some 200, 300, or even more mega bytes of disk space dedicated for localization you will most probably never have any use for. It is run automagically upon completion of any apt installation actions.

A citação mais importante:

Please definitely do abstain from reporting any such bugs blaming localepurge if you break your system by using it. If you don't know what you are doing and can't handle any resulting breakage on your own then please simply don't use this package.

; - D

Portanto, faça um backup completo e tente escrever seu manpagekiller ...

    
por 11.05.2014 / 20:21