1. 程式人生 > >yum源伺服器搭建

yum源伺服器搭建

概述

yum相較於rpm,能夠更好地解決安裝軟體時的依賴包問題,使用yum安裝更簡單更方便。搭建本地YUM源伺服器,可以避免升級安裝軟體時佔用公網頻寬;有了本地YUM源伺服器,可以解決無法連線Internet的其他YUM客戶端的軟體升級和安裝。

本文主要介紹了以下內容:

通過編譯Apache原始碼包安裝httpd服務;

搭建基於HTTP的yum源伺服器;

將Internet的yum源rpm包下載到自己的yum伺服器。

搭建環境

系統:CentOS Linux release 7.2.1511 (Core)(minimal安裝)

伺服器:10.10.10.100/24


客戶端:10.10.10.70/24

httpd版本:httpd-2.4.23

伺服器安裝httpd

1. 準備環境及軟體原始碼包

首先我們要安裝編譯環境所需的gcc 和gcc-c++編譯器:

[[email protected] ~]# >>yum install -y wget gcc gcc-c++

我們可以登入Apache的官方頁面(http://httpd.apache.org/download.cgi#apache24)進行軟體下載,我們這裡用wget進行下載,並用tar命令進行解壓:

[[email protected] ~]# >>wget http://mirror.bit.edu.cn/apache//httpd/httpd-2.4.23.tar.gz
[

[email protected] ~]# >>wget http://mirrors.cnnic.cn/apache//apr/apr-1.5.2.tar.gz
[[email protected] ~]# >>wget http://mirrors.cnnic.cn/apache//apr/apr-util-1.5.4.tar.gz
[[email protected] ~]# >>wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.38.tar.gz
[[email protected]
~]# >>tar xf httpd-2.4.23.tar.gz
[[email protected] ~]# >>tar xf apr-1.5.2
[[email protected] ~]# >>tar xf apr-util-1.5.4.tar.gz
[[email protected] ~]# >>tar xf pcre-8.38.tar.gz

httpd-2.4.23.tar.gz是主程式包,其他三個是安裝需要的依賴包,pcre-8.38.tar.gz需要 gcc-c++編譯支援。

2. 開始編譯安裝

安裝順序是 apr-1.5.2 ==> apr-util-1.5.4.tar.gz ==> pcre-8.38.tar.gz ==> httpd-2.4.23.tar.gz

### 編譯安裝 apr-1.5.2
[[email protected] ~]# >>cd apr-1.5.2
[[email protected] ~]# >>./configure --prefix=/usr/local/apr
[[email protected] ~]# >>make && make install
### 編譯安裝 apr-util-1.5.4
[[email protected] ~]# >>cd apr-util-1.5.4
[[email protected] ~]# >>./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
[[email protected] ~]# >>make && make install
### 編譯安裝 pcre-8.38
[[email protected] ~]# >>cd pcre-8.38
[[email protected] ~]# >>./configure --prefix=/usr/local/pcre
[[email protected] ~]# >>make && make install
### 編譯安裝 httpd-2.4.23 (注意:需要通過--with-apr=指定三個依賴包的安裝路徑)
[[email protected] ~]# >>cd httpd-2.4.23
[[email protected] ~]# >>./configure --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre
[[email protected] ~]# >>make && make install

3. 配置apache2

1.二進位制程式目錄匯入至PATH環境變數中;

由於我們是預設安裝,httpd預設安裝於/usr/local/apache2。這裡,我們需要將目錄新增到系統環境$PATH中

[[email protected] bin]# >>echo 'export PATH=/usr/local/apache2/bin:$PATH' > /etc/profile.d/httpd.sh

2.新增開機啟動

[[email protected] bin]# >>echo '/usr/local/apache2/bin/apachectl start' >> /etc/rc.d/rc.local
[[email protected] ~]# >>chmod +x /etc/rc.d/rc.local

3.匯入標頭檔案

我們基於連結的方式實現:

[[email protected] apache2]# >>ln -s /usr/local/apache2/include/ /usr/include/httpd

4.匯入幫助手冊

編輯/etc/man_db.conf檔案(CentOS6為/etc/man.config),新增如下條目:

MANDATORY_MANPATH /usr/local/apache2/man

 

5.修改網頁目錄地址

[[email protected] ~]# >>vim /usr/local/apache2/conf/httpd.conf

DocumentRoot "/var/www/html"

<Directory "/var/www/html">

 

6.測試網路

在瀏覽器中輸入伺服器地址:

 

到此,我們已經完成了編譯安裝 httpd伺服器了。接下來我們進行yum源伺服器的搭建。

YUM源伺服器搭建

1.建立資料夾

我們先建立存放 .RPM的目錄

[[email protected] conf]# >>mkdir -p /var/www/html/centos/7/os/x86_64/Packages/

2.我們可以將光碟映象Packages目錄裡的 .rpm包複製到 /var/www/html/centos/7/os/x86_64/Packages/目錄,這裡我僅做測試,複製了幾個包進去:

 

在瀏覽器上輸入網址:

 

3.安裝createrepo,此程式主要用於生成建立yum倉庫,建立索引資訊。

[[email protected] x86_64]# >>yum install createrepo
[[email protected] ~]# >>createrepo /var/www/html/centos/7/os/x86_64/

 

到這裡我們已經完成了yum源伺服器的配置。

我們到客戶端進行測試:

[[email protected] ~]# >>vim /etc/yum.repos.d/Local.repo

 

[[email protected] ~]# >>yum clean all
[[email protected] ~]# >>yum makecache
[[email protected] ~]# >>yum repolist

 

 

可以看到,這正是yum源伺服器測試的rpm軟體包,大功告成~!

擴充套件

在這裡我們可以使用一個小工具:yumdownloader

### 查詢yumdownloader隸屬於哪個安裝包
[[email protected] ~]# >>yum provides yumdownloader
### 安裝 yum-utils
[[email protected] ~]# >>yum install -y yum-utils

 

 

yumdownloader的用法很簡單:

yumdownloader [options] package1 [package2...]

直接跟.rpm包的名字,就可以下載包到當前目錄,也可以帶選項下載到指定目錄,具體檢視man yumdownloader

這裡我們測試下載kernel*的包:

 

本篇文章來源於 Linux公社網站(www.linuxidc.com) 原文連結:https://www.linuxidc.com/Linux/2016-08/134602.htm