로케일을 en_US.UTF-8로 변경했지만 프로그램은 여전히 ​​다른 언어로 번역을 시도합니다.

로케일을 en_US.UTF-8로 변경했지만 프로그램은 여전히 ​​다른 언어로 번역을 시도합니다.

시스템 로케일을 en_US.UTF-8with 로 변경했습니다 dpkg-reconfigure locales. 명령 locale출력:

LANG=en_US.UTF-8
LANGUAGE=
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=

나는 /etc/default/locale다음을 가지고 있습니다 :

LANG=en_US.UTF-8

/etc/locale.gen또한 .en_US.UTF-8 UTF-8

unattended-upgrades매일 아침 실행하면 /etc/cron.daily/apt-compat시스템 로그에 다음 오류가 발생합니다.

apt.systemd.daily[3829]: --- Logging error ---
apt.systemd.daily[3829]: Traceback (most recent call last):
apt.systemd.daily[3829]:   File "/usr/lib/python3.5/logging/__init__.py", line 983, in emit
apt.systemd.daily[3829]:     stream.write(msg)
apt.systemd.daily[3829]: UnicodeEncodeError: 'ascii' codec can't encode character '\xfc' in position 43: ordinal not in range(128)
apt.systemd.daily[3829]: Call stack:
apt.systemd.daily[3829]:   File "/usr/bin/unattended-upgrade", line 1538, in <module>
apt.systemd.daily[3829]:     main(options)
apt.systemd.daily[3829]:   File "/usr/bin/unattended-upgrade", line 1219, in main
apt.systemd.daily[3829]:     logging.info(_("Allowed origins are: %s"), allowed_origins)
apt.systemd.daily[3829]: Message: 'erlaubte Urspr\xfcnge sind: %s'
apt.systemd.daily[3829]: Arguments: (['origin=Debian,codename=stretch,label=Debian-Security'],)

시스템은 특수 문자가 포함된 Allowed origins are: %s독일어 버전으로 번역을 시도합니다 . 약간의 조사 끝에 번역이 포함된 파일을 여기에서 찾을 수 있다는 것을 발견했습니다: .erlaubte Ursprünge sind: %sü/usr/share/locale/de/LC_MESSAGES/unattended-upgrades.mo

로케일을 올바른 영어 값으로 변경했는데 왜 영어를 독일어로 번역하려고 apt합니까 ? unattended-upgrades이 동작을 어떻게 중지할 수 있나요?

답변1

다음 명령을 다시 실행하여 문제가 해결되었습니다.

dpkg-reconfigure locales
localectl set-locale LANG=en_US.UTF-8 LANGUAGE=en_US:en

관련 정보