挂载光驱设备
RPM软件包管理
RPM软件包简介
区分软件名和软件包名
软件名:firefox
软件包名:firefox-52.7.0-1.el7.centos.x86_64.rpm
查询软件信息
bash
查询软件(参数为软件名)
]# rpm -qa #当前系统中所有已安装的软件包
]# rpm -qa | grep firefox
]# rpm -q firefox #查看firefox是否安装
firefox-52.7.0-1.el7.centos.x86_64
]# rpm -q httpd #httpd提供web服务的软件
未安装软件包 httpd
]# rpm -q bash
bash-4.2.46-30.el7.x86_64
]# rpm -qi firefox #查询软件信息(查询已安装)
]# rpm -ql firefox #查询软件安装了哪些内容(安装清单)
]# rpm -ql firefox | less
查询某个目录或文件是哪个RPM包带来的
bash
• 查询某个目录或文件是哪个RPM包带来的
-- 格式:rpm -qf [文件路径]...
-- 即使目标文件被删除,也可以查询
[root@localhost ~]# which vim #查询命令对应的程序文件
/usr/bin/vim
[root@localhost ~]# rpm -qf /usr/bin/vim
vim-enhanced-7.4.160-4.el7.x86_64
[root@localhost ~]# rpm -q vim-enhanced
vim-enhanced-7.4.160-4.el7.x86_64
[root@localhost ~]# rpm -qf /etc/passwd
[root@localhost ~]# rpm -qf /usr/bin/firefox
which查询命令对应的程序文件位置
查询软件包(参数为软件包名)
bash
查询软件包(参数为软件包名)
]# rpm -q vsftpd #查询vsftpd软件是否安装
未安装软件包 vsftpd
]# ls /mnt/Packages/vsftpd-3.0.2-22.el7.x86_64.rpm
查询软件包的安装清单:
]# rpm -qpl /mnt/Packages/vsftpd-3.0.2-22.el7.x86_64.rpm
查询软件包信息
]# rpm -qpi /mnt/Packages/vsftpd-3.0.2-22.el7.x86_64.rpm
注:使用ql查询已安装的软件,参数是软件名;qpl的参数是软件包名,用于查询软件包的信息。
导入红帽签名信息
Yum软件包管理
解决依赖关系
bash
解决依赖关系
-- 先安装/卸载要求的包
-- 如果RPM包齐全但比较多,可以用通配符 *
• 忽略依赖关系(不推荐)
-- 可能会导致软件运行异常
-- 辅助选项 --nodeps
常见依赖关系的报错:
[root@localhost ~]# rpm -ivh /mnt/Packages/bind-chroot-9.9.4-61.el7.x86_64.rpm
错误:依赖检测失败:
bind = 32:9.9.4-61.el7 被 bind-chroot-32:9.9.4-61.el7.x86_64 需要
构建Yum软件包仓库
作用:自动解决依赖关系安装软件
服务:自动解决依赖关系安装软件
yum机制概述
bash
服务端(本机): 1.众多的软件 2.仓库数据文件(repodata) 3.FTP协议 或 http协议
本地Yum仓库:服务端需要有光盘内容即可
客户端(本机):指定服务端位置
-- 仓库配置:/etc/yum.repos.d/*.repo
-- 错误的文件会影响正确的文件
有一个.repo文件写错,会影响其他正确的.repo文件
配置本地yum仓库
bash
客户端文件配置内容:
-- [源名称] :自定义名称,具有唯一性
-- name:仓库的描述信息
-- baseurl:指定YUM服务端的位置
-- enabled:是否启用
-- gpgcheck:是否验证红帽签名
-- gpgkey:用于RPM软件包验证的密钥文件
完整示例:
]# vim /etc/yum.repos.d/mydvd.repo
[test01]
name=test00000001
baseurl=file:///mnt
enabled=1
gpgcheck=1
gpgkey=file:///mnt/RPM-GPG-KEY-CentOS-7