1. yum的本地安装

yum install --downloadonly --downloaddir=/opt/software
cd /opt/software yum localinstall -y *

注:-y代表对于确认是否安装自动选择“yes”
 
yum的install --downloadonly并不会下载全部rpm,应该只是深入到两层或者一层,所以更深入到依赖还是需要自己手工下载,这个在手动安装jdk的时候已经发现;
yum的localinstall的规则是高低两个rpm版本,他只会发现高版本,一旦发现依赖(高版本)不匹配,不会再去尝试低版本,而是直接报错,告知依赖找不到,其实你只要把版本删掉即可。在安装的过程中,如果发生了需要联网下载依赖的情况,说明了本地的依赖不够,需要补充,否则完全可以离线下载。

2. 挂载iso文件做yum资源

    GNOE版本的centos不知为何在安装docker_2的时候报异常:
    Cannot find a valid baseurl for repo: base/7/x86_64
    网上讲解都是修改ifcfg-ensXX文件,ONBOOT=yes,放弃了,我这里是没什么用。不过勾起了我想要把iso(操作系统镜像文件)挂为yum源的渴望。
    
    1. mount iso文件为一个盘
    首先在/mnt/iso目录下挂载iso文件:
 mount -o loop /mnt/share/centos.iso /mnt/iso 
    -o loop代表要把文件当成硬盘分区挂载到系统上;
    df -h查看是否有挂载;
    
    2. 制作repo文件
    然后,在/etc/yum.repos.d/下面所有的repo文件统统放置到bak文件夹;
    接着创建localiso.repo:

 [localrepo]
name=CentOS6.
baseurl=file:///mnt/iso/
gpgcheck=false
enabled=true

  最后验证一下:yum clean all;如果创建成功,将会看到有显示你的repo的信息(这里是localrepo)

3. 创建光盘YUM源

  虚拟机下很多时候可以让光盘作为yum源;

    mkdir  /mnt/cdrom
mount /dev/cdrom /mnt/cdrom/

在/etc/yum.repo.d下面创建一个yum源,指向/mnt/cdrom

 [localrepo]
name=CentOS6.5
baseurl=file:///mnt/cdrom/
gpgcheck=false
enabled=true

4. YUM的repo文件

  为什么需要createrepo来撞见yum源?
  这个指令将会把指定的文件夹作为yum源;所谓yum源就是有rpm+repodata组成,repodata里面有一个repo.xml可以作为yum查找安装文件的索引。如果你在repo文件的baseUrl中指定的路径一定是对应repo资源文件夹,里面包含rpm+repodata。

  这里注意一下,baseUrl如果是指定了本地文件一定要在前面添加上协议:file//,无论你的文件存贮在任何地方,一定要把通信的协议加上。
  因为我直接的将docker_2作为baseurl的时候报错了,告诉我找不到repodata/repo.xml;联想到了今天在参考网上文章离线安装Ambari需要制作仓库,我当时就在疑问,直接指向不就行了吗?怎么还要做仓库;现在才知道之前的本地CENT_ISO库不需要制作直接就可以做baseUrl是因为那个本身就是已经做好的yum源库;但是对于我现在的docker_2,里面只是罗列了rpm是不能直接做baseurl的;
  这下也把yum源串起来了:首先是有各个repo(rpm+repodata),可以是直接搞来(类似于centos_iso),可以是通过createreopo制作出来的,还可以是网上的,把本地的repo通过web服务器公开出来就是http的yum源了;
  然后是/etc/yum.repos.d文件夹里面的.repo文件,在这些文件里面定义了baseurl指向了这些yum源;
  最后,当yum install的时候,就会遍历这些repo文件以及里面定义的yum源,来搜寻是否包含指定的安装应用,如果有则进行安装。

关于yum的更多相关文章

  1. OEL上使用yum install oracle-validated 简化主机配置工作

    环境:OEL 5.7 + Oracle 10.2.0.5 RAC 如果你正在用OEL(Oracle Enterprise Linux)系统部署Oracle,那么可以使用yum安装oracle-vali ...

  2. [开发笔记]yum错误

    yum 错误TypeError: rpmdb open failed 解决办法 是因为RPM数据库出现损坏导致的,它导致所有的软件的升级.安装甚至是删除都会出现问题,终端出现乱码,YUMEX也用不成, ...

  3. Linux:将rhel yum 切换到centos yum

    Red Hat Enterprise Linux Server(RHEL) yum安装软件时This system is not registered with RHN. RHN support wi ...

  4. CentOS:Yum源的配置

    # cd /etc/yum.repos.d/ # mv CentOS-Base.repo CentOS-Base.repo.bak # wget http://mirrors.163.com/.hel ...

  5. 最近在玩linux时 yum 遇到了问题

    主要是软件源出现了问题 我做的方式可能比较粗暴 ls -l /etc/yum.repos.d/       /*查看软件源*/ rm -rf /etc/yum.repos.d/   /*全删了*/ m ...

  6. linux yum命令详解

    yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RP ...

  7. Linux CentOS7通过yum命令安装Mono(尝先安装模式)

    前言 经过尝试网上各种安装mono的技术贴,这个安装过程经历了大约2周,尝试了各个版本,几目前博客所描述的所有安装方式.以下内容的安装方式可以为你尝试不同版本的mono.并非正式环境安装标准方式安装. ...

  8. 如何使用yum 下载 一个 package ?如何使用 yum install package 但是保留 rpm 格式的 package ? 或者又 如何通过yum 中已经安装的package 导出它,即yum导出rpm?

    注意 RHEL5 和 RHEL6 的不同 How to use yum to download a package without installing it Solution Verified - ...

  9. RHEL 本地yum源配置

    1.创建挂载目录 # mkdir -p /media/cdrom   2.挂载对应系统版本的iso光盘镜像文件 # mount -o loop -t iso9660 /opt/rhel-server- ...

  10. yum和apt-get有什么区别

    一般来说著名的linux系统基本上分两大类: 1.RedHat系列:Redhat.Centos.Fedora等 2.Debian系列:Debian.Ubuntu等 RedHat 系列 1 常见的安装包 ...

随机推荐

  1. iOS基于XMPP实现即时通讯之一、环境的搭建

    移动端访问不佳,请访问我的个人博客 使用XMPP已经有一段时间了,但是一直都没深入研究过,只是使用SDK做一些简单的操作,看了许多大神的博客,自己总结一下,准备写一系列关于XMPP的使用博客,以便于自 ...

  2. 通俗理解数字签名,数字证书和https

    最近在开发关于PDF合同文档电子签章的功能,大概意思就是在一份PDF合同上签名,盖章,使其具有法律效应.签章有法律效应必须满足两个条件: 能够证明签名,盖章者是谁,无法抵赖 PDF合同在签章后不能被更 ...

  3. pbs "ll: command not found"

    可以用  ls -ltr   替代 ll

  4. JQuery小知识点代码

    1.链式操作 $(function(){ /*var oDiv = $('#div1'); oDiv.html('hello'); oDiv.css('background','red'); oDiv ...

  5. SSH登陆阿里云服务器出现Permission denied (publickey)错误解决方案

    操作环境: 操作系统:Mac10.11.5 阿里云服务器:Ubuntu16.04 远程连接:SSH 注:首先我们已假设你已经自己生成了SSH秘钥,并已经配置到阿里云.绑定了自己的云服务器. 但是后来发 ...

  6. 习题-第7章Web自动化测试

    一.选择题 1.如果火狐浏览器不在默认安装路径,编写Selenium的设置代码,横线处应该填入(    ), System.setProperty(“webdriver.firefox._______ ...

  7. Django进阶Model篇008 - 使用原生sql

    注意:使用原生sql的方式主要目的是解决一些很复杂的sql不能用ORM的方式写出的问题. 一.extra:结果集修改器-一种提供额外查询参数的机制 二.执行原始sql并返回模型实例 三.直接执行自定义 ...

  8. poj3683 2 -sat输出路径

    tarjan缩点,拓扑排序染色输出(貌似挑战上面没有拓扑啊,而且这样写还过了= =) 主要是找s,t,d,三者之间的关系,找出合取范式这题就很容易了 #include<map> #incl ...

  9. JSON字符串与JSON对象的互相转换

    比如工作中遇到的app强制退出功能的参数问题 首先定义一个JSON字符串 objectStr : String value=UUID.randomUUID().toString();SimpleDat ...

  10. day5-xml模块

    一.简述 xml即可扩展标记语言,它可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言.它用于不同语言或者程序之间进行数据交换,从这点上讲与json差不多,只不过json看 ...