一些命令在普通权限下可以执行,但是换到root权限不可执行。
原因如下:

  1. 用户执行sudo命令时,系统会主动寻找/etc/sudoers文件,判断该用户是否有执行sudo的权限
  2. 若可执行,让用户输入密码确认
  3. 密码输入成功后,开始执行sudo后续的命令

我们先来查看docker-compose的文件路径,如下图所示。
在这里插入图片描述
然后查看/etc/sudoers文件中secure_path的路径,如下图所示。
在这里插入图片描述
若docker-compose不在该路径中,我们需要将其复制到sudo的路径下。
执行命令sudo cp -r /usr/local/bin/docker-compose /usr/bin/docker-compose

完成之后又遇到另一个问题,如下所示。
在这里插入图片描述
报错为/usr/lib/python3/dist-packages/requests/__init__.py:89: RequestsDependencyWarning: urllib3 (1.25.8) or chardet (5.0.0) doesn't match a supported version! warnings.warn("urllib3 ({}) or chardet ({}) doesn't match a supported "
查阅之后,发现是因为urllib3和chardet版本不匹配。
执行命令sudo pip3 list,查看其版本,如下图所示。
在这里插入图片描述
在这里插入图片描述
我们重新安装并升级requests模块,之后问题即可得到解决,其卸载和安装命令如下。

sudo pip3 uninstall urllib3 chardet
sudo pip3 install --upgrade requests

问题解决,如下图所示。
在这里插入图片描述

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐