1、通过 pip download 下载安装包
linux-oz6w:~ # mkdir pip-ansible
linux-oz6w:~ # pip download ansible -d /root/pip-ansible
Looking in indexes: https://mirrors.aliyun.com/pypi/simple/ # 可以看到,这里是使用阿里云的pip源下载ansible的tar包和whl文件
linux-oz6w:~ # ll pip-ansible/ # 这是pip download下载下来的所有依赖的安装包
total 37156
-rw-r--r-- 1 root root 125774 Jan 6 22:44 Jinja2-2.11.2-py2.py3-none-any.whl
-rw-r--r-- 1 root root 24348 Jan 6 22:44 MarkupSafe-1.1.1-cp27-cp27mu-manylinux1_x86_64.whl
-rw-r--r-- 1 root root 269377 Jan 6 22:44 PyYAML-5.3.1.tar.gz
-rw-r--r-- 1 root root 28622006 Jan 6 22:44 ansible-2.10.4.tar.gz
-rw-r--r-- 1 root root 5708083 Jan 6 22:44 ansible-base-2.10.4.tar.gz
-rw-r--r-- 1 root root 389322 Jan 6 22:44 cffi-1.14.4-cp27-cp27mu-manylinux1_x86_64.whl
-rw-r--r-- 1 root root 2626135 Jan 6 22:44 cryptography-3.3.1-cp27-cp27mu-manylinux2010_x86_64.whl
-rw-r--r-- 1 root root 11223 Jan 6 22:44 enum34-1.1.10-py2-none-any.whl
-rw-r--r-- 1 root root 18159 Jan 6 22:44 ipaddress-1.0.23-py2.py3-none-any.whl
-rw-r--r-- 1 root root 39857 Jan 6 22:44 packaging-20.8-py2.py3-none-any.whl
-rw-r--r-- 1 root root 112041 Jan 6 22:44 pycparser-2.20-py2.py3-none-any.whl
-rw-r--r-- 1 root root 67842 Jan 6 22:44 pyparsing-2.4.7-py2.py3-none-any.whl
-rw-r--r-- 1 root root 10963 Jan 6 22:44 six-1.15.0-py2.py3-none-any.whl
2、利用 pip install --no-index 离线安装
linux-oz6w:~ # pip install --no-index --find-links=/root/pip-ansible/ --ignore-installed /root/pip-ansible/*
Looking in links: /root/pip-ansible/ # 这里就按照指定的目录去找包安装了
......
Successfully installed MarkupSafe-1.1.1 PyYAML-5.3.1 ansible-2.10.4 ansible-base-2.10.4 cffi-1.14.4 cryptography-3.3.1 enum34-1.1.10 ipaddress-1.0.23 jinja2-2.11.2 packaging-20.8 pycparser-2.20 pyparsing-2.4.7 six-1.15.0
-----------------------------------------------------------------------------------
# 命令解析
--no-index # 忽略包索引(只查看--find-links)
--find-links # --find-links 指向URL,html文件,tar.gz,whl或者目录,不支持指向VCS项目URL的链接
--ignore-installed # 忽略已安装的软件包,覆盖它们
/root/pip-ansible/ansible-2.10.4.tar.gz # 需要安装的软件