Yum 库

yum   :rpm的前端程序,可解决软件包相关依赖性可在多个库之间定位软件包,up2date的替代工具

yum ,存储了众多的rpm包,以及包的相关元数据文件(放置在特定目录repodata下)

yum安装的故障原因:配置文件出错,缓存出现问题

yum的配置文件

/etc/yum.conf:为所有仓库提供公共配置

/etc/yum.repos.d/*.repo:为仓库的指向提供配置

yum的repo配置文件中可用的变量

$releasever: 当前OS的发行版的主版本号

$arch: 平台,i386,i486,i586,x86_64等

$basearch:基础平台;i386, x86_64

$YUM0-$YUM9:自定义变量

yum-config-manager –disable “仓库名” 禁用仓库

yum-config-manager –enable “仓库名” 启用仓库

仓库指向的定义:

[repositoryID]       //仓库名

name=Some name for this repository      //名字

baseurl=url://path/to/repository/       //仓库路径

enabled={1|0}      //启用或禁用默认启用

gpgcheck={1|0}    //是否支持包校验

gpgkey=URL

enablegroups={1|0}

failovermethod={roundrobin|priority}

roundrobin:意为随机挑选,默认值

priority:按顺序访问

cost= 默认为1000

yum命令

yum命令的用法: yum [options] [command] [package …]

显示仓库列表: yum repolist [all|enabled|disabled]

显示程序包: yum list

yum list [all | glob_exp1] [glob_exp2] […]

yum list {available|installed|updates} [glob_exp1] […]

安装程序包

yum install package1 [package2] […]

yum reinstall package1 [package2] […] (重新安装)

升级程序包: yum update [package1] [package2] […]

yum downgrade package1 [package2] […] (降级)

检查可用升级: yum check-update

卸载程序包: yum remove | erase package1 [package2] […]

查看程序包information: yum info […]

查看指定的特性(可以是某文件)是由哪个程序包所提供:

yum provides | whatprovides feature1 [feature2] […]

清理本地缓存: 清除/var/cache/yum/$basearch/$releasever缓存

yum clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]

构建缓存: yum makecache

搜索:yum search string1 [string2] […]

以指定的关键字搜索程序包名及summary信息

查看指定包所依赖的capabilities:

yum deplist package1 [package2] […]

查看yum事务历史: yum history [info|list|packages-list|packages-info| summary|addon-info|redo|undo|

rollback|new|sync|stats]

yum history

yum history info 6

yum history undo 6   //卸载所有,包括依赖包

yum   history  redo  6    //重复做第6步

日志 :/var/log/yum.log

安装及升级本地程序包:

yum localinstall rpmfile1 [rpmfile2] […] (用install替代)

yum localupdate rpmfile1 [rpmfile2] […] (用update替代)

包组管理的相关命令

yum   grouplist    //查看包组名

yum groupinstall group1 [group2] […]

yum groupupdate group1 [group2] […]

yum grouplist [hidden] [groupwildcard] […]

yum groupremove group1 [group2] […]

yum groupinfo group1 […]

yum的命令行选项:

–nogpgcheck:禁止进行gpg check

-y: 自动回答为“yes”

-q:静默模式

–disablerepo=repoidglob:临时禁用此处指定的repo

–enablerepo=repoidglob:临时启用此处指定的repo

–noplugins:禁用所有插件

Yum仓库:

Yum的repo配置文件中的可用变量:

$releasever  :当前OS的发行版的主版本号

$arch   :平台,i386 ,i486 ,i586 ,x86_64等

$basearch :基础平台;i386, ,x86_64

创建yum仓库:  createrepo [options]    <directory>

构建yum服务

[os7]

name=centos 7.4

baseurl=http://172.20.0.1/centos/7/Packages/

gpgkey=http://172.20.0.1/centos/7/RPM-GPG-KEY-CentOS-7

gpgcheck=0

[epel]

baseurl=http://172.20.0.1/epel/7/x86_64/

gpgkey=file:///root/rpm-gpg-key-epel-7    #localhost

gpgcheck=0

enabled=0

 

[base]

name=centoc 7.4

baseurl=file:///misc/cd

gpgcheck=0

 

构建网络yum服务器

第一步;准备光盘,包,元数据

在/var/www/html下创建路径:mkdir -p centos/{6,7}/x86_64/

第二步,准备网络服务,ftp  ,http, https

rpm –ivh  vsftpd(光盘下的rpm安装包)

Centos6: /etc/rc.d/init.d/vsftpd

service   vsftpd   start   //启动vsftpd

chkconfig      vsftpd   on     //设置为开机自启动

Centos7:  /usr/lib/systemd/system/vsftpd.service

systemctl  start   vsftpd     //启动vsftpd

systemctl    enable  vsftpd     //设置为开机自启动

netstat   -ntl    //查看21端口是否打开

第三步;关闭防火墙:

Centos6: service  iptables   stop    //关闭防火墙

chkconfig   iptables   off     //开机不启动

Centos7: systemctl   stop   firewallld.service     //关闭防火墙

iptables   -vnL    //查看防火墙服务是否停止

systemctl  disable   firewalld.service    //开机不启动

cp   /misc/cd/repodata/     /data/  -r     //复制repodata到指定目录

第四步;复制元数据repodata和rpm包文件

mkdir   /var/ftp/pub/{6,7}

cd   /var/ftp/pub/6

cp   /misc/cd/repodata/     .    -r     //复制repodata到指定目录

cp   /misc/cd/Packages     .    -r     //复制部分rpm包

第五步;客户端配置

[ftpbase]

name= ftp  server    repo

baseurl=ftp://192.168.8.133/pub/$releasever

gpgcheck =0

 

createrepo     //生成元数据

wget      网络文件具体地址       下载文件到当前目录

mkdir     /mnt/cdrom

mount   /dev/sr0   /mnt/cdrom

rpm  -ivh    /mnt/cdrom/Packages/rpm 包名     –root=/mnt/sysimage

yum 与rpm 的关系:yum 是对rpm 的二次封装,rpm不能使用,也不能安装yum

t0131d35baff6a87d64

猜你喜欢

转载自blog.csdn.net/qlj324513/article/details/80301532
yum