Linux在本地使用yum安裝軟件 2

http://blog.chinaunix.net/uid-20639775-id-2854736.html

分類: LINUX


Linux在本地使用yum安裝軟件

 

經常遇到有的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 

2.  編輯/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

3.   移除默認的網絡源的配置文件(如果有的話)

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

4.   做完以上操作以後,就可以來測試了

yum clean all                #清除緩存及舊的包
yum install -y httpd   #測試是否能安裝軟件

只需以上簡單的4步,就能在本地使用自己建的源了,夠簡單吧!

 

二、  使用nginx或者apache等web 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需要安裝軟件直接設置本地的源就可以了,非常方便!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章