软件包分类:
1:源码包。Linux是C语言写的。
优点:
可以看到源代码。可以在源代码中修改(脚本安装包)。
安装后的效率高。
卸载方便(直接删除)。
缺点:
安装复杂。
编译时间长。
2:二进制包(RPM包、系统默认包)。经过编译的包。
优点:
安装速度快,
缺点:
是不能看到源码。(RPM包是红帽系列中使用的)
不能对源码修改。
依赖性(安装顺序和卸载顺序有要求)。
RPM包管理-RPM包命令管理:
1:RPM包的命名规则
(RPM包在安装光盘中的package目录中)
例如:httpd-2.2.15-15.el6.centos.1.i686.rpm
httpd 软件包名
2.2.15 软件版本
15 发布次数
el6.centos 适合的Linux平台(el6或者centos)
i686 适合安装平台。(如果写的是x64表示只能安装在64位的cpu上)(如果写noarch表示任何Linux平台)
2:RPM依赖
树形依赖:a->b->c
环形依赖:a->b->c-a //需要将软件包abc用一条命令同时安装。
模块依赖:安装过程中如果报出“xxxx.so.数字”说明这个依赖是库依赖(这个包不是单独独立的包,他是某一个软件包中的一个软件,因此只需要安装他所在的包就行)。
可以到www.rpmfind.net中输入“xxxx.so.数字”就可以找到他的父包。
3:安装命令:
rpm -ivh 全包名
-i 安装
-v 显示详细信息
-h 显示进度
--nodeps 不检查依赖性
4:升级:
rpm -Uvh 包全名
-U 升级
5:卸载:
rpm -e 包名
-e 卸载
6:rpm查询:
rpm -q 包名 //软件包是否安装
-q 查询
rpm -qa //查询所有安装了的包
rpm -qi 包名 //软件包是否安装和包信息
-q 查询
-i 包信息
-p 查询没有安装的软件包信息
rpm -qp 包全名 //查询未安装包信息
-q 查询
-p 查询没有安装的软件包信息
rpm -ql 包名 //查询安装位置
-l 列表
-p 未安装的包
***查询软件包的依赖性
rpm -qR 包名
-R 查询依赖包
-p 未安装的包
RPM包管理-yum在线管理:
(yum中有所有RPM包和依赖,使用命令一键安装。但是有的要收费(红帽))
IP地址配置和网络yum源:
1.1:配置网络使机器可以上网(红帽系列setup)(启用网卡onboot=yes),service network restart 重启网络服务。
1.2:centos可以使用官网免费的yum源(已经配置好了)。(centos官网访问缓慢,也可以使用国内免费的yum源)
1.3:yum源配置的文件在 /etc/yum.repos.d/CentOS-Base.repo
在/etc/yum.repos.d/目录下只要是以.repo结尾的都是合法的yum源。CentOS-Media.repo是本地光盘yum源。
1.4:vi/etc/yum.repos.d/CentOS-Base.repo
[base] //容器名称
name=CentOS-$releasever - Base //容器说明
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra //所在地址镜像(默认使用)
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/ //容器真正地址
gpgcheck=1 //数字证书有效(0为无效)
enabled=1 //是否生效,1生效,0不生效(默认是1)
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 //证书的公钥文件保存位置
光盘yum源搭建
1、挂在光盘
2、让网络yum源失效
yum源文件在/etc/yum.repos.d/
将网络yum文件改名,添加后缀使其不是以.repo结尾即可。
3、让光盘yum源有效
CentOS-Media.repo 是光盘yum源。
例如:
[c7-media]
name=CentOS-$releasever - Media
baseurl=file:///media/CentOS/ //写光盘挂在地址(光盘yum源)
file:///media/cdrom/ //多余的两个地址注释掉即可。(不然每次使用都会提示找不到这个地址)
file:///media/cdrecorder/
gpgcheck=1
enabled=1 //使这个yum源有效
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
yum命令:
2.1:查询
yum list
功能:获取服务器上可用的rpm包列表。
yum search 包名
功能:按照包名搜索服务器中的rpm包。
2.2:安装
yum -y install 包名
install 安装
-y 自动回答yes(安装时需要使用yes确认信息)
2.3:升级
yum -y update 包名 (切记:写包名,不写报名将会将服务器上的所有软件都升级,包括系统。)
update 升级
-y 自动回答yes
2.4:卸载
yum -y remove 包名 (切记:使用yum卸载时,将会卸载所有依赖包,系统有可能死掉。)
remove 卸载
-y 自动回答yes
2.5:yum软件组管理:
yum grouplist 查看所有可以安装的组。
yum groupinstall 软件组 安装软件组。(如果名字有空格使用""括起来)
yum groupremove 软件组名 卸载软件组。
RPM包的校验:
语法:rpm -V 包名 (用户判断安装的软件包是否被修改过)
回车后没有任何信息说明该软件包没有被修改过。
回车后列出了被修改的文件和修改信息。
S 文件大小是否改变
M 文件权限是否改变
5 md5是否改变了
L 文件路径是否改变
U 文件所有者是否改变
G 文件的所属组是否改变
T 文件的修改时间是否改变
c 配置文件
d 普通文件
g 鬼文件,这个文件不应该出现在这里,认证对待。
l 授权文件
r 描述文件
RPM包中文件提取:
将RPM包中的部分文件提取出。(可以获取被误删的软件文件)