配置YUM源
yum源即是软件仓库,yum仓库用来存放所有的现有的==.rpm包==,当使用yum安装一个rpm包时,需要依赖关系,会自动在仓库中查找依赖软件并安装。
两种配置方式:网络yum源(需要联网),本地yum源(不用联网)。
yum repolist all #查看当前能正常使用yum源
####id:[base]基础 [updates]升级时 [extras]额外的
####如果原本的不可用,可以配置为阿里的yum源:
###一般命名规则
CentOS-Base.repo:在线的yum源配置文件
CentOS-Media.repo:本地yum源配置文件
备份源
先把系统自带的进行备份,移至bak目录:
cd /etc/yum.repos.d/
mkdir bak
mv *.repo bak
离线源
#修改后清除缓存
yum clean all ##清除缓存
yum makecache ##缓存yum源信息
自动挂载
##1.将文件上传到服务器上(本例上传到/dev/cdrom下)
##2.手动挂载----使用df -T查看镜像文件格式(一般都是iso9660)
##3.开机自动挂载 编辑fstab文件
vi /etc/fstab
##在最底部添加
/dev/cdrom /mnt/cdrom iso9660 defaults 0 0
网络源
#使用wget下载网络源,或者直接浏览器打开网址下载,然后xshell上传
cd /etc/yum.repos.d/
yum install wget
wget http://mirrors.aliyun.com/repo/Centos-7.repo 或者
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
yum repolist all
软件包管理
软件包有两大类:二进制软件包,源码包
二进制:RPM包,系统默认包(编译后的包,看不见的源代码)
优点:安装速度快,包管理系统简单
缺点:
①看不到源代码
②功能选择不如源码包灵活
③依赖性
源码包:脚本安装包
优点:
①开源(可自行修改源代码)
②自由选择所需功能
③编译安装,更适合自身系统
④卸载方便
缺点:
①步骤多,尤其是安装较大软件集合时
②编译时间长
③安装过程中一旦出错,新手很难解决
程序包管理器的两大主流:
dpkg:是由Debian Linux社群所开发出来的,包括kali,Ubuntu等等,其前端工具有apt-get
RPM:由RedHat公司所研发的标准包管理器,包括Fedora,CentOS,redhat等等,其前端工具由rpm和yum。
RPM和YUM的区别:
RPM:它管理的是单个软件包。使用rpm我们可以方便的进行软件的安装,查询,卸载,升级等工作。
YUM:基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,尤其是软件由多个rpm包组成时,可以自动处理依赖性关系,并且一次安装所有依赖的软件包
RPM
#权限说明#
RPM软件的安装,删除,更新只有root权限才能使用,对于查询功能任何用户都可以操作,如果普通用户拥有安装目录的权限,也可以进行安装:
获取rpm包的途径:
发行商的光盘或站点服务器
以CentOS为例:
http://mirrors.163.com
http://mirrors.sohu.com
命令格式:rpm [option] package_name …
RPM常用命令:
a)rpm -qa:显示目前操作系统上安装的全部软件包,其中q是query(查询)的第一个字母,a是all(全部)的第一个字母。
例如:rpm -qa |grep dhcp
b)rpm -ivh 包名:安装过程中显示正在安装的文件信息及安装进度,-i安装软件,-v显示详细的处理信息,-h显示安装进度。卸载不能用,一个#号为2%
例如:rpm -ivh net-tools
重装,原来的配置文件不会被覆盖,新安装的配置文件将会重命名为以.rpmnew为后缀的文件
c)rpm -e 包名:卸载安装包,卸载前,通常使用rpm -q 查出需要卸载的安装包名
例如:rpm -e tomcat4
忽略依赖关系,如果卸载被其他程序所依赖的包有三种解决方法:
1.把依赖者一网卸载
2.忽略依赖关系
3.不再卸载
rpm -e --nodeps 包名
d)rpm -U 包名:升级(没有安装就安装),-F:只做升级(包如果没有安装,就不做操作)
–nodeps:忽略依赖关系 --force:强制安装
注意:不要对内核执行升级操作,多版本内核可并存,因此,建议执行安装操作
例如:rpm -Uvh example.rpm
YUM
软件仓库配置文件目录:/etc/yum.repos.d
命令语法:yum 选项 命令
总结:rpm只能安装本地rpm包
yum在线下载并安装rpm包,自动处理依赖关系