1. 程式人生 > 其它 >本地yum源

本地yum源

技術標籤:yum

1.基本資訊
在這裡插入圖片描述2.安裝
大體流程:
1.下載阿里雲yum源以及salt的yum源到/etc/yum.repos.d/
2.使用yum-utils命令將xxx.repo中所有需要的包同步到本地
3.使用createrepo命令在本地建立yum源生成元資料
4.配合nginx作為檔案儲存伺服器,使本地yum原始檔可以被訪問
5.編寫repo檔案 並測試

## 1.安裝nginx
# 需要使用nginx作為檔案儲存伺服器  安裝步驟和上面一樣 只需要改下配置
# cat /alidata1/tools/nginx/conf/vhost/{www.outer,repo.inner}
server {
    listen                              80;
    server_name                         11.100.5.251;
    include                             vhost/repo.inner;
}
#### 檔案切割線  #####
proxy_set_header                    Host $http_host;
proxy_next_upstream                 error http_500 http_502 http_503 http_504;
proxy_connect_timeout               30;
proxy_read_timeout                  30;
fastcgi_buffer_size 64k;
fastcgi_buffers 16 64k;
proxy_buffer_size 32k;
proxy_buffers      8 32k

location /repo {
    alias /alidata1/repo/;
    autoindex on;
    if ($request_filename ~* ^.*?\.(txt|doc|pdf|rar|gz|zip|docx|exe|xlsx|ppt|pptx)$){
        add_header Content-Disposition attachment;
    }
    autoindex_exact_size off; # 關閉計算檔案確切大小(單位bytes),只顯示大概大小(單位kb、mb、gb)
    autoindex_localtime on;   # 顯示本機時間而非 GMT 時間
    charset utf-8; # 避免中文亂碼
}


## 2.安裝本地yum源
## (1)安裝依賴  下載阿里雲yum原始檔以及salt的yum原始檔
# yum install -y createrepo yum-utils
# wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
# yum install https://repo.saltstack.com/yum/redhat/salt-repo-2019.2.el7.noarch.rpm

## (2)同步遠端源到本地
# mkdir /alidata1/repo/{CentOS7,CentOS6} -p
# reposync -p /alidata1/repo/CentOS7/

## (3)在本地建立yum源生成元資料
# pwd ; ls
/alidata1/repo/CentOS7
base  epel  extras  salt-2019.2  updates

## 當前目錄下均需要執行createrepo .
# cd base/Packages/ ; createrepo .   
# cd epel/Packages/ ; createrepo . 
# cd extras/Packages/ ; createrepo . 
# cd updates/Packages/ ; createrepo . 
# cd salt-2019.2/ ; createrepo . 

## (4)編寫本地yum原始檔, 將此檔案移動到其他伺服器測試是否可用
# cat CentOS7-local.repo
[base]
name=CentOS-7-Base - mirror.template.com
baseurl=http://11.100.5.251/repo/CentOS7/base/Packages/
enabled=1
gpgcheck=0

[updates]
name=CentOS-7-Updates - mirror.template.com
baseurl=http://11.100.5.251/repo/CentOS7/updates/Packages/
enabled=1
gpgcheck=0

[extras]
name=CentOS-7-Extras - mirrors.template.com
baseurl=http://11.100.5.251/repo/CentOS7/extras/Packages/
enabled=1
gpgcheck=0
 
[epel]
name=CentOS-7-epel - mirrors.template.com
baseurl=http://11.100.5.251/repo/CentOS7/epel/Packages/
failovermethod=priority
enabled=1
gpgcheck=0

[salt]
name=salt - mirrors.template.com
baseurl=http://11.100.5.251/repo/CentOS7/salt-2019.2
enabled=1
gpgcheck=0

3.更新rpm包

# reposync -np /alidata1/repo/CentOS7/
# createrepo --update .      ## 到更新的目錄下執行此命令,更新元資料

4.只下載rpm以及依賴不安裝

## 只是在此處做個記錄   安裝本地yum源沒有使用
# yum install yum-utils -y
# yumdownloader --destdir=/tmp --resolve httpd