RPM安装
RPM概述
RPM(RedHat Package Manager)类似Windows里面的“添加、删除程序”。RPM软件包以rpm为扩展名,RPM也是一种软件包管理器,可以让用户方便的进行软件的安装、更新、卸载、查询等,操作命令为rpm
安装环境必须与打包时的环境一致
需要满足软件的依赖属性需求
卸载时需要特别小心,最底层的软件不可以先删除,否则可能造成整个系统出问题
格式:name-version-arch.rpm
说明:name:软件包名称 / version:带有主、次和修订的软件包版本 / arch:硬件平台 / src.rpm:源代码包
示例:xlockmore-5.31-2.el6.x86\_64.rpm
xlockmore:软件包的名称
5.31-2 : 版本号
el6 : 在centos6系统版本中使用
x86_64 :64位操作系统
.rpm : rmp安装包
获取RPM安装包
去官网下载(<http://rpm.pbone.net>)
不介意老版本的话,可以从光盘(或者镜像文件)中读取
查询软件的安装情况
命令语法:rpm -qa |grep 软件名称
参数选项
-q:查询 query
-a:全部 all
语法:rpm [-qi] rpm名称
选项:
-q:query查询的含义
-i:详细信息
卸载RPM软件包
命令语法:rpm -e 软件名称(建议写完整的名称)
选项
-e:卸载
安装RPM软件包
命令语法:rpm -ivh 软件包完整路径名称
选项
-i:install,安装
-v:显示进度条
-h:表示以"#"形式显示进度条
升级RPM软件包
命令语法:rpm -Uvh 完整的安装包路径
参数选项:
-U:upgrade,升级
-v:表示显示进度条
-h:表示以#形式显示进度条
依赖关系
一个软件必须先有其他软件才能运行,例如之前Firefox启动过程中提示的缺少nspr与nss,称之为依赖,是firefix依赖于nspr与nss那么,如果我们想要安装Firefox,那么就必须先安装号nspr与nss,这是rpm安装软件比较麻烦的地方,后面我们使用yum安装,会自动先帮我们安装所需要的依赖
RPM安装选项
强制选项
语法:--force
示例:
rpm -ivh 软件包 --force 强制安装软件包
忽略选项
语法:--nodeps
示例:
rpm -ivh 软件包 --nodeps 忽略依赖关系安装
rpm -e 软件包 --nodeps 忽略依赖关系卸载
查看文件所属的包名
命令:rpm
作用:查看文件所属的包名
语法:rpm -qf 需要查询的文件路径
参数选项:
-f:查询文件所属包
示例:rpm -qf /etc/ntp.conf
查询软件安装完成后,生成了哪些文件
命令:rpm
作用:查询软件安装完成后,生成了哪些文件
语法:rpm -ql 需要查询的软件包名称
参数选项:
-l:生成了哪些文件
示例:rpm -ql firefox
YUM安装
YUM概述
yum 主要功能是更方便的添加/删除/更新RPM 包,自动解决包的倚赖性问题,便于管理大量系统的更新问题
yum 可以同时配置多个资源库(Repository),简洁的配置文件(/etc/yum.conf),自动解决增加或删除rpm 包时遇到的依赖性问题,保持与RPM 数据库的一致性
YUM源分类
本地yum源
yum仓库在本地(系统光盘/镜像文件)
网络yum源
yum仓库不在本地,在远程,需要通过网络进行访问
国内较知名的网络源(aliyun源,163源,sohu源,知名大学开源镜像等)
阿里源:https://opsx.alibaba.com/mirror
网易源:http://mirrors.163.com/
搜狐源:http://mirrors.sohu.com/
清华源:https://mirrors.tuna.tsinghua.edu.cn/
配置YUM源
网络yum源配置
[root@server ~]# cd /etc/yum.repos.d
[root@server ~]# rm -rf *
[root@server ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
[root@server yum.repos.d]# ll
总用量 4
-rw-r--r--. 1 root root 2523 8月 4 2022 CentOS-Base.repo
[root@server yum.repos.d]# yum clean all
[root@server yum.repos.d]# yum makecache
[root@server yum.repos.d]# yum repolist all
配置扩展源
[root@giles yum.repos.d]# yum install epel-release -y
[root@giles yum.repos.d]# ll
总用量 20
-rw-r--r--. 1 root root 2523 8月 4 2022 CentOS-Base.repo
-rw-r--r--. 1 root root 951 10月 3 2017 epel.repo #扩展源配置文件
-rw-r--r--. 1 root root 1050 10月 3 2017 epel-testing.repo
-rw-r--r--. 1 root root 64 7月 9 23:00 local.repo
-rw-r--r--. 1 root root 2351 7月 9 21:05 repo.tar.gz
[root@giles yum.repos.d]# yum install sl -y
YUM的使用
yum安装RPM包
语法:yum -y install 软件包名 / yum -y group install "包组名"
参数选项:-y:选项表示取消交互
yum卸载RPM包
语法:yum -y remove 软件包名 / yum -y groupremove "包组名"
参数选项:-y:选项表示取消交互
yum升级RPM包
软件包语法:yum -y update 软件包名
参数选项:-y:选项表示取消交互
yum的其他选项
yum list # 列出仓库里的软件包
yum repolist # 列出可用仓库
yum clean all # 清空yum缓存
yum makecache # 创建yum缓存
DNF介绍
DNF,即DaNdiFied,是新一代的RPM软件包管理器。DNF 发行日期是2015年5月11日,DNF包管理器采用Python编写,发行许可为GPL v2,首先出现在Fedora 18 发行版中。在RHEL 8.0 版本正式取代了YUM,DNF包管理器克服了YUM包管理器的一些瓶颈,提升了包括用户体验,内存占用,依赖分析,运行速度等
配置文件:/etc/dnf/dnf.conf
仓库文件: /etc/yum.repos.d/*.repo
日志:
/var/log/dnf.rpm.log
/var/log/dnf.log
DNF 使用帮助:man dnf
dnf 用法与yum一致:
dnf --version
dnf repolist
dnf install httpd
dnf remove httpd
dnf clean all
dnf makecache
dnf list installed
dnf list available
dnf search nano
dnf history undo 1
源码安装
1)下载源码包,解压
2)配置(./configure,编译前准备)
作用:检查系统环境是否符合安装要求;制定功能选项./confiure --prefix=安装路径; 把系统环境的检测结果和定义好的功能选项写入Makefile文件(后续的编译和安装需要依赖这个文件的内容)
通常软件开发商都会写一个检测程序来检测用户的操作系统环境,以及该操作系统环境是否又软件开发开发商所需要的其他功能,该检测程序检测完毕后,就会主动新建这个Makefile的规则文件,通常这个检测程序的文件名configure
3)编译(make)
调用gcc编译器,并读取Makefile文件中的信息进行系统软件编译。源码程序转换为可被Linux可识别的可执行文件
4)make clean:清空编译内容(非必须,出错后重新编译先执行这一步)
5)安装(make install)

1万+

被折叠的 条评论
为什么被折叠?



