【问题标题】:chef locale resource does not apply properties厨师区域设置资源不适用属性
【发布时间】:2021-01-16 21:11:41
【问题描述】:

我正在使用 Chef 版本 16.9.20 并使用 locale resource,如下所示

locale 'set system locale' do
  lang 'en_US.UTF-8'
end

我看到它是在 chef-client run 上执行的

* locale[set system locale]

节点正在运行 ubuntu 20.04

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 20.04.1 LTS
Release:    20.04
Codename:   focal

当我登录到节点并查看语言环境时,我发现它没有配置。

$ locale
LANG=C.UTF-8
LANGUAGE=
LC_CTYPE="C.UTF-8"
LC_NUMERIC="C.UTF-8"
LC_TIME="C.UTF-8"
LC_COLLATE="C.UTF-8"
LC_MONETARY="C.UTF-8"
LC_MESSAGES="C.UTF-8"
LC_PAPER="C.UTF-8"
LC_NAME="C.UTF-8"
LC_ADDRESS="C.UTF-8"
LC_TELEPHONE="C.UTF-8"
LC_MEASUREMENT="C.UTF-8"
LC_IDENTIFICATION="C.UTF-8"
LC_ALL=

$ cat /etc/default/locale
LANG=C.UTF-8

$ cat /etc/locale.conf
LANG=en_US.utf8

有什么问题?

【问题讨论】:

    标签: chef-infra


    【解决方案1】:

    locale 资源似乎正在更新语言环境部分。甚至文档也不清楚更新了哪些方面。

    更新内容

    配置文件/etc/locale.conf:

    $ cat /etc/locale.conf
    LANG=en_US.utf8
    

    localectl:

    $ localectl status
      System Locale: LANG=en_US.utf8
      ..
    

    什么是没有更新

    默认语言环境/etc/default/locale

    此文件由update-locale 命令更新:

    $ sudo update-locale LANG=en_US.utf8
    $ cat /etc/default/locale
    LANG=en_US.utf8
    

    locale 命令(终端):该命令中LANG 的值直接链接到$LANG 环境变量。

    $ echo $LANG
    C.UTF-8
    $ export LANG=en_US.utf8
    $ locale
    LANG=en_US.utf8
    

    我们能做什么

    关于设置语言环境的 Ubuntu 文档:https://help.ubuntu.com/community/Locale

    使用execute 资源使用update-locale 命令更新/etc/default/locale 文件

    execute 'update-locale' do
      command 'update-locale LANG=en_US.utf8'
    end
    

    为终端设置$LANG环境变量(永久)有different ways如更新/etc/environment

    更新:

    根据资源文档,此资源用于在“Debian 和 Windows 系统”上设置系统语言环境

    使用 locale 资源在 Debian 和 Windows 系统上设置系统的区域设置。 Chef Infra Client 16.0 中添加了 Windows 支持

    【讨论】:

    • 语言环境资源没有价值(至少对于 linux)
    • 根据文档,它适用于 Debian 和 Windows 系统(无论如何也不适用于所有 Linux)。还提到了 系统的语言环境,所以可能是按照设计。可能值得在 Github.. 上报告功能请求。
    猜你喜欢
    • 2018-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-03
    • 2014-07-24
    • 2023-03-22
    • 2016-12-30
    相关资源
    最近更新 更多