经常遇到有的linux服务器由于特殊原因,不能连接外网,但是经常需要安装一些软件,尤其是在编译一些包的时候经常由于没有安装一些依存包而报的各种各样的错误,当你找到依存的rpm包去安装的时候,又提示你有其他的依存包没有安装,非常烦人。记得刚开始玩linux的时候曾经因为要安装一个包安装了一上午而大为恼火,折磨得人几乎崩溃!

我们知道linux下有一个很好的工具,为我们广大的工作在linux平台下的劳苦大众带来了福音,那就是大名鼎鼎的yum软件。在可以连网的时候非常方便,那么我们如何在不能连接外网的情况下使用yum来方便的安装软件呢?

本文就来向您详细介绍如何在本地或者局域网使用yum,本文以centos为例,本文的案例在centos5.5 64bit下成功部署。在本地或者局域网使用yum主要有以下两种方式:

一、使用光盘直接挂载到本地的方式

这种方式优点是速度快,操作简单。缺点是如果设置多个服务器则需要多次挂载

首先我们来看使用光盘直接挂载到本地的方式,安装步骤如下:

  1. 挂载光盘到/mnt/cdrom/

mount /dev/cdrom /mnt/cdrom/

或者将ISO文件挂载到该目录下

mount -o loop -t iso9660 /home/zhang/CentOS-5.5-x86_64-bin-DVD-1of2.iso  /mnt/cdrom

  1. 编辑/etc/yum.repos.d/CentOS-Media.repo文件,清空内容并输入如下信息并保存:

[c5-media]
name=CentOS-$releasever - Media
baseurl=file:///mnt/cdrom/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

  1. 移除默认的网络源的配置文件(如果有的话)

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak

  1. 做完以上操作以后,就可以来测试了

yum clean all                #清除缓存及旧的包
yum install -y httpd   #测试是否能安装软件

只需以上简单的4步,就能在本地使用自己建的源了,够简单吧!

二、  使用nginx或者apacheweb server来在局域网发布本地yum源的方式

这种方式优点是只需要搭建一次源,方便,速度也比连接外网要快。缺点是操作比第一中方式复杂一点,速度稍微慢一点

安装步骤如下:

1、  安装nginx

u  安装Nginx所需的pcre库:

tar zxvf pcre-8.01.tar.gz

cd pcre-8.01/

./configure

make && make install

cd ../

u  安装Nginx

tar zxvf nginx-0.8.34.tar.gz

cd nginx-0.8.34/

./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

make && make install

2、  把所有的rpm包都放到nginx的一个网页目录下,并保证能正常访问,并配置

u  挂载光盘盘到/mnt/cdrom/

mount /dev/cdrom /mnt/cdrom/

或者将ISO文件挂载到该目录下,

mount -o loop -t iso9660 /home/zhang/CentOS-5.5-x86_64-bin-DVD-1of2.iso  /mnt/cdrom

u  copy所有的rpm包到/usr/local/nginx/html/CentOS目录

cp -r /mnt/cdrom/CentOS/ /usr/local/nginx/html/

u  配置nginx,使用户能访问所有的rpm包,添加如下内容,IP注意自行修改

server

{

listen       80;

server_name  192.168.3.201;

index index.html index.htm;

root  /usr/local/nginx/html/;

access_log  /usr/local/nginx/logs/CentOS_access.log  access;

location / {

autoindex on;

}

}

验证,http://192.168.3.201/CentOS看看能不能访问

3、  把认证文件放到nginx的一个网页目录下,并保证能正常访问

cp /mnt/cdrom/RPM-GPG-KEY-CentOS-5 /usr/local/nginx/html/CentOS/

4、  用createrepo命令创建yum仓库,把yum源发布

运行这个命令之前,需要安装createrepo-0.4.11-3.el5.noarch.rpm包,

rpm –ivh  /mnt/cdrom/CentOS/createrepo-0.4.11-3.el5.noarch.rpm

createrepo  /usr/local/nginx/html/CentOS

5、  配置yum客户端

编辑客户端中的yum配置文件

vi /etc/yum.repos.d/CentOS-Base.repo,清空该文件后添加如下内容:

[base]

name= CentOS 5.5 64 BIT

baseurl=http://192.168.3.201/CentOS

gpgcheck=1

gpgkey=http://192.168.3.201/CentOS/RPM-GPG-KEY-CentOS-5

6、  测试

yum –y install httpd  看看能否自动安装软件

总结:至此,已经将如何在本地设置yum源介绍完了,大家可以在本地挑选一套服务器才用第二中方式建议一个本地yum源,以后如果某一台linux机器yum需要安装软件直接设置本地的源就可以了,非常方便!

Linux在本地使用yum安装软件的更多相关文章

  1. Linux在本地使用yum安装软件(转)

    经常遇到有的linux服务器由于特殊原因,不能连接外网,但是经常需要安装一些软件,尤其是在编译一些包的时候经常由于没有安装一些依存包而报的各种各样的错误,当你找到依存的rpm包去安装的时候,又提示你有 ...

  2. Red Hat Enterprise Linux Server(RHEL) yum安装软件时This system is not registered with RHN. RHN support will be disabled. 的解决方法(转)

    新安装了redhat6.5.安装后,登录系统,使用yum update 更新系统.提示: This system is not registered to Red Hat Subscription M ...

  3. linux rpm yum 安装 软件

    rpm 安装: 1.rpm包的了解:  rpm  安装  升级  删除 rpm -ivh  ****.rpm   安装 rpm -Uvh  ****.rpm  升级 rpm -e name    删除 ...

  4. Linux之保留yum安装软件后的RPM包

    yum安装软件很方便,但是下载下来的rpm包在安装后默认会被删除掉: 如果希望保留yum安装的软件包该如何做呢? 设置方法: 将/etc/yum.conf里对应的keepcache参数改为1即可,然后 ...

  5. linux 基本命令___0003 字符串处理和yum安装软件的路径

    字符串变量的处理 参考链接:SHELL字符串处理技巧 计算字符串的字符数量: ${#str} str="xxx-Lane1_S2_L001_R1_trim.fastq" echo ...

  6. Linux - yum 安装软件时被 PackageKit 锁定

    问题描述 yum 安装软件的时候报错 sudo yum install netease-cloud-music 已加载插件:fastestmirror, langpacks /var/run/yum. ...

  7. CentOS下成功挂载xxxxxDVDx.iso并使用yum安装软件

    CentOS下成功挂载xxxxxDVDx.iso并使用yum安装软件 **不断尝试,终能到达彼岸** 测试环境为Win7 32位,VirtualBOx4.2.16+CentOS6.5,可分别到virt ...

  8. Linux 中如何用源代码安装软件,以及如何卸载它

    https://www.linuxidc.com/Linux/2017-12/149839.htm http://www.openssh.com/ http://www.openssh.com/por ...

  9. CentOS中yum安装软件时报错:No package XXX available

    yum 安装软件时,报错:No package XXX available. [root@localhost ~]# yum -y install redis Loaded plugins: fast ...

随机推荐

  1. css-demo

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. Python web 简单服务器的搭建与运行

    搭建python的CGI环境: 假设在/var/www/cgi-bin下建立一个hello.py的文件 在ubuntu下打开终端 然后用命令 cd /var/www/ 进入后执行命令 : python ...

  3. 在Strust2 使用datatimepicker 标签引发的一系列问题

    问题:出现无法识别的问题 原因:Strust2.1开始,对于ajax类的标签不再使用<%@ taglib prefix="s" uri="/struts-tags& ...

  4. luogu P1824 进击的奶牛

    题目描述 Farmer John建造了一个有N(2<=N<=100,000)个隔间的牛棚,这些隔间分布在一条直线上,坐标是x1,...,xN (0<=xi<=1,000,000 ...

  5. SSH学习——声明式事物管理(Spring)

    1.什么是事物? 事务是一组操作的执行单元,相对于数据库操作来讲,事务管理的是一组SQL指令,比如增加,修改,删除等,事务的一致性,要求,这个事务内的操作必须全部执行成功,如果在此过程种出现了差错,比 ...

  6. binlog监听工具-canal

    官网 https://github.com/alibaba/canal/wiki

  7. 再谈 Promise

    读完这篇文章,预计会消耗你 40 分钟的时间. Ajax 出现的时候,刮来了一阵异步之风,现在 Nodejs 火爆,又一阵异步狂风刮了过来.需求是越来越苛刻,用户对性能的要求也是越来越高,随之而来的是 ...

  8. md5代码实现

    参考: 1.http://blog.csdn.net/iaccepted/article/details/8722444 2.http://hi.baidu.com/gh0st_lover/item/ ...

  9. mysql 5.7.20解压版安装配置

    MySql 5.7.20版本免安装版配置过程   下载地址为: https://dev.mysql.com/downloads/mysql/ 最下面根据自己的操作系统选择合适的型号 下载完以后解压缩到 ...

  10. delphi 接口Interface

    学习 delphi 接口 一切都是纸老虎!!! 第四章          接口 前不久,有位搞软件的朋友给我出了个谜语.谜面是“相亲”,让我猜一软件术语.我大约想了一分钟,猜 出谜底是“面向对象”.我 ...