ubuntu18.04使用apt-get制作OfflinePackage

参考:https://blog.csdn.net/ouyangziling/article/details/79056161

参考:https://codeleading.com/article/11393480544/


ubuntu使用apt-get制作Offline-package(以mysql为例)

近来在研究工程软件的部署,虽说这是运维的工作,但还是蛮有意思的。

问题:软件环境配置有哪些需要考虑的因素

软件安装有两种方式

make安装,需要自己解决依赖问题

apt-get安装,稳定,自动配置服务

软件的安装在没有网络的情况下如何安装:

自己下载好文件

采用apt-get离线包的方式。

文本采用的是apt-get的离线包的安装方式。

场景描述

安装环境ubuntu, 使用apt-get包管理器。apt-get的一些操作这里就不在描述了。

用户使用user,配置安装包路径为/home/user/CorsFace_install/

自作离线包以mysql为例

下载软件

apt-cache search mysql

# 下载mysql包含相关依赖但是不安装

sudo apt-get install -d mysql-server-5.6

制作离线包

一个shell脚本

# 定位到自己的安装包文件夹

cd /home/user/CorsFace_install

# 创建安装包

mkdir OfflinePackage

# apt-get包管理器下载的软件都放置在/var/cache/apt/archives文件夹中,将软件宝贝到自己的离线包中。

cp -r /var/cache/apt/archives  /home/user/CorsFace_install/OfflinePackage

# 给予操作的权限

chmod 777 -R /home/user/CorsFace_install/OfflinePackage

sudo apt-get install dpkg-dev

cd /home/user/CorsFace_install/OfflinePackage/

# 生成依赖软件包的关系

sudo dpkg-scanpackages archives/ /dev/null |gzip > Packages.gz

cp Packages.gz archives/Packages.gz

# 创建sources.list 定制离线源的位置

echo "deb file:///home/user/CorsFace_install/OfflinePackage archives/" > sources.list

# 将整个工程的需要打包的内容都打包,形成工程的依赖安装。形成离线包

tar -cvf CorsFace.tar /home/user/CorsFace_install

离线环境安装

在新的机器部署环境中

一个shell脚本

# 将工程依赖包拷贝到user下面

# 解压文件到user的目录线面

tar xvf CorsFace.tar -C ./

cd CorsFace_install

autoInstall.sh内容

# 设置不输入sudo命令

sudo cp nopasswdsudo /etc/sudoers.d/nopasswdsudo

# 将上文制作的sources.list放置到到新的版本机器中

sudo cp /etc/apt/sources.list /etc/apt/sources.list.back

sudo cp /home/user/CorsFace_install/OfflinePackage/sources.list /etc/apt/sources.list

#更新源 允许不安全的存储库

sudo apt-get update--allow-insecure-repositories

#从本地获取文件包进行安装

sudo apt-get install mysql-server-5.6 --allow-unauthenticated

#将原本的sourcelists拷贝回来

sudo cp /etc/apt/sources.list.back /etc/apt/sources.list

你可能感兴趣的:(ubuntu18.04使用apt-get制作OfflinePackage)