目录
1.RPM软件包
Red Hat Package Manager,由Red Hat公司提出,被众多Linux发行版所采用,也称二进制,无需编译,可以直接使用;无法设定个人设置和开关功能。
1.1.rpm软件包名称
软件名称 版本号(主版本、次版本、修订号) 操作系统 -----90%的规律
有依赖关系,不能自动解决依赖关系。
举例:openssh-6.6.1p1-31.el7.x86_64.rpm
数字前面的是名称
数字是版本号:第一位主版本号,第二位次版本号,带横杠的是修订号, el几—操作系统的版本。
noarch : 32位64位都支持
x86_64 : 64位
i4-686的包 :32位
devel:表示这个RPM包是软件的开发包;
1.2.用rpm安装需要考虑如下信息
需要考虑系统的版本需要与rpm对应;
系统的架构:如32位还是64位;
需要考虑依赖关系
2.rpm工具
RPM软件包的基本工具,无法自行解决依赖关系和自动下载软件包
优点:不需要配置,可以直接使用
2.1.安装
查找rpm包的网站:http://rpmfind.net/、http://pkgs.org
语法:rpm -ivh 软件包名称
-i install 安装
-vh verbose human 可视百分比
-U upgrade 升级
[root@loaclhost ~]# rpm -ivh filebeat-6.5.4-x86_64.rpm //本地安装rpm包
2.2.各种查询
(从本地的rpm数据库)
-q query 查询选项
-l list 列出软件包中的文件
-f file 查询/验证文件属于的软件包
-a all 查询/验证所有软件包
[root@loaclhost ~]# rpm -qa | grep 软件名 //查找软件是否安装
[root@loaclhost ~]# rpm -ql httpd //查询http安装的文件
[root@loaclhost ~]# rpm -qf /usr/share/httpd/noindex //查询该文件属于哪个包
[root@loaclhost ~]# rpm -qf /etc/passwd //查询某一个文件是哪个软件产生的;只能查询已经安装好的软件
2.3.卸载
语法:rpm -e 软件名称
-e erase 卸载
[root@loaclhost ~]# rpm -e httpd
3.yum工具
(Yellow dog Updater,Modified)一个在Fedora,RedHat以及CentOS中的前端软件包管理器
特性:基于RPM包管理,能够从指定的服务器自动下载RPM包并安装;可以自动处理依赖关系,并且一次性安装所有依赖的软件包。
3.1.网络yum源
3.1.1.配置yum仓库
安装好环境之后系统有centos自带的官方yum源,更换国内厂商提供的的软件包地址作为yum源,可使下载时速度更快更方便。(/etc/yum.repos.d)
远程yum:http://、ftp://
先安装下载工具,并备份
[root@loaclhost ~]# yum install -y wget
[root@loaclhost ~]# mv /etc/yum.repos.d/* /tmp
下载阿里源至yum库
[root@loaclhost ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
安装拓展源
[root@loaclhost ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
清理yum缓存,并重建缓存
[root@loaclhost ~]# yum clean all
[root@loaclhost ~]# yum makecache
查询yum源信息
[root@loaclhost ~]# yum repolist
3.1.2.yum管理RPM包
查看命令属于哪个软件:
[root@loaclhost ~]# yum provides rz
查看系统已经安装好的软件和没有安装的软件(源里存在即可查到):
[root@loaclhost ~]# yum list
安装软件,(-y跳过确认提示直接安装):
[root@loaclhost ~]# yum install 软件名称
[root@loaclhost ~]# yum install mysql mysql-server -y
重装:
[root@loaclhost ~]# yum -y reinstall 软件名
卸载软件:
[root@loaclhost ~]# yum erase mysql-server
[root@loaclhost ~]# yum remove mysql-server
[root@loaclhost ~]# yum -y remove mysql-server
yum卸载rpm查找出来所有与httpd相关的软件包全部卸载掉:
[root@loaclhost ~]# yum -y remove `rpm -qa | grep httpd`
3.2.本地yum源
需要提前准备镜像文件、部分安装包;提前备份repo文件
本地yum:file://
备份原来的repo文件
[root@loaclhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# mv CentOS-Base.repo{,.bak}
[root@localhost yum.repos.d]# mv epel.repo{,.bak}
3.2.1.镜像挂载本地yum源
挂载镜像
[root@loaclhost ~]# mkdir /mnt/centos7
[root@loaclhost ~]# mount CentOS-7-x86_64-DVD-1708.iso /mnt/centos7/
编写yum配置文件是必须是.repo
[root@loaclhost ~] vim /etc/yum.repos.d/CentOS.Base.repo
[centos7] #yum源区别名称,用来区分其他的yum源
name='centos7' #yum源名字
baseurl=file:///mnt/centos7 #指定本地yum源的路径
enabled=1 #是否使用此yum源(1为打开,0为关闭)
gpgcheck=0 #检查软件
清理yum缓存,并重建缓存
[root@loaclhost ~]# yum clean all
[root@loaclhost ~]# yum makecache
3.2.2.私有仓库搭建yum源
安装repo索引文件工具
[root@loaclhost ~]# yum install -y createrepo
上传ISO光盘文件至系统中,并挂载ISO
(这里挂载的目的是使用镜像文件中的安装包,也可以直接上传软件包文件至/opt目录中)
[root@loaclhost ~]# mount CentOS-7-x86_64-DVD-2009.iso /mnt/
复制安装包至本地yum仓库目录下
[root@loaclhost ~]# cp -rf /mnt/Packages/ /opt/
创建本地yum源的repo索引
[root@loaclhost ~]# createrepo /opt
制作repo仓库文件
[root@loaclhost ~] vim /etc/yum.repos.d/local.repo
[local]
name='local'
baseurl=file:///opt #指定本地yum源的路径,也可以使用远程连接IP
enabled=1
gpgcheck=0
在/opt/Packages新增或删除rpm安装包以后,需要重建repo索引
[root@loaclhost ~]# createrepo /opt
清理yum缓存,并重建缓存
[root@loaclhost ~]# yum clean all
[root@loaclhost ~]# yum makecache