unsupported-locale-setting

1 问题

今天在测试服务器上执行 pip list 发现

(conf) root@xxxxx:xxxxx# pip list
Traceback (most recent call last):
  File "/srv/www/vinyl.ddapp.com/conf/bin/pip", line 11, in <module>
    sys.exit(main())
  File "/srv/www/vinyl.ddapp.com/conf/lib/python3.6/site-packages/pip/__init__.py", line 215, in main
    locale.setlocale(locale.LC_ALL, '')
  File "/usr/lib/python3.6/locale.py", line 598, in setlocale
    return _setlocale(category, locale)
locale.Error: unsupported locale setting

这就很尴尬了,看下本机的 locale

locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE=zh_CN.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=

发现 LC_ALL 为空

2 解决方法

2.1 重置环境变量

export LC_ALL="en_US.UTF-8"

2.2 重新刷入配置

运行命令 dpkg-reconfigure locales

Generating locales (this might take a while)...
  en_AG.UTF-8... done
  en_AU.UTF-8... done
  en_BW.UTF-8... done
  en_CA.UTF-8... done
  en_DK.UTF-8... done
  en_GB.UTF-8... done
  en_HK.UTF-8... done
  en_IE.UTF-8... done
  en_IN.UTF-8... done
  en_NG.UTF-8... done
  en_NZ.UTF-8... done
  en_PH.UTF-8... done
  en_SG.UTF-8... done
  en_US.UTF-8... done
  en_ZA.UTF-8... done
  en_ZM.UTF-8... done
  en_ZW.UTF-8... done
Generation complete.

在次查看 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=en_US.UTF-8

最后运行 pip list 就正常了


黑月亮
点滴记录,步步成长

现实与完美之间

1.6k 声望
24 粉丝
0 条评论
推荐阅读
centos | 修改静态 IP
设置 Centos 为使用静态 IP1 修改网络配置 {代码...} 修改后的内容如下 {代码...} 2 重启网络服务 {代码...} 3 查看地址 {代码...} 参考来源:[链接]

青阳半雪阅读 1.8k评论 3

git/pip/easy_install/apt代理/源设置
在公司内网环境中,访问公网往往需要经过公司的代理,对于浏览器、IDE等开发工具,都提供了设置代理的配置,而git、pip、easy_install等CLI工具,则需要通过命令或配置文件进行代理设置;对于Python、Ubuntu、Mav...

乘着风1阅读 5.1k

Ubuntu20.04 从源代码编译安装 python3.10
Ubuntu 22.04 Release DateUbuntu 22.04 Jammy Jellyfish is scheduled for release on April 21, 2022If you’re ready to use Ubuntu 22.04 Jammy Jellyfish, you can either upgrade your current Ubuntu syste...

ponponon1阅读 4.5k评论 1

Ubuntu系统下的snmp安装配置
snmp(Simple Network Management Protocol,简单网络管理协议),该协议的实现以及应用是采用C/S模型的特殊模式:代理/管理站模型。

龚正阳1阅读 1.5k评论 1

Harbor私有仓库搭建并配置https对接docker与kubernetes
默认情况下,Harbor 不附带证书。可以在没有安全保护的情况下部署 Harbor,以便您可以通过 HTTP 连接到它。在生产环境中,推荐始终使用 HTTPS。要配置 HTTPS,必须创建 SSL 证书。可以使用由受信任的第三方 CA 签...

李朝阳3阅读 1.1k

【Ubuntu】Win11 VmWare虚拟机安装Ubuntu 22.04.1-server
引言如标题所说,属于个人虚拟机安装Ubuntu的笔记记录。VM安装网络上有很多教程,这里就直接省略了。下载Ubuntu 22.04.1-server进入Ubuntu的中文网站:Ubuntu系统下载 | Ubuntu根据最新的版本下载即可。本次使用...

Xander阅读 951

[TIL] 如何使用 hex editor (二进制编辑器)修改游戏存档
在游戏没有进行特别混淆的的情况下这种方式能很轻松修改存档,对付一些没有现成修改器小众游戏很方便。当然如果能用 CE 之类的内存修改器也很好,但我是在 linux 中用 wine 跑的游戏,估计想用 CE 还要好一番折腾...

AlanZhang阅读 918

封面图

现实与完美之间

1.6k 声望
24 粉丝
宣传栏