我使用的是 RedHat Linux 6.4 服务器,我将区域设置设置为 ro_RO。如果我们将用户连接sudo
到 Linux 机器并执行任何无效命令,那么它会显示特定于语言的错误,但我们附加sudo
到无效命令,那么它会显示英语错误。我需要使用sudo
命令获取区域设置特定的语言。
-sh-4.1$ asdfsadf
-sh: asdfsadf: comand▒ neg▒sit▒
-sh-4.1$ sudo asdf
[sudo] password for ajit:
sudo: asdf: command not found
答案1
它是特定于语言环境的,但抱歉,没有任何罗马尼亚语翻译sudo
。它们需要被写下来。
https://www.sudo.ws/repos/sudo/file/tip/po
在正在运行的系统上,请参阅ls /usr/share/locale/*/LC_MESSAGES/sudo*
。
答案2
这就是 Fedora 等发行版提供的(大部分)env_keep 设置所做的事情。 (我将以下内容限制为区域设置和颜色设置):
# /etc/sudoers
Defaults env_keep = "COLORS LS_COLORS"
Defaults env_keep += "LANG LC_ADDRESS LC_CTYPE"
Defaults env_keep += "LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES"
Defaults env_keep += "LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE"
Defaults env_keep += "LC_TIME LC_ALL LANGUAGE LINGUAS"