在centos上,使用yum安装软件很方便,比如安装gcc,java等, 但是在没有网络的情况下呢?

我之前就碰到过这么一个问题,在一个没有外网的环境内,我需要安装GCC等工具, 然后有人推荐我先去其他电脑下载对应的rpm包,然后在拷贝过去安装。

然而RPM是一个互相依赖的网络状包,也就是说最上面的安装包依赖其他三个包,然后这三个包又依赖另外的包,而且很恶心的是每个包还有对应的版本。并不是全部用最新的包都可以。 当我下过来的时候,去安装的时候又发现一个很恶心的事情,包的安装是有顺序的,然后我辛辛苦苦写了个遍历脚本,想区分出包的依赖关系,可以让我知道哪些包先安装,结果发现了一个死循环,顿时万念俱灰。

各种百度,寻找各种蛛丝马迹。被我发现了一个叫做“缓存”的词。于是我就找到了下面的这种方法, 可以在没网的centos下安装GCC java python cmake 等等工具。

1. 需要在一台可以连外网的机子上安装一个同版本的centos的虚拟机。可能不同的版本包含了不同的基层依赖包,这样有可能会导致后续的安装失败。当然这也是我的猜测。

2. 修改虚拟机上的yum配置文件  /etc/yum.conf  ,将 keepcache=0  修改成  keepcache=1, 打开缓存开关。因为yum在安装的时候会先去缓存查找,如果没有查找成功则会去网络下载。

3. 在虚拟机上使用yum命令安装需要的软件。比如 yum install java, 这个时候java的安装缓存就会保存起来。 在目录  /var/cache/yum/ 下可以看到。 一般来说是个 x86_64的文件夹。

4. 用U盘把虚拟机上的 /var/cache/yum/目录下的所有文件全部拷贝到没有网络的centos的目录 /var/cache/yum/ 下面。 假装目标机上已经安装过一次了。

5. 在目标机(没有网络的centos)上 使用yum命令安装就可以了。  比如本次的例子   yum install java.

希望则个小tip能帮助到大家。在安装软件的时候能节省一点时间。

给没有连接因特网的centos使用yum安装其他软件。的更多相关文章

  1. 给没有连接因特网的centos使用yum安装其他软件(转)

    https://blog.csdn.net/bbg221/article/details/78360618 在centos上,使用yum安装软件很方便,比如安装gcc,java等, 但是在没有网络的情 ...

  2. centos利用yum安装卸载软件常用命令

    来自:http://tech.v01.cn/Linuxchangjianwenti/changyongruanjiananzhuangyucao/2012/0119/70.html 一.使用yum安装 ...

  3. Centos 利用yum安装卸载软件常用命令[转载]

    一.使用yum安装和卸载软件,有个前提是yum安装的软件包都是rpm格式的. 安装的命令是,yum install ~,yum会查询数据库,有无这一软件包,如果有,则检查其依赖冲突关系,如果没有依赖冲 ...

  4. CentOS 利用 yum 安装卸载软件常用命令

    一.yum安装和卸载软件 有个前提是yum安装的软件包都是rpm格式的. 安装的命令是,yum install ~,yum会查询数据库,有无这一软件包,如果有,则检查其依赖冲突关系,如果没有依赖冲突, ...

  5. centos'的yum安装php的memcache扩展

    centos'的yum安装php的memcache扩展 博客分类: linux   让php能使用memcached服务的扩展有两种:memcache 和 memcached 1. 先安装libmem ...

  6. [转载]centos下yum安装samba及配置

    centos下yum安装samba及配置 在我们使用 Windows 作为客户机的时候,通常有文件.打印共享的需求.作为Windows 网络功能之一,通常可以在 Windows 客户机之间通过Wind ...

  7. centOS下yum安装配置samba

     centOS下yum安装配置samba 2010-03-29 15:46:00 标签:samba yum centOS 安装 休闲 注意:本文的原则是只将文件共享应用于内网服务器,并让将要被共享的目 ...

  8. centos下yum安装crontab+mysql自动备份

    参考博文: centos下yum安装crontab yum install vixie-cron crontabs      //安装 chkconfig crond on               ...

  9. Linux Centos 使用 yum 安装java

    centos 使用 yum 安装java 首先,在你的服务器上运行一下更新. yum update 然后,在您的系统上搜索,任何版本的已安装的JDK组件. rpm -qa | grep -E '^op ...

随机推荐

  1. 【js】前端 js/jquery 常用代码和实践

    1.获取某天后几天的日期 //d为传入的日期 days为d后面的几天function getAfterDate(d,days){ var dd = new Date(d); dd.setDate(dd ...

  2. CCF201812-3 CIDR合并

    按题意模拟即可...主要CCF吞代码... #include<bits/stdc++.h> #define pb push_back #define mp make_pair #defin ...

  3. 【学习笔记】python

    1.  len( s )  返回对象(字符.列表.元祖等)的长度或项目个数. >>>str = "runoob" >>> len(str) # ...

  4. 修改linux下yum镜像源为国内镜像

    修改为163yum源-mirrors.163.com 1.首先备份系统自带yum源配置文件/etc/yum.repos.d/CentOS-Base.repo [root@localhost ~]# m ...

  5. Git如何合并一个已经在GitHub上提交但没有合并的Pull Request请求

    步骤 进入Git仓库,执行curl -L https://github.com/<USER>/<REPO>/pull/<NO>.patch | git am

  6. Linux安装NodeJS

    Linux中安装nodejs 去官网下载和自己系统匹配的文件: 英文网址:https://nodejs.org/en/download/ 中文网址:http://nodejs.cn/download/ ...

  7. 20175221《Java程序设计》第9周学习总结

    20175221   <Java程序设计>第9周学习总结 教材学习内容总结 第十一章主要内容有: MySQL数据库管理系统 下载mysql-8.0.16-winx64 启动MySQL数据库 ...

  8. antd table 点击行触发radio 或 checkbox

     UIStore.ts (使用mobx) 1 import { observable, action, computed } from 'mobx' export class UIStore { @o ...

  9. luogu P5302 [GXOI/GZOI2019]特技飞行

    传送门 强行二合一可还行 首先\(c\)的贡献是不会变的,先考虑求出多少交点被矩形覆盖,交点的话可以按左端点纵坐标从下到上顺序枚举一条线段,然后维护右端点纵坐标的set,把之前处理过线段的右端点放进s ...

  10. ztree树应用

    <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="ZtreeListVi ...