无签名的离线包制作参考网址:
ubuntu使用apt-get制作OfflinePackage_欧阳子陵的博客-优快云博客_apt-offline
有签名的离线包制作参考网址:
ubuntu使用apt-get制作Offline-package(以mysql为例)
问题:软件环境配置有哪些需要考虑的因素
软件安装有两种方式
- make安装,需要自己解决依赖问题
- apt-get安装,稳定,自动配置服务
软件的安装在没有网络的情况下如何安装:
- 自己下载好文件
- 采用apt-get离线包的方式。
文本采用的是apt-get的离线包的安装方式。
场景描述
安装环境ubuntu18.04, 使用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
# 切换到user目录,将整个工程需要打包的内容都打包,形成工程的依赖安装。形成离线包
cd /home/user/
tar -cvf CorsFace.tar 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 -y --allow-unauthenticated
#将原本的sourcelists拷贝回来
sudo cp /etc/apt/sources.list.back /etc/apt/sources.list
注意事项:
本地的源是没有签名的,直接更新ubuntu1604下的apt会提示找不到release文件,是一种不安全的源,默认是被禁用的。如果还要安装的话需要加上这个 --allow-unauthenticated选项。
离线安装:sudo apt-get install XXXXX(XXXX 为需要安装的软件名)。
例如:
apt install nfs-kernel-server -y --allow-unauthenticated
没有 -y的命令也可以执行,系统会提示你是否安装,输入y,回车,就会安装了
apt-get -y install这个指令则是跳过系统提示,直接安装。
apt 常用命令:
1.apt-cache search package #搜索包
2.apt-cache show package #获取包的相关信息,如说明,大小,版本。
3.apt-cache depends package #了解使用依赖
4.apt-get rdepends package #查看该包被那些包依赖
5.sudo apt-get install package #安装包
6.sudo apt-get install package=version #安装制定版本的包
7.sudo apt-get install package --reinstall #重新安装包
8.sudo apt-get -f install #修复安装(17.10.31,之前小看这个东东了,这个是启动APT自动安装依赖关系的一个功能键,换句话说,你更新完源之后,如果APT还不能自行解决依赖关系,就可以执行一下这个命令)
9.apt-get source package #下载该包的源代码
10.sudo apt-get remove package #删除包
11.sudo apt-get remove package --purge #删除包,包括删除配置文件等
12.sudo apt-get update #更新apt软件源数据库
13.sudo apt-get upgrade #更新以安装的包
14.sudo apt-get dist-upgrade #升级系统
15.sudo apt-get dselect-upgrade #使用dselect升级
16.sudo apt-get build-dep package #安装相关的编译环境
17.sudo apt-get clean & sudo apt-get autoclean #清理无用的包
18.sudo apt-get check #检查是否有损坏的依赖