rpm包的安装方式
#安装软件包, 需要指定软件包绝对路径
# mount /dev/cdrom /mnt
rpm -ivh /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm
rpm -ivh /mnt/Packages/vsftpd-3.0.2-22.el7.x86_64.rpm
#在软件包所在目录下可以不指定绝对路径
cd /mnt/Packages/
rpm -ivh zsh-5.0.2-28.el7.x86_64.rpm
#如果软件包存在, 强制再次安装
rpm -ivh --force /mnt/Packages/tree-1.5.3-3.el6.x86_64.rpm
#安装samba服务需要依赖其他组件, 使用--nodeps可重新强制安装
rpm -ivh --nodeps /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm
# yum 安装会自动处理依赖
# 其他用法,直接使用连接地址
# https://developer.aliyun.com/mirror/
# https://developer.aliyun.com/mirror/zabbix?spm=a2c6h.13651102.0.0.3e221b113DCKcf
# https://mirrors.aliyun.com/zabbix/zabbix/
# 先装3,再装4测试升级
# zabbix-agent-3.0.9-1.el7.x86_64.rpm
rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-agent-3.0.9-1.el7.x86_64.rpm
# 升级要用U
rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/4.2/rhel/7/x86_64/zabbix-agent-4.2.8-1.el7.x86_64.rpm
# 卸载(带依赖的卸不了)
rpm -e zabbix-agent
rpm -q zabbix-agent
yum remove samba
查询已安装好的rpm包
rpm -q #查看指定软件包是否安装(重点)
rpm -qa #查看系统中已安装的所有RPM软件包列表
rpm -qi #查看指定软件的详细信息
rpm -ql #查询指定软件包所安装的目录、文件列表(重点)
rpm -qc #查询指定软件包的配置文件(只有配置文件,etc下的)
rpm -qf #查询文件或目录属于哪个RPM软件
rpm -qip #查询未安装的rpm包详细信息
rpm -qlp #查询未安装的软件包会产生哪些文件
#查询vsftpd这个rpm包是否安装
rpm -q vsftpd
#模糊查找系统已安装的rpm包
rpm -qa |grep ftp
#查询vsftpd软件包的相关信息
rpm -qi vsftpd
#查询rpm包所安装的文件
rpm -ql vsftpd
#查询rpm包相关的配置文件
rpm -qc vsftpd
#查询配置文件或命令来自于哪个rpm包(只能查已经安装过的)
rpm -qf /etc/vsftpd/vsftpd.conf # 查看这个配置文件是
rpm -qf /usr/sbin/vsftpd
rpm -qf /usr/sbin/ifconfig
# 想看未安装的
yum provides vim
#查询未安装的软件包会产生哪些文件
rpm -qlp /mnt/Packages/samba-3.6.23-41.el6.x86_64.rpm
#查询未安装的软件包会产生哪些文件
rpm -qip /mnt/Packages/samba-3.6.23-41.el6.x86_64.rpm
RPM包升级
rpm -U #如果老版本不存在则全新安装,如果存在有新版即升级
# wget https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-agent-3.0.9-1.el7.x86_64.rpm
# wget https://mirrors.aliyun.com/zabbix/zabbix/4.2/rhel/7/x86_64/zabbix-agent-4.2.0-1.el7.x86_64.rpm
#安装低版本
rpm -ivh zabbix-agent-3.0.9-1.el7.x86_64.rpm
#安装高版本(出现错误)
rpm -ivh zabbix-agent-4.2.0-1.el7.x86_64.rpm
#使用升级的方式,完美解决替换
rpm -Uvh zabbix-agent-4.2.0-1.el7.x86_64.rpm
RPM包卸载
卸载包时要先把依赖的包卸载掉,如果依赖的包是系统所必须的,那就不能卸载这个包,否则会系统崩溃。
#先查询, 然后卸载
rpm -qa |grep sh
rpm -e zsh
YUM
还有一种方法是不用手动安装依赖包的,一步到位的这就是YUM
# yum repolist # 查看现在有多少源,nginx没有,可以配置nginx仓库,就有了
# 扩展epel源:
wget -O /etc/yum.repos.d/epel.repo
http://mirrors.aliyun.com/repo/epel-7.repo
#默认系统是国外源,需要替换为国内的源
wget -O /etc/yum.repos.d/CentOS-Base.repo
http://mirrors.aliyun.com/repo/Centos-7.repo
#扩展源,有很多软件在基本源中没有
wget -O /etc/yum.repos.d/epel.repo
http://mirrors.aliyun.com/repo/epel-7.repo
Nginx官方源
vim /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1
使用yum查询软件包的方式
yum list
yum list|grep ftp
yum info ftp
使用yum安装软件包的方式
yum install tree
yum install tree -y #非交互
#安装本地的rpm包, 如果有依赖关系, 会自动从软件仓库中下载所需依赖
yum localinstall /mnt/Packages/bind-9.9.4-50.el7.x86_64.rpm
#直接安装网络上的rpm包
yum install http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
使用yum重新安装软件包的方式
#1.如果不小心删除vsftpd配置文件
rm -f /etc/vsftpd/vsftpd.conf
#2.可以对软件进行重新安装
yum reinstall vsftpd
#3.检查软件的配置文件
rpm -qc vsftpd
/etc/logrotate.d/vsftpd
/etc/pam.d/vsftpd
/etc/vsftpd/ftpusers
/etc/vsftpd/user_list
/etc/vsftpd/vsftpd.conf
使用yum更新软件包
#对比Linux已安装的软件和yum仓库中的软件, 有哪些需要升级
yum check-update
#更新acl软件
yum update acl -y
#如下的执行很危险,这代表更新整个系统所有的软件,包括内核
yum update -y
使用yum删除软件包
yum install samba -y
yum erase samba -y
yum remove samba -y