yum 安装 ansible 报错如何解决,自定义线程池面试题
Requires: python-cryptography
Error: Package: ansible-2.9.21-1.el7.noarch (epel)
Requires: python-six
Error: Package: ansible-2.9.21-1.el7.noarch (epel)
Requires: PyYAML
Error: Package: python-paramiko-2.1.1-0.10.el7.noarch (epel)
Requires: python2-pyasn1
Error: Package: ansible-2.9.21-1.el7.noarch (epel)
Requires: python2-cryptography
Error: Package: ansible-2.9.21-1.el7.noarch (epel)
Requires: python-jinja2
Error: Package: ansible-2.9.21-1.el7.noarch (epel)
Requires: python-setuptools
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
[root@ansible ~]# yum install -y ansible
Loaded plugins: fastestmirror
Repository epel is listed more than once in the configuration
Repository epel-debuginfo is listed more than once in the configuration
Repository epel-source is listed more than once in the configuration
Loading mirror speeds from cached hostfile
epel: mirrors.tuna.tsinghua.edu.cn
Resolving Dependencies
--> Running transaction check
---> Package ansible.noarch 0:2.9.21-1.el7 will be installed
--> Processing Dependency: PyYAML for package: ansible-2.9.21-1.el7.noarch
--> Processing Dependency: python-httplib2 for package: ansible-2.9.21-1.el7.noarch
--> Processing Dependency: python-jinja2 for package: ansible-2.9.21-1.el7.noarch
--> Processing Dependency: python-paramiko for package: ansible-2.9.21-1.el7.noarch
--> Processing Dependency: python-setuptools for package: ansible-2.9.21-1.el7.noarch
--> Processing Dependency: python-six for package: ansible-2.9.21-1.el7.noarch
--> Processing Dependency: python2-cryptography for package: ansible-2.9.21-1.el7.noarch
--> Processing Dependency: python2-jmespath for package: ansible-2.9.21-1.el7.noarch
--> Processing Dependency: sshpass for package: ansible-2.9.21-1.el7.noarch
--> Running transaction check
---> Package ansible.noarch 0:2.9.21-1.el7 will be installed
--> Processing Dependency: PyYAML for package: ansible-2.9.21-1.el7.noarch
--> Processing Dependency: python-jinja2 for package: ansible-2.9.21-1.el7.noarch
--> Processing Dependency: python-setuptools for package: ansible-2.9.21-1.el7.noarch
--> Processing Dependency: python-six for package: ansible-2.9.21-1.el7.noarch
--> Processing Dependency: python2-cryptography for package: ansible-2.9.21-1.el7.noarch
---> Package python-paramiko.noarch 0:2.1.1-0.10.el7 will be installed
--> Processing Dependency: python-cryptography for package: python-paramiko-2.1.1-0.10.el7.noarch
--> Processing Dependency: python2-pyasn1 for package: python-paramiko-2.1.1-0.10.el7.noarch
---> Package python2-httplib2.noarch 0:0.18.1-3.el7 will be installed
---> Package python2-jmespath.noarch 0:0.9.4-2.el7 will be installed
---> Package sshpass.x86_64 0:1.06-1.el7 will be installed
--> Finished Dependency Resolution
Error: Package: python-paramiko-2.1.1-0.10.el7.noarch (epel)
Requires: python-cryptography
Error: Package: ansible-2.9.21-1.el7.noarch (epel)
Requires: python-six
Error: Package: ansible-2.9.21-1.el7.noarch (epel)
Requires: PyYAML
Error: Package: python-paramiko-2.1.1-0.10.el7.noarch (epel)
Requires: python2-pyasn1
Error: Package: ansible-2.9.21-1.el7.noarch (epel)
Requires: python2-cryptography
Error: Package: ansible-2.9.21-1.el7.noarch (epel)
Requires: python-jinja2
Error: Package: ansible-2.9.21-1.el7.noarch (epel)
Requires: python-setuptools
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
1、重装虚拟机
重装一台虚拟机,保证虚拟机可以上网,可以选择桥接模式网卡
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210620202446369.png?x-oss-process=ima
ge/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ1NzE0Mjcy,size_16,color_FFFFFF,t_70)
2、修改 yum 源
建议先备份 /etc/yum.repos.d/ 内的文件(CentOS 7 及之前为 CentOS-Base.repo,CentOS 8 为 CentOS-Linux-*.repo)
然后编辑 /etc/yum.repos.d/ 中的相应文件,在 mirrorlist= 开头行前面加 # 注释掉;并将 baseurl= 开头行取消注释(如果被注释的话),把该行内的域名(例如 mirror.centos.org)替换为 mirrors.tuna.tsinghua.edu.cn。
以上步骤可以被下方的命令一步完成
sudo sed -e 's|^mirrorlist=|#mirrorlist=|g' \
-e 's|^#baseurl=http://mirror.centos.org|baseurl=https://mirrors.tuna.tsinghua.edu.cn|g' \
-i.bak \
/etc/yum.repos.d/CentOS-*.repo
注意其中的*通配符,如果只需要替换一些文件中的源,请自行增删。
注意,如果需要启用其中一些 repo,需要将其中的 enabled=0 改为 enabled=1。
最后,更新软件包缓存
sudo yum makecache
3、使用 EPEL 源
yum install epel-release
当前 tuna 已经在 epel 的官方镜像列表里,所以不需要其他配置,mirrorlist 机制就能让你的服务器就近使用 tuna 的镜像。如果你想强制 你的服务器使用 tuna 的镜像,可以修改/etc/yum.repos.d/epel.repo,将 mirrorlist 和 metalink 开头的行注释掉。
接下来,取消注释这个文件里 baseurl 开头的行,并将其中的http://download.fedoraproject.org/pub替换成https://mirrors.tuna.tsinghua.edu.cn。
可以用如下命令自动替换:(来自 https://github.com/tuna/issues/issues/687)
sed -e 's!^metalink=!#metalink=!g' \
-e 's!^#baseurl=!baseurl=!g' \
-e 's!//download.fedoraproject.org/pub!//mirrors.tuna.tsinghua.edu.cn!g' \
-e 's!http://mirrors.tuna!https://mirrors.tuna!g' \
-i /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel-testing.repo
评论