yum库

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

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/96568

(0)
qljqlj
上一篇 2018-04-19 19:31
下一篇 2018-04-19 19:56

相关推荐

  • 正则表达式、linux文件处理三剑客:grep、sed、awk

    基本的正则表达式元字符:默认工作于贪婪模式; 字符匹配: .:匹配任意单个字符; []:匹配指定范围内的任意单个字符; [^]:匹配范围外的任意单个字符; [:digit:]数字、[:lower:]小写字母、[:upper:]大写字母、[:alpha:]所有字母、[:space:]空白符、[:alnum:]字母数字、[:punct:]标点符号 匹配次数: *…

    Linux笔记 2018-03-28
  • 权限和正则表达式

    实操为主
    week4

    Linux笔记 2018-07-15
  • Homework_week4

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。       cp -a /etc/skel /home/tuser1       chmod 700 /home/tuser1 2、编辑/etc/group文件,添加组hadoop。       echo “ha…

    Linux笔记 2018-06-27
  • 磁盘存储和文件系统

    磁盘存储和文件系统: 磁盘设备的文件命名:/dev/dev_file虚拟磁盘:/dev/vd磁盘标识: /dev/sda,/dev/sdb……磁盘分区:/dev/sda1,/dev/sdb2…… chs 磁盘sector 扇区 512bytestrack 磁道head 磁头cylinder柱面 使用磁盘: 分区创建文件系统:格式化挂载:分配目录名 hexdu…

    Linux笔记 2018-05-20
  • 第三周作业

    1.列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可 [root@yinwei ~]# who | cut -d ‘ ‘ -f1 | sort -ucentosgentooroot   取出最后登录到当前系统的用户的相关信息 [root@yinwei ~]# last | head -1gentoo pts/2 …

    Linux笔记 2018-05-25
  • 文件管理(番外篇)——文本处理工具

    cat查看、tac反向查看(列)、rev反向查看(行) cat -E:             #显示行结束符$ -n:             #对显示出的每一行进行编号 -A:             #显示所有控制符 -b:             #非空行编号 -s:             #压缩连续的空行成一行 utac             …

    2018-04-05