目录
1.liunx中的软件包概述
1.1软件类型
- DEB 应用于UBlinux DEBlinux; RPM 应用于redhat centOS fadora ;bz2|gz|xz
- 注:需要源码安装需要编译:例如tfs-3g_ntfsprogs-2017.3.23.tgz需要编译 "configure"
- 绿色软件,直接可用:例如Firefox-latest-x86_64.tar.bz2,而rhel8中只能使用绿色软件,源码编译软件和rpm软件
1.2软件包的名称结构
- [dhcp-server]-[4.3.6-30].[el8].[x86_64].[rpm]
-
dhcp-server 软件名称 4.3.6-30 软件版本 el8 软件的授权协议版本 x86_64 软件架构 rpm 软件类型后缀
2.rpm命令管理软件包
rpm | 对应参数 | 代表意义 |
---|---|---|
-ivh | -i(install) -v(verbose) -h(hash)的参数组合,即为安装 | |
-a | 所有 | |
-f | 文件 | |
-p | 软件包 | |
-l | 软件安装文件列表 | |
-e | 卸载 | |
-c | 配置文件 | |
-d | 说明 | |
--info | 软件信息 | |
--force | 强制 | |
--nodeps | 忽略依赖性 | |
--script | 查询软件在安装或卸载过程中的运行脚本 | |
-kv | 检测软件md5校验码 | |
-V | 检测已安装软件在系统中的文件被修改信息 | |
-q | 查询,一般其他参数与其搭配使用 |
3.本地软件仓库的搭建
由于rpm命令不能解决依赖性(部分软件安装时会需要),而软件仓库则是会让软件在安装过程中自动解决依赖性问题。本地软件仓库的搭建方法如下:
- 加载安装系统时使用的安装镜像文件:mount /rhel-8.2-x86_64.iso /westos
- 编辑本地软件仓库文件:vim /etc/yum.repos.d/westos.repo 注:可以 先输入:cd /etc/yum.repos.d/ ,
- 注:编辑时注意:gpgcheck=0 表示跳过授权检测,enabled=1|0中1表示在软件安装时会被读取仓库文件,而0表示不会
4.dnf 软件管理命
dnf | repolist | 列出仓库信息 | whatprovides | 搜索包含文件的软件包 |
clean all | 清除系统中已经加载的仓库缓存信息 | history | dnf执行历史 | |
list all | 列出所有软件 | history info | dnf执行历史详细信息 | |
list available | 列出未安装软件 | group list | 列出软件组 | |
list installed | 列出已安装软件 | group list --installed | 列出已安装软件组 | |
install | 安装 | group list --available | 列出未安装软件组 | |
remove | 卸载 | group list --hidden | 列出隐藏软件案组 | |
reinstall | 重新安装 | group install | 安装软件组 | |
search | 搜索 | group info | 查看软件组信息 |
yumdownloader | 下载软件包到本机指定位置 |
yumdownloader httpd | 下载仓库中指定软件的安装包到当前目录 |
yumdownloader --destdir=/mnt(路径) | 下载仓库中指定软件的安装包到指定/mnt目录 |
yumdownloader httpd --destdir=/mnt --resolve(软件依赖性) | 下载仓库中指定软件安装包和软件依赖性到/mnt目录 |
5.网络软件仓库的搭建
由于企业中系统的数量很大,如果为每个系统搭建本地文件库,对于企业来说是一种资源浪费,所以则需要搭建网络软件仓库的搭建,通过网络将每台主机连接从而实现资源共享。
网络软件仓库的搭建方法:
- 搭建本地软件仓库,此在上文中提及
- 安装共享软件(Apache):dnf install httpd -y 注:共享位置:/var/www/html
- 共享软件(Apache)的开启:systemctl disable --now firewalld (关闭火墙);systemctl enable --now httpd(Apache开启)
- 共享目录的建立和共享:mkdir /var/www/html/westos1 (建立目录);mount /xxxxxxxxxxxx.iso /var/www/html/westos1(共享目录)
- 编辑 /etc/rc.d/rc.local ,输入:mount /xxxxxxxxxiso /var/www/html/westos1(共享目录),让其开机自动开启运行,同时修改开机权限:chmod 755 /etc/rc.d/rc.local
- 在远程主机中访问资源并编辑配置文件:加入:baseurl=http://172.25.254.29/westos1/(AppStream|BaseOS:分开两次编辑)
6.第三方软件仓库的搭建方法
特点:可以使用dnf命令管理第三方软件并使第三方软件在网络中共享
操作步骤:
主机;
- 建立共享目录:mkdir /var/www/html/software
- cd /var/www/html/software,以方便实现存放第三方软件,注:software中只能存在rpm类型的文件
- dnf install createrepo -y :安装采集工具以采集数据
- 扫描repodate数据目录 :createrepo . 注:此时应处于此目录中
远程主机:
编辑/etc/yum.repos.d/westos1.repo文件,加入software的配置内容,具体内容见截屏