这几天部署一个项目,用的是ubuntu的操作系统,而且还是不连接外网的,导致我项目需要的一些软件资源包不能从网上直接install下来,需要手动上传安装,但是安装的时候又发现好多资源包是有关联性的,安装这个资源包的前提是需要安装其他资源包,有的复杂性很高一个个的安太麻烦了,所以我就找整合资源包一起安装的方法,还真找到了,下面我整理了几种方法,可以参考一下。
方法一
单个简单资源包
在可上网的ubuntu电脑上,使用apt-get install安装软件,然后到/var/cache/apt/archives目录下拷贝安装包到离线ubuntu电脑上。比如要安装samba,步骤如下:
1、下载需要的安装软件
sudo apt-get install gcc
找到/var/cache/apt/archives目录
cd /var/cache/apt/archives
通过ftp下载到自己的电脑或者U盘保存,再拷贝到离线的电脑上,并通过以下命令安装(注意:文件名字可能略有不同,因为版本不一样,安装方式都是一样的)
sudo dpkg -i gcc.deb
这是单个的软件包,还有一些复杂的软件包,需要很多其他资源,不然不能安装,所以还有复杂性软件包安装整合的操作。
#加粗样式## 复杂性资源包
复杂性的软件包需要把它所需要的资源一起下载下来,整个成一个安装包,并且制作离线源。
1、首先先创建一个文件夹
sudo mkdir testcd test
下载资源包,这个下载资源包会把他依赖的资源包一起下载下来(packagename是你包得名字)
sudo apt-get download $(apt-cache depends --recurse --no-recommends --no-suggests --no-conflicts --no-breaks --no-replaces --no-enhances | grep "^\w" | sort -u)
下载下载以后有很多的.deb文件,这个需要修改权限并建立依赖关系
sudo mkdir ./archivessudo dpkg-scanpackages ./ /dev/null | gzip > ./archives/Packages.gz -rsudo chmod 777 -R ./
注意:如果出现错误:sudo:dpkg-scanpackages: command not found,则需要安装dpkg-dev工具:
sudo apt-get install dpkg-dev
如果dpkg-scanpackages命令只是输出waring和info信息不用管,只要不报错就行
4、打包整个文件夹
sudo tar cvzf ../test.tar.gz ../test
将打包后的文件放到离线的服务器上进行解压,我放到了home目录下
sudo tar -xvf test.tar.gz
修改下载资源包的源
mv /etc/apt/sources.list /etc/apt/sources.list.bakecho "deb [trusted=yes] file:///home/test/ archives/" >> /etc/apt/sources.list
更新源(注意:每次操作了源最好都更新一下,如果资源包有好几个,每解压一个最好也更新一下)
sudo apt-get update
安装离线资源包(写上自己资源包的名字就行,他会自动从你设置的源路径里面解析你的依赖关系)
sudo apt-get install gcc
如果提示依赖问题,可以使用下边的命令修复
sudo apt-get install -f
方法二
到ubuntu官网下载软件资源包,不过只能下载他自己的资源包,不包含他依赖的资源包。
ubuntu官网下载地址:Ubuntu – Ubuntu Packages Search,点击访问,找到这个位置。
点击搜索,会出现搜索的内容
出现的搜索内容很多,找到你自己想要的点击kinetic进入即可。
进入后会出现软件包的信息及它依赖的资源名
往下滑动,找到这个位置
根据自己的需要下载自己硬件架构的资源包,一般需要的资源包都会提供需要什么架构的。
点击硬件架构名字以后,进入下载页面
里面有下载链接和文件路径,找到下载就行。文件名字可能略有不同。
安装
安装方式跟方法一是一样的。
sudo dpkg -i gcc.deb
至此就安装完成了,我个人建议是用关联性的去安装,这样不会漏掉依赖,不然一个个找然后在拼太麻烦了,而且最好找一个云服务器下载关联性依赖,用自己的虚拟机下载有的网站还下不了,自己去找着下可能版本还不对,个人建议,看自己的经济能力吧。
来源地址:https://blog.csdn.net/qq_45699784/article/details/128644347