yum笔记

rpm --> yum

HTML: HyperText Mark Language
XML: eXtended Mark Language

XML, JSON: 半结构化的数据

yum仓库中的元数据文件:
primary.xml.gz
    所有RPM包的列表;
    依赖关系;
    每个RPM安装生成的文件列表;
filelists.xml.gz
    当前仓库中所有RPM包的所有文件列表;
other.xml.gz
    额外信息,RPM包的修改日志;

repomd.xml
    记录的是上面三个文件的时间戳和校验和;
    
yum install zsh

comps*.xml: RPM包分组信息
    

ftp://172.16.0.1/pub/{Server,VT,Cluster,ClusterStorage}

如何为yum定义repo文件
[Repo_ID]
name=Description
baseurl=
    ftp://
    http://
    file:///
enabled={1|0}
gpgcheck={1|0}
gpgkey=


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

-y: 自动回答为yes
--nogpgcheck


list: 列表
    支持glob
    all
    available:可用的,仓库中有但尚未安装的
    installed: 已经安装的
    updates: 可用的升级



clean: 清理缓存
    [ packages | headers | metadata | dbcache | all ]
    


repolist: 显示repo列表及其简要信息
    all
    enabled: 默认
    disabled

install: 安装
yum install PACKAGE_NAME

update: 升级
update_to: 升级为指定版本

remove|erase:卸载

info:

provides| whatprovides: 查看指定的文件或特性是由哪个包安装生成的;
    
groupinfo
grouplist
groupinstall
groupremove
groupupdate



/media/cdrom/{Server,VT,Cluster,ClusterStorage}


如何创建yum仓库:
createrepo


http://172.16.0.1/yum/{Server,VT}



练习:
1、将系统安装光盘挂载至/media/yum目录,用其实现yum仓库;
2、配置使用http://172.16.0.1/yum/{Server,VT,Cluster,ClusterStorage}为可用yum仓库;

写一个脚本,完成以下功能:
说明:此脚本能于同一个repo文件中创建多个Yum源的指向;
1、接受一个文件名做为参数,此文件存放至/etc/yum.repos.d目录中,且文件名以.repo为后缀;要求,此文件不能事先存,否则,报错;
2、在脚本中,提醒用户输入repo id;如果为quit,则退出脚本;否则,继续完成下面的步骤;
3、repo name以及baseurl的路径,而后以repo文件的格式将其保存至指定的文件中;
4、enabled默认为1,而gpgcheck默认设定为0;
5、此脚本会循环执行多次,除非用户为repo id指定为quit;

if [ -e $1 ]; then
  echo "$1 exist."
  exit 5
fi

[repo id]
name=
baseurl=
enabled=
gpgcheck=

原文地址:https://www.cnblogs.com/jjzd/p/5805029.html