Linux系统中的软件管理
1.Linux中软件包的类型
DEB #UBlinux DEBlinux
RPM #redhat cent0s fadora
bz2|gz/xz #1.需要源码安装需要编译
#2.绿色软件,直接可用
#ntfs-3g_ntfsprogs-2017.3.23.tgz 需要编译"configure"
#Firefox-latest-x86_64.tar.bz2 绿色
注意:在rhel8中只能使用绿色软件,源码编译软件和rpm软件。
2.软件包的名称结构
[dhcp-server]- [4.3.6-30] . [el8]. [x86_64] . [rpm]
1 2 3 4 5
1.软件名称
2.软件版本
3.软件的授权协议版本4.软件架构
5.软件类型后缀
3.rpm命令管理软件包
rpm -ivh ##安装参数组合-i install -v verbose -h hash
-a ##所有
-f ##文件
-p ##软件包
-q ##查询
-l ##软件安装文件列表
-e ##卸载
-c ##配置文件
-d ##说明
--info ##软件信息
--force ##强制
--nodeps ##忽略依赖性
--script ##查询软件在安装或卸载过程中的运行脚本
-Kv ##检测软件md5校验码
-v ##检测已安装软件在系统中的文件被修改信息
4.本地软件仓库的搭建
系统软件仓库的作用
在系统中对软件进行管理
rpm命令是不能解决依赖关系的
如果需要软件在安装过程中自动解决依赖关系
许系统软件仓库
搭建方法
1.在系统中加载安装系统时使用的安装镜像
mount /xxxx/rhel8.2-xXXXXXxx.iso / xxXX
2.编写软件仓库文件
/etc/yum.repos.d/ ##软件源指向文件配置目录
##在此目录中不能有无法访问的源指向
vim /etc/yum.repos.d/xxxx.repo##软件仓库指向文件
[AppStream] ##仓库名称
name=westos AppStream ##描述
baseurl=file:/l/westos/AppStreambaseurl=file:/l/westos/AppStream ##地址
gpgcheck=0 ##不检测gpgkey(跳过授权检测)
gpgkey=file: /l/etc/pki/rpm-gpg/RPM-GPG-REDHAT-release
enabled=1| 0
[Base0S]
name=westos Base0s
baseurl=file: / l/westos/Base0S/
gpgcheck=0
判定地址是否能够访问
3.test
dnf install gcc -y
5.dnf软件管理命令
安装管理包
dnf repolist ##列出仓库信息
clean all ##清除系统中已经加载的仓库缓存信息
list all ##列出所有软件
list available ##列出未安装软件
list installed ##列出已安装软件
install ##安装
remove ##卸载
reinstall ##重新安装
search ##搜索
whatprovides ##搜索包含文件的软件包
history ##dnf执行历史
history info ##dnf执行历史详细信息
group list ##列出软件组
group list --installed ##列出已安装软件组
group list --available ##列出未安装软件组
group list --hidden ##列出隐藏软件案组
group install ##安装软件组
group info ##查看软件组信息
下载安装包
yumdownloader #下载软件包到本机指定位置
yumdownloader httpd #下载仓库中指定软件的安装包到当前目录
yumdownloader --destdir=/mnt #下载仓库中指定软件的安装包到指定/mnt目录
yumdownloader httpd --destdir=/mnt --resolve #下载仓库中指定软件安装包和软件依赖性到/mnt目录
6.网络软件仓库的搭建
westos_linux: 172.25.254.10
westos_node1: 172.25.254.20
在westos_node1中已经搭建好软件仓库,
在westos_linux中是无法访问的
在企业中,我们维护的系统数量庞大,当我们需要在每个系统安装软件管理软件时可以在每个系统中各自搭建软件仓库,但是这样管理软件会浪费大量的资源。
如何节省这部分重复的资源,需要把大家都要使用的资源共享到互联网中,这样大家就可以利用网络访问资源,不需要在每一台主机中独立建立软件资源了。
搭建方法
1.利用景象搭建本地软件仓库
2.安装共享软件
#共享方式http://超文本传输协议
#提供此协议的软件Apache
#软件包名称 httpd
#共享位置 /var/www/ html
#安装命今 在westos_node1: dnf install httpd -y
3.后用共享软件Apache
#systemctl stop firewalld
#systemctl disable firewalld
#systemctl enable --now httpd
4.建立共享目录
#mkdir /var/www/ html/westos_8
5.挂在景象到共享目录
#umount / xxxxxx.iso
# mount /xxXxxxx.iso/var/www/html/westos_8当镜像在系统中存在
#vim /etc/rc.d/rc.local在开机时自动挂
#mount /xxxx.iso/var/www/ html/westos_8
#chmod 755 /etc/rc.d/rc.local
6…在远程主机westos_linux中访问资源并书写repo文件
vim /etc/yum. repos.d/westos.repo
[AppStream]
name=AppStream
baseurl=http://172.25.254.20/westos_8 /AppStream/
gpgcheck=0
[Base0S]
name=Baseos
baseurl=http: //172.25.254.20/westos_8/Base0S/
gpgcheck=0
6.第三方软件仓库的搭建方法
可以使用dnf命合管理第三方软件并使第三方软件在网络中共享
##步骤##
1.建立共享目录
mkdir /var/ www/ html/software
2.把所有的第三方软件存放到/var/www/ html/software中
#/var/www/html/software中只能存在rpm类型的文件,压缩包是不能使用dnf管理的
3.采集第三方软件数据生成repodate目录
#dnf install createrepo -y 安装采集工具
#cd /var/ www/ html/software 进入到共享目录
#createrepo . 对共享目录中进行扫描生成repodate数据目录
4.在测试主机中指定第三方共享源
#vim letc/yum. repos.d/westos.repo
#[software]
#name=software
# baseurl=http://172.25.254.20/software
# gpgcheck=0