как я могу удалить все языковые пакеты, которые мне не нужны

7

Я только заметил, что в /usr/share/help у меня есть файлы справки ubuntu на 70 разных языках. Я говорю только 2, и я только на самом деле вычисляю в одном. Я также заметил, что он полон сломанных символических ссылок на / usr / share / help-langpack.

Я хочу просто избавиться от всех языков, которые мне не нужны. Как я могу сделать это, не получив все rm -r счастливым? Я предпочитаю найти способ сделать это без установки каких-либо новых пакетов, так как моя главная цель - избавиться от лишних вещей на моей машине. Я хотел бы найти способ сделать это предпочтительно с помощью dpkg или apt.

    
задан blanket_cat 24.08.2014 в 09:34
источник

2 ответа

5


Вы можете проверить, какие локали создаются и настраиваются в вашей системе, используя команду locale:

  • locale ... укажите текущую конфигурацию локали.
  • locale -a ... содержит список всех локалей, созданных в вашей системе.
  • locale -a -v ... перечислить все локали и показать полезную дополнительную информацию (например, имена каталогов, которые содержат файлы данных локали)

Последняя команда сверху заставит вас видеть, что все сгенерированные локали расположены в /usr/lib/locale/ , вы можете удалить любой из них, если не хотите. Каждый пакет информации локали - это каталог, содержащий текстовые файлы и другие каталоги.

Все локали, которые вы хотите поддерживать в вашей системе, перечислены в текстовых файлах в /var/lib/locales/supported.d/ . Эти файлы имеют два столбца, языковой тег и карту символов.

Я хочу, чтобы моя система знала только английский-английский, поэтому у меня есть только один файл, называемый en, который содержит только одну строку:

en_US UTF-8

Сообщения об ошибках
Если при выдаче команды locale отображаются сообщения об ошибках, например:

locale: Cannot set LC_ALL to default locale: No such file or directory

убедитесь, что файл /etc/default/locale существует и имеет соответствующий контент, например:

LANG="en_US"
LANGUAGE="en_US:en"

Избавиться от ненужных данных локали - шаг за шагом

Теперь мы знаем все необходимые детали, чтобы начать работу с очисткой информации о локали нашей системы:

  1. Отредактируйте файл (ы) локали в /var/lib/locales/supported.d/ и удалите все ненужные локали (один язык в строке)
  2. Создайте и отредактируйте /etc/default/locale (см. пример выше)
  3. Удалить все созданные данные локали: rm -rfv /usr/lib/locale/*
  4. Сгенерировать новые локали: locale-gen

Вот и все! Перезагрузите компьютер, чтобы изменения вступили в силу. Затем запустите один или несколько примеров команд locale сверху, чтобы убедиться, что результат соответствует ожидаемому.

~# locale
LANG=en_US.UTF-8
LANGUAGE=en_US:en
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
~# 
~# locale -a -v
locale: en_US.utf8      directory: /usr/lib/locale/en_US.utf8
-------------------------------------------------------------------------------
    title | English locale for the USA
   source | Free Software Foundation, Inc.
  address | 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
    email | [email protected]
 language | English
territory | USA
 revision | 1.0
     date | 2000-06-24
  codeset | UTF-8

Существует пакет для Debian / Ubuntu, который может позаботиться о удалении локалей и файлов, связанных с языковой версией (например, man-страницы): localepurge . Вы можете установить / запустить его:

sudo apt-get install localepurge

после установки, вы должны запустить это:

dpkg --configure localepurge

, чтобы убедиться, что настройки языка установлены правильно.

, чтобы запустить его вручную после установки (хотя вам действительно не нужно, поскольку он должен запускаться после каждого запуска dpkg автоматически), вы можете просто сделать:

sudo localepurge

Прочтите страницу руководства, прежде чем использовать ее. Если вы можете сделать свое дело без него, вероятно, безопаснее отпустить.

с этих форумов

исх:
1. LocaleConf в официальной документации
2. страница руководства для Linux
3. Локаль на wikipeadia
4. человек localepurge

    
ответ дан sddgob 24.08.2014 в 09:53
источник
2

Что касается фактически установленных языков, перейдите в Настройки системы - > Языковая поддержка и нажмите кнопку Установить / удалить языки ... . Затем снимите флажки с языков, которые вам не нужны.

Что касается символических ссылок в /usr/share/help , см. мой комментарий к вашему вопросу.

    
ответ дан Gunnar Hjalmarsson 24.08.2014 в 11:50