You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CentOS 7.9安装MicroK8s无法启动:导出的C.UTF-8 locale不被支持

解决CentOS 7.9上MicroK8s启动失败的编码问题

问题现象

在CentOS 7.9系统安装MicroK8s后无法启动,相关版本信息及报错日志如下:

# snap --version
snap    2.57.6-2.el7
snapd   2.57.6-2.el7
series  16
centos  7
kernel  3.10.0-1160.81.1.el7.x86_64

# microk8s version
MicroK8s v1.26.1 revision 4595

MicroK8s日志报错:

2023-02-13T19:21:58-05:00 microk8s.daemon-apiserver-kicker[16637]: File "/snap/microk8s/4595/usr/lib/python3/dist-packages/click/_unicodefun.py", line 118, in _verify_python3_env
2023-02-13T19:21:58-05:00 microk8s.daemon-apiserver-kicker[16637]: 'for mitigation steps.' + extra)
2023-02-13T19:21:58-05:00 microk8s.daemon-apiserver-kicker[16637]: RuntimeError: Click will abort further execution because Python 3 was configured to use ASCII as encoding for the environment.  Consult http://click.pocoo.org/python3/for mitigation steps.
2023-02-13T19:21:58-05:00 microk8s.daemon-apiserver-kicker[16637]: This system lists a couple of UTF-8 supporting locales that
2023-02-13T19:21:58-05:00 microk8s.daemon-apiserver-kicker[16637]: you can pick from.  The following suitable locales where
2023-02-13T19:21:58-05:00 microk8s.daemon-apiserver-kicker[16637]: discovered: aa_DJ.utf8, aa_ER.utf8, aa_ET.utf8, af_ZA.utf8, am_ET.utf8, an_ES.utf8, ar_AE.utf8, ar_BH.utf8, ar_DZ.utf8, ar_EG.utf8, ar_IN.utf8, ar_IQ.utf8, ar_JO.utf8, ar_KW.utf8, ar_LB.utf8, ar_LY.utf8, ar_MA.utf8, ar_OM.utf8, ar_QA.utf8, ar_SA.utf8, ar_SD.utf8, ar_SY.utf8, ar_TN.utf8, ar_YE.utf8, as_IN.utf8, ast_ES.utf8, ayc_PE.utf8, az_AZ.utf8, be_BY.utf8, bem_ZM.utf8, ber_DZ.utf8, ber_MA.utf8, bg_BG.utf8, bho_IN.utf8, bn_BD.utf8, bn_IN.utf8, bo_CN.utf8, bo_IN.utf8, br_FR.utf8, brx_IN.utf8, bs_BA.utf8, byn_ER.utf8, ca_AD.utf8, ca_ES.utf8, ca_FR.utf8, ca_IT.utf8, crh_UA.utf8, cs_CZ.utf8, csb_PL.utf8, cv_RU.utf8, cy_GB.utf8, da_DK.utf8, de_AT.utf8, de_BE.utf8, de_CH.utf8, de_DE.utf8, de_LU.utf8, doi_IN.utf8, dv_MV.utf8, dz_BT.utf8, el_CY.utf8, el_GR.utf8, en_AG.utf8, en_AU.utf8, en_BW.utf8, en_CA.utf8, en_DK.utf8, en_GB.utf8, en_HK.utf8, en_IE.utf8, en_IN.utf8, en_NG.utf8, en_NZ.utf8, en_PH.utf8, en_SG.utf8, en_US.utf8, en_ZA.utf8, en_ZM.utf8, en_ZW.utf8, es_AR.utf8, es_BO.utf8, es_CL.utf8, es_CO.utf8, es_CR.utf8, es_CU.utf8, es_DO.utf8, es_EC.utf8, es_ES.utf8, es_GT.utf8, es_HN.utf8, es_MX.utf8, es_NI.utf8, es_PA.utf8, es_PE.utf8, es_PR.utf8, es_PY.utf8, es_SV.utf8, es_US.utf8, es_UY.utf8, xh_ZA.utf8, yi_US.utf8, yo_NG.utf8, yue_HK.utf8, zh_CN.utf8, zh_HK.utf8, zh_SG.utf8, zh_TW.utf8, zu_ZA.utf8
2023-02-13T19:21:58-05:00 microk8s.daemon-apiserver-kicker[16637]: Click discovered that you exported a UTF-8 locale
2023-02-13T19:21:58-05:00 microk8s.daemon-apiserver-kicker[16637]: but the locale system could not pick up from it because
2023-02-13T19:21:58-05:00 microk8s.daemon-apiserver-kicker[16637]: it does not exist.  The exported locale is "C.UTF-8" but it
2023-02-13T19:21:58-05:00 microk8s.daemon-apiserver-kicker[16637]: is not supported

核心原因

Click库终止执行,因为Python 3环境编码被设置为ASCII,且系统导出的C.UTF-8 locale不被CentOS 7.9支持。

解决步骤

  • 生成并设置支持的UTF-8 locale
    选择日志中列出的可用UTF-8 locale(例如en_US.utf8或zh_CN.utf8),执行以下命令:

    # 生成en_US.utf8 locale(如果未生成)
    localedef -i en_US -f UTF-8 en_US.utf8
    
    # 设置系统默认locale
    echo "LANG=en_US.utf8" >> /etc/profile
    echo "LC_ALL=en_US.utf8" >> /etc/profile
    
  • 立即生效locale设置

    source /etc/profile
    
  • 重启MicroK8s服务

    microk8s stop
    microk8s start
    
  • 验证MicroK8s状态

    microk8s status
    

内容的提问来源于stack exchange,提问作者ebeb

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 16:20:38