linux系统yum详解,linux rpm和yum详解

rpm

定义:包管理器

rpm程序包的组成部分:

二进制程序:/bin, /sbin,/ /usr/bin, /usr/sbin,

库文件:/lib64, /usr/lib64

配置文件:/etc

帮助文件:manual, info,

包文件名格式:

bash-4.2.4-1.el7.x86_64.rpm

包文件名-版本号(4为主版本号,2为次版本号,4为包的版本号)-rpm包的版本号(1.el7)-系统架构(x86_64)

常用选项:

-q 查询

-qa: 查询本机已经安装的所有程序包;

-qf /PATH/TO/SOMEFILE: 查询此处的文件由哪个程序包安装生成;

-qc: 查询指定程序包安装生成的配置文件

-qd: 查询指定的程序包安装生成的文档

-qi: 查询指定的程序包的相关信息;

-ql: 查询程序包安装生成的所有文件的列表;

-q --scripts:查询程序包相关的脚本:

preinstall: 安装前脚本

postinstall:安装后脚本

preuninstall: 卸载前脚本

postuninstall: 卸载后脚本

-p: 查询针对是未安装的程序包文件;

{-i|--install} 安装

{-U|--upgrade} 更新软件

-v 安装时显示详细信息 --vv 显示更详细的信息,一般还要显示包的包含文件

-h 以#号显示安装进度

{-F|--freshen} 升级软件包

--nodeps 安装包的时候不用安装依赖包,虽然可以解决rpm安装包时的依赖问题,但是会给后期包的使用带来影响,建议不要使用这项.

-V 校验

-e 卸载

常用实例:

1.安装zsh rpm包

rpm -ivh zsh-4.3.11-4.el6.centos.x86_64.rpm

de1a19ce37fe72bc8f8f5b922482ed31.png

2.查看已安装的zsh包中包含哪些文件,如果未安装不返回信息[root@localhost yum.repos.d]# rpm -ql python

/usr/bin/pydoc

/usr/bin/python

/usr/bin/python2

/usr/bin/python2.6

/usr/share/doc/python-2.6.6

/usr/share/doc/python-2.6.6/LICENSE

/usr/share/doc/python-2.6.6/README

/usr/share/man/man1/python.1.gz

总结:python包包含了二进制程序和帮助文件

3.查看已安装的zsh包的相关信息,如果未安装不会返回任何信息,如情况2[root@localhost yum.repos.d]# rpm -qi zsh

Name        : zsh                          Relocations: (not relocatable)

Version     : 4.3.11                            Vendor: CentOS

Release     : 4.el6.centos                  Build Date: 2015年07月24日 星期五 17时41分25秒

Install Date: 2015年08月02日 星期日 01时30分38秒      Build Host: c6b8.bsys.dev.centos.org

Group       : System Environment/Shells     Source RPM: zsh-4.3.11-4.el6.centos.src.rpm

Size        : 5283457                          License: BSD

Signature   : RSA/SHA1, 2015年07月25日 星期六 04时41分32秒, Key ID 0946fca2c105b9de

Packager    : CentOS BuildSystem 

URL         : http://zsh.sunsite.dk/

Summary     : A powerful interactive shell

Description :

The zsh shell is a command interpreter usable as an interactive login

shell and as a shell script command processor.  Zsh resembles the ksh

shell (the Korn shell), but includes many enhancements.  Zsh supports

command line editing, built-in spelling correction, programmable

command completion, shell functions (with autoloading), a history

mechanism, and more.

情况1[root@localhost yum.repos.d]# rpm -qi php

package php is not installed

情况2

4.列出python包所依赖的能力

rpm -qR python[root@localhost yum.repos.d]# rpm -qR python

/usr/bin/python2.6

libc.so.6()(64bit)

libc.so.6(GLIBC_2.2.5)(64bit)

libdl.so.2()(64bit)

libm.so.6()(64bit)

libpthread.so.0()(64bit)

libpython2.6.so.1.0()(64bit)

libutil.so.1()(64bit)

python-libs(x86-64) = 2.6.6-51.el6

rpmlib(CompressedFileNames) <= 3.0.4-1

rpmlib(FileDigests) <= 4.6.0-1

rpmlib(PartialHardlinkSets) <= 4.0.4-1

rpmlib(PayloadFilesHavePrefix) <= 4.0-1

rpmlib(VersionedDependencies) <= 3.0.3-1

rtld(GNU_HASH)

rpmlib(PayloadIsXz) <= 5.2-1

5.卸载zsh包 : rpm -e zsh

6.查看更新zsh包 : rpm -Uvh zsh

rpm来源:

1.发行版提供的程序包;

2.Fedora-EPEL

3.项目的官方站点

4.搜索引擎

运用光盘rpm包安装软件方法步骤

1.先将光盘加载DVD1安装ios文件

2.挂载光盘 mount -r /dev/cdrom /mnt/cdrom

3.cd Packpages Packpages目录下有很多rpm包都可以安装

yum

定义:由于rpm解决包的相互依赖性很烦,就诞生yum,用yum安装软件,如果他安装的包依赖包没有安装,它会自动去仓库先安装依赖的包

yum文件服务器格式:scheme(协议) + path(路径)

ftp://hostname/PATH/TO/REPO

http://hostname/PATH/TO/REPO

file:///PATH/TO/REPO

yum配置文件

/etc/yum.conf 定义全局配置:对所有仓库都适用的配置

/etc/yum.repos.d/*.repo 一个文件通常用于一个或一组功能相近或相关的仓库

定义一个仓库指向:

[REPO_ID] 该仓库的id

name= 该仓库的名称

baseurl= yum源基本链接

# mirrorlist=SCHEME://HOSTNAME/PATH/TO/MIRROR_LIST_FILE yum基本链接文件集合,支持多个baseurl

enabled={1|0} 是否有效

gpgcheck={1|0} 是否校验

gpgkey= 校验的key

cost= 消耗(该值越小,yum源越优先)

定义仓库指向可用变量:

$releasever: 引用当前系统的主版本号;(如当前系统版本为CentOS release 6.5 (Final),则主版本号为6,这点老以为是6.5)

$basearch: 当前系统的基本架构;

i386(32位), x86_64(64位)

yum命令:

yum [options] [command] [package ...]

选项

install 顾名思义就是安装

remove 删除yum包

update 升级

info 查询指定yum包的详细信息 类似于rpm -qi,该项yum包未安装也支持查看

list all|installed|availiable 列出yum源的所有或有效的yum包

provides /PATH/TO/SOMEFILE: 查询指定文件由哪个包安装生成

reinstall 重新安装

downgrade 降级

clean [ packages | metadata | expire-cache | rpmdb | plugins | all ] 清理缓存

makecache 生成缓存

分组选项:

grouplist 列出可用的yum包组

groupinfo "GRP_NAME" 列出指定组的详细信息

groupinstall "GRP_NAME" 安装指定的组

groupremove "GRP_NAME" 卸载指定的组

仓库:

repolist [all|enabled|disabled] 显示系统定义的所有yum仓库

repoinfo [all|enabled|disabled] 显示指定仓库的详细信息

实例

将163的镜像加入到系统的yum源中去[root@localhost yum.repos.d]# cd /etc/yum.repos.d

[root@localhost yum.repos.d]# vim CentOS-Base.repo

[163]

name=163_yum_repos

baseurl=http://mirrors.163.com/centos/$releasever/os/$basearch/

gpgcheck=1

cost=8

2. 展示yum所有仓库[root@localhost yum.repos.d]# yum repolist

Loaded plugins: fastestmirror

Loading mirror speeds from cached hostfile

* epel: mirrors.ustc.edu.cn

repo id                                                                                        repo name                                                                                                                              status

163                                                                                            163_yum_repos                                                                                                                           6,575

epel                                                                                           Extra Packages for Enterprise Linux 6 - x86_64                                                                                         11,767

repolist: 18,342

3.查看php yum包的详细信息[root@localhost yum.repos.d]# yum info php

Loaded plugins: fastestmirror

Loading mirror speeds from cached hostfile

* epel: mirrors.ustc.edu.cn

Available Packages

Name        : php

Arch        : x86_64

Version     : 5.3.3

Release     : 40.el6_6

Size        : 1.1 M

Repo        : 163

Summary     : PHP scripting language for creating dynamic web sites

URL         : http://www.php.net/

License     : PHP

Description : PHP is an HTML-embedded scripting language. PHP attempts to make it

: easy for developers to write dynamically generated webpages. PHP also

: offers built-in database integration for several commercial and

: non-commercial database management systems, so writing a

: database-enabled webpage with PHP is fairly simple. The most common

: use of PHP coding is probably as a replacement for CGI scripts.

:

: The php package contains the module which adds support for the PHP

: language to Apache HTTP Server.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值