项目遇到离线安装系统依赖包的问题,通过查资料发现使用yum install --downloadonly --downloaddir=
的方法只能下载系统未安装的依赖,并不能下载全量,于是另辟蹊径。
查询依赖
yum search tkinter (CentOS)
apt search tkinter (Ubuntu)
全量下载
sudo apt-get download `sudo apt-cache depends 依赖名 | grep "依赖" | cut -d: -f2 |tr -d "<>"` (Ubuntu)
repotrack 依赖名 (CentOS)
安装
将下载的依赖包拷贝到离线的服务器中
sudo dpkg -i *.deb
rpm -Uvh --force --nodeps *.rpm
其他命令
查看依赖的软件包关系
yum deplist 依赖名
例子(安装Tkinter)
查找tkinker系统依赖
yum search tkinter (CentOS)
apt search tkinter (Ubuntu)
下载依赖
方法一 (注意:只会下载系统中缺少的依赖)
apt download python3-tk (Ubuntu)
yum install --downloadonly --downloaddir=./ python3-tkinter (CentOS)
方法二(全量下载)
sudo apt-get download `sudo apt-cache depends python3-tk | grep "依赖" | cut -d: -f2 |tr -d "<>"` (Ubuntu)
repotrack python3-tkinter (CentOS)
安装
dpkg -i --force --nodeps *.deb
rpm -Uvh --force --nodeps *.rpm
# --force:强制安装,无论任何情况均可以安装
# --nodeps:忽略依赖性关系检测强制安装