co muszę zrobić z „człowiekiem: nie mogę ustawić ustawień regionalnych; upewnij się, że $ LC_ * i $ LANG są poprawne ”


20

Pisałem na maszynie, man sudoersale zrozumiałem

man: can't set the locale; make sure $LC_* and $LANG are correct
No manual entry for sudoers

Co to znaczy?


Miałem podobny problem na OS X i był w stanie go naprawić przez zakomentowanie SendEnv LANG LC_*w /etc/ssh/ssh_config.
Ilya I

Odpowiedzi:


13

Twoje ustawienia regionalne nie są ustawione. W Debian-Basepowinieneś użyć, dpkg-reconfigure localesaby to ustawić.

Niektóre z nich packageszależą locales packagei variabletakie jak LC_* series...!

Oznacza $LANGto, że jest pusty.


6

Ustawienia regionalne określone przez zmienne środowiskowe używają nazw ustawień regionalnych, które nie są dostępne w systemie.

Ustawienia regionalne kontrolują zestaw znaków używanych przez komendy i terminale ( LC_CTYPE), porządek sortowania ( LC_COLLATE), format dat ( LC_TIME), liczby ( LC_NUMERIC) i kwoty waluty ( LC_MONETARY), język komunikatów ( LC_MESSAGES) itp. Wartości tych zmienne są nazwami ustawień regionalnych. W większości systemów, nazwa ma postać xx_YYalbo xx_YY@variantalbo xx_YY.charsetgdzie xxto dwuliterowy kod języka i YYto dwuliterowy kod kraju .

Uruchom polecenie, localeaby zobaczyć bieżące ustawienia. Uruchom, locale -aaby zobaczyć dostępne nazwy ustawień regionalnych.

Jeśli brakuje ustawień narodowych, których chcesz użyć, być może trzeba je wygenerować. Jest to zależne od dystrybucji. Na przykład na Debianie uruchom dpkg-reconfigure localesjako root. W systemie Ubuntu uruchom, locale-gen xx_YYaby wygenerować ustawienia narodowe xx_YY.


1

Oznacza to, że Twój system nie wie, w jakim języku powinny być wyświetlane informacje.

Wklej dane wyjściowe ustawień narodowych - prawdopodobnie nie wygenerowałeś ustawień narodowych, jest to nieco specyficzne dla dystrybucji, ale zwykle uruchomienie genów ustawień narodowych wygeneruje ustawienia regionalne, usuwając błąd. Spójrz na ten link .


1

Poniżej znajduje się dodatek do zalecenia użycia dpkg-reconfigure locales, które dla mnie nie powiodło się (moje przeczucie jest takie, że gdyby działało, nie miałbym tego problemu.

Problem

me@pc:~$ man
man: can't set the locale; make sure $LC_* and $LANG are correct
What manual page do you want?

Najpierw spróbuj go rozwiązać, nie powiedzie się

me@pc:~$ sudo dpkg-reconfigure locales
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = (unset),
    LC_ALL = (unset),
    LANG = "en_US"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
Generating locales...
  en_AG.UTF-8... up-to-date
  ...(lines omitted)...

Druga próba się udaje. Nadal pojawia się błąd na en_ZW, ale go nie używam.

me@pc:~$ sudo locale-gen en_US en_US.UTF-8 && sudo dpkg-reconfigure locales
...
me@pc:~$ man
what manual page do you want?

Nigdy więcej błędów LOCALE w poleceniu man!

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.