Ubuntu 20.04执行pip install couchdb出现UnicodeDecodeError错误如何解决
问题根因
从报错栈可以定位到,故障是pip内置的distro组件解析系统/etc/os-release文件时触发的,文件中存在UTF-8编码无法识别的0x99非法字节,和当前的locale配置无关。
修复步骤
- 先确认文件损坏情况,执行命令查看
/etc/os-release的二进制内容:
hexdump -C /etc/os-release
如果输出起始位置存在0x99字节,即可确认是文件被污染导致的问题。
- 替换为Ubuntu 20.04标准的
/etc/os-release内容,执行以下命令覆盖损坏的文件:
sudo tee /etc/os-release << 'EOF' NAME="Ubuntu" VERSION="20.04.6 LTS (Focal Fossa)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 20.04.6 LTS" VERSION_ID="20.04" HOME_URL="https://www.ubuntu.com/" SUPPORT_URL="https://help.ubuntu.com/" BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy" VERSION_CODENAME=focal UBUNTU_CODENAME=focal EOF
如果你使用的是小版本号不同的20.04,只需要修改VERSION字段对应的小版本号即可,不影响正常使用
- 重新执行安装命令:
pip install couchdb
如果提示权限不足,可加--user参数安装到当前用户目录:
pip install --user couchdb
内容的提问来源于stack exchange,提问作者Ruida Z.
相关产品推荐
相关产品推荐

