Możesz sprawdzić, które ustawienia narodowe są generowane i konfigurowane w systemie za pomocą polecenia locale:
- locale ... wyświetla aktualną konfigurację locale
- locale -a ... wyświetla listę wszystkich ustawień narodowych wygenerowanych w systemie
- locale -a -v ... wyświetla listę wszystkich ustawień regionalnych i pokazuje przydatne dodatkowe informacje (takie jak nazwy katalogów zawierające pliki danych informacji regionalnych)
Ostatnie polecenie powyżej pokazuje, że wszystkie wygenerowane ustawienia narodowe znajdują się w /usr/lib/locale/
, możesz usunąć dowolne z nich, jeśli nie jest to konieczne. Każda paczka informacji regionalnych jest katalogiem zawierającym pliki tekstowe i inne katalogi.
Wszystkie ustawienia narodowe, które system ma obsługiwać, są wymienione w plikach tekstowych w /var/lib/locales/supported.d/
. Pliki te mają dwie kolumny, znacznik języka i mapę znaków.
Chcę, aby mój system wiedział tylko w języku angielskim i amerykańskim, więc mam tam tylko jeden plik o nazwie en, który zawiera tylko jedną linię:
en_US UTF-8
Komunikaty o błędach
Jeśli podczas wydawania polecenia locale wyświetlane są komunikaty o błędach, np .:
locale: Cannot set LC_ALL to default locale: No such file or directory
upewnij się, że plik /etc/default/locale
istnieje i ma odpowiednią treść, na przykład:
LANG="en_US"
LANGUAGE="en_US:en"
Pozbądź się niepotrzebnych danych regionalnych - krok po kroku
Teraz znamy wszystkie niezbędne szczegóły, aby rozpocząć czyszczenie informacji o ustawieniach regionalnych naszego systemu:
- Edytuj pliki ustawień regionalnych w
/var/lib/locales/supported.d/
i usuń wszystkie niepotrzebne ustawienia narodowe (jedno ustawienie regionalne na linię)
- Utwórz i edytuj
/etc/default/locale
(patrz przykład powyżej)
- Usuń wszystkie wygenerowane dane regionalne:
rm -rfv /usr/lib/locale/*
- Ponownie wygeneruj nowe ustawienia regionalne:
locale-gen
To wszystko! Uruchom ponownie komputer, aby zmiany zostały wprowadzone. Następnie uruchom jeden lub więcej przykładów poleceń locale z góry, aby upewnić się, że wynik jest zgodny z oczekiwaniami.
~# 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 | bug-glibc-locales@gnu.org
language | English
territory | USA
revision | 1.0
date | 2000-06-24
codeset | UTF-8
Jest to pakiet dla Debiana / Ubuntu, które mogą zająć się usuwaniem lokalizacjach i lokalizacji plików powiązanych (np strony man) localepurge
. Możesz go zainstalować / uruchomić, wydając:
sudo apt-get install localepurge
po zainstalowaniu powinieneś uruchomić to:
dpkg --configure localepurge
aby upewnić się, że ustawienia języka są ustawione poprawnie.
aby uruchomić go ręcznie po zainstalowaniu (chociaż nie powinno tak być konieczne, ponieważ powinien dpkg
działać automatycznie po każdym uruchomieniu), możesz po prostu:
sudo localepurge
Jednak przed użyciem przeczytaj stronę podręcznika. Jeśli możesz to zrobić bez tego, prawdopodobnie bezpieczniej jest odpuścić.
z tego forum
ref:
1. LocaleConf w oficjalnej dokumentacji
2. Linux man page
3. Locale na wikipeadia
4. man localepurge