软件安装包分类

源码包(可以直接读的原代码,功能可以自由定制)

rpm包(也就是编译后的二进制包)

二进制包的优点:

包管理系统简单,只通过几个命令就可以实现包的安装、升级、查询和卸载

安装速度比源码包安装快的多

二进制包的缺点

经过编译,不再可以看到源代码

功能选择不如源代码灵活

依赖性

RPM包命令管里

rpm包命名规则

eg:httpd-2.2.15-15.el6.centos.1.i.686.rpm

-httpd软件包名

-2.2.15软件版本

-15软件发布的次数

-el6.centos适合的linux平台

-i686适合的硬件平台

-rpm:rpm包扩展名

安装命令 (rpm包安装依赖性太强,安装过于繁琐)

rpm -ivh 包全名(linux中没有装过的软件包需要使用包全名和绝对路径)

-i(install)安装

-v(verbose)显示详细信息

-h(hash)显示进度

--nodeps不检测依赖性

RPM包升级

rmp -Uvh 包全名

选项:-U(upgrade)升级

卸载

rpm -e 包名(不需要路径,但是卸载也有依赖性)

RPM包查询

rpm -q 包名(q:query查询)

rpm -qa (查询所有已经安装的rpm包,a:all)

查询软件包详细信息

rpm -qi 包名

选项:

-i 表示查询软件信息(information)

-p 表示查询软件的包或未安装包信息(package)

eg: rpm -qip 包全名 查询未安装包信息

查询系统文件属于哪个RPM包

rpm -qf 系统文件名(f:file)

rpm -ql 包名 (查询文件位置)

RPM包校验

rpm -V 已安装的包名(V:verify)

校验时看文件是否被修改

769197ff9150

擷取.PNG3.PNG

RPM包中文件提取

rpm2cpio 包全名 | cpio -idv .文件绝对路径

注释:rpm2cpio 将rpm包转换为cpio格式的命令

cpio:是一个标准工具,它用于创建软件档案文件和从档案文件中提取文件

yum在线安装

查看yum源文件

vi /etc/yum.repos.d/CentOS-Base.repo

[base] 容器名称,一定要放在[]中

name 容器说明,可以自己随便写

mirrorlist 镜像站点,这个可以注释掉

baseurl 是yun源服务器的地址。默认是CentOS官方的yum源服务器,是可以使用的,如果你觉得慢的话可以改成你喜欢的yum源地址

enabled 此容器是否生效,如果不写或写成enabled=1都是生效,写成enabled=0就是不生效

gpgcheck 如果是1是指RPM的数字证书生效,如果是0则不生效

gpgkey 数字证书的公钥文件保存位置。不用修改

(1)没网络的环境下,挂载光盘,本地安装

mkdir /mnt/cdrom // 建立挂载点

mount /dev/cdrom /mnt/cdrom/ // 挂载光盘

(2)使网络yum源失效

cd /etc/yum.repos.d/ // 进入yum源目录

mv CentOS-Base.repo CentOS-Base.bak // 修改yum源文件后缀名,使其失效

(3)使光盘yum源生效

vim CentOS-Media.repo

769197ff9150

擷取.PNG

yum命令

常用yum命令

1)查询

yum list // 查询所有可用软件包列表

yum search 关键字 // 搜索服务器上所有和关键字相关的包

2)安装

yum -y install 包名 // install表示安装, -y表示自动回答yes

eg:yum -y install gcc // 安装c语言编译器 ,要想识别c语言得先安装rpm包,才能安装源码包。

3)升级

yum -y update 包名 // update表示升级,一定要加包名,否则就会让整个服务器升级,linux内核升级后的新内核得人为重新配置才能使用。

卸载

yum -y remove 包名 // remove:卸载

yum软件组管理命令

yum grouplist // 列出所有可用的软件组列表

LANG=zh_CN.utf8 // 转为中文

LANG=en_US // 转为英文

安装指定软件组,组名可以由grouplist 查询出来

yum groupinstall 软件组名 // 软件组名一定要用英文

卸载指定软件组

yum groupremove 软件组名

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐