
Percebi que tenho vários locales desnecessários instalados, por exemplo, firefox-locale-
. Eu só preciso de um local.
Como remover todo o resto?
Responder1
Primeiro digite o locale
comando para imprimir sua configuração de localidade atual. Além disso, você pode usar locale -a
para exibir uma lista de todas as localidades disponíveis.
Limpando localidades não utilizadas
Instale localepurge
para remover quaisquer idiomas indesejados, enquanto escolhe aqueles que deseja manter. Observe que este método não alterará as configurações de localidade do seu sistema. Isso apenas limpará os locais que você não selecionou. Use por sua conta e risco.
sudo apt-get install localepurge
Depois disso, você pode reiniciarou tente correr source /etc/default/locale
.
Para reconfigurar isso, basta digitar o seguinte no terminal:
sudo dpkg-reconfigure localepurge
Outra maneirarespondido aquié para
sudo locale-gen --purge <locales YOU WANT TO KEEP>
Referência
Responder2
A menos que você precise mudar para vários locais o tempo todo, você pode desinstalar os locais não utilizados e liberar uma certa quantidade de espaço de armazenamento em seu sistema.
Instale o Localepurge através do terminal:
sudo apt-get install localepurge
Assim que a instalação for concluída, ele removerá todos os arquivos de localidade desnecessários do sistema.
Responder3
Observação:Alguns dos comandos abaixo requerem privilégios de root, considere o uso de sudo
.
Informação básica
De acordo comman locale-gen
, as localidades são definidas em vários arquivos.
/etc/locale.gen
O arquivo de configuração principal, que possui um formato simples: cada linha que não está vazia e não começa com # é tratada como uma definição de localidade que deve ser construída.
/var/lib/locales/supported.d/
Um diretório contendo trechos locale.gen fornecidos por pacotes de pacotes de idiomas. Não edite-os manualmente, eles serão substituídos nas atualizações de pacotes.
As localidades são compiladas (geradas) em um único arquivo.
/usr/lib/locale/locale-archive
Local de arquivo de localidade padrão usual.
Detalhes abrangentes sobre localidades noArco Wiki.
Verificando localidades e a localidade
Para listar as localidades disponíveis (conhecidas), execute qualquer um dos comandos a seguir (com pequenas diferenças de saída).
locale -a
localectl list-locales
Para verificar as localidades (já) geradas, execute o seguinte comando.
localedef --list-archive
Para verificar a localidade usada atualmente, execute qualquer um dos comandos a seguir (com pequenas diferenças de saída).
locale
localectl
Configurando e gerando (novas) localidades
As localidades normalmente são definidas descomentando as linhas em /etc/locale.gen
, após o que a execução locale-gen
é necessária.
nano /etc/locale.gen # uncomment desired lines (locales)
locale-gen
Isso irá compilar (gerar) localidades /usr/lib/locale/locale-archive
para cada linha não comentada em /etc/locale.gen
e abaixo de /var/lib/locales/supported.d/
, independentemente de terem sido compiladas anteriormente ou não.
Alternativamente, o comando
locale-gen <locale>
irá descomentar a linha correspondente locale-gen
enquanto gera o código do idioma desejado e somente este.
Nota: A implementação locale-gen
depende da distribuição. Por exemplo, o comando acima é válido no Ubuntu/Debian, mas não no ArchLinux.
Removendo localidades
Ao emitir locale-gen
, o arquivo compilado é apagado e todas as localidades dentro /etc/locale.gen
e abaixo /usr/lib/locale/locale-archive
são regeneradas novamente. O comando locale-gen --purge <locale>
não faz o que o modificador sugere, mas o oposto: remove todos os códigos de idioma compilados, exceto aqueles indicados. Para garantir que apenas localidades específicas sejam geradas quando locale-gen
for emitido ou e a atualização for executada /etc/locale.gen
e /usr/lib/locale/locale-archive
deve ser considerada.
Para remover localidades em /etc/locale.gen
, basta comentar as linhas desejadas e gerar novamente as localidades usando locale-gen
.
Remover localidades /var/lib/locales/supported.d/
é mais complicado. Como qualquer arquivo /var/lib/locales/supported.d/<code>
depende do pacote language-pack-<code>-base
, qualquer alteração no primeiro será restaurada quando o último for atualizado. Para resolver isso, basta manter os pacotes que atualizam os arquivos em /var/lib/locales/supported.d/
. O comando que consegue isso no Ubuntu/Debian é o seguinte.
apt-mark language-pack-<code>-base
Para atualizar um pacote retido, você devedesmarcarisso ou simplesmente--ignore-hold
.
Gambiarra.Uma solução mais intrusiva, mas geral, que evita alterações /var/lib/locales/supported.d/
é definir arquivos nele com oAtributo "imutável (i)". Portanto, em vez de remover arquivos, esvazie-os. Por exemplo:
cd /var/lib/locales/supported.d/
rm <code> && touch <code> # <code> has been emptied
lsattr <code> # regular attributes
chattr +i <code> # adding (+) immutable
lsattr <code> # checking attributes
Configurando a localidade
Definir e gerar localidades não define a localidade do sistema. Qualquer um dos comandos a seguir consegue isso.
echo LANG=<code> | sudo tee /etc/locale.conf # reboot (might be ignored in Ubuntu)
localectl set-locale LANG=<code>
Responder4
Instale o BleachBit, entre outras coisas, ele é capaz de remover localidades de qualquer sistema operacional Linux.
Quando você inicia o BleachBit, ele pode mostrar a caixa de diálogo de preferências onde você pode marcar quais localidades deseja manter.
Se não mostrar isso automaticamente, você pode abri-lo no menu de três pontos no canto superior direito da janela.