經常遇到有的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需要安裝軟件直接設置本地的源就可以了,非常方便! |