配置本地yum源
需要工具軟件UltraISO,MobaXterm
1、規範目錄結構環境,在服務器上創建放置鏡像的文件夾
[root@yum ~]# mkdir /mirror/repo/centos/x86_64/7/packages –p
2、在服務器上安裝本地yum源,為安裝nginx的依賴包等軟件,創建centos7.repo文件
[root@yum yum.repos.d]# vi centos7.repo
配置如下:
[centos7]
name=centos7
baseurl=file:///mirror/repo/centos/x86_64/7/packages/CentOS-7-x86_64-Everything-1908/
enabled=1
gpgcheck=0
[extras]
name=CentOS-$releasever - Extras
baseurl=http://192.168.2.210:88/extras/$basearch/
gpgcheck=1
gpgkey=0
服務器IP地址為192.168.2.210,端口為88.其中标識[centos7]放置基礎鏡像,标識[extras]放置擴展鏡像,$releasever是獲得系統的主版本,這裡可以獲得到的系統主版本是7。
3、UltraISO工具解壓鏡像包
在windows下用下載的iso鏡像,這裡截圖是CentOS-7-x86_64-Everything-1511的iso文件(應該是CentOS-7-x86_64-Everything-1908.iso,我這裡沒有截到圖,嗚嗚,隻能拿這個截圖代替了,因為這個要對應centos7.repo中的baseurl中的路徑),可以根據具體情況在centos的官網下載需要的鏡像。
3.1提取iso内容,UltraISO文件--打開—選擇需要解壓的iso文件
再點擊操作---提取
選擇一個新建立的文件夾,命名為需要提取的文件,選擇是
文件正在提取,會顯示進度,完成比例,
3.2在服務器上建立文件夾
mkdir /mirror/repo/centos/x86_64/7/packages/CentOS-7-x86_64-Everything-1908 –p
用MobaXterm工具的SFTP傳輸解壓文件到CentOS-7-x86_64-Everything-1908目錄中
或者不用建立CentOS-7-x86_64-Everything-1908文件夾,直接傳輸文件夾及内容。
3.3上傳完畢後,在服務器上執行以下命令
[root@yum packages]# yum clean all
[root@yum packages]# yum makecache
此時本地yum倉庫配置完畢,如果提示報錯,可以先把centos7.repo中的
#[extras]
#name=CentOS-$releasever - Extras
#baseurl=http://192.168.2.210:88/extras/$basearch/
#gpgcheck=1
#gpgkey=0
部分用#注釋掉,在執行yum clean all和yum make cache命令,因為我們以後創建擴展倉庫,這裡可能會有影響。
4、安裝搭建yum倉庫工具包并使用
[root@yum ~]# yum install createrepo
createrepo –pdo /mirror/repo//centos/x86_64 /mirror/repo//centos/x86_64 #創建目錄遞歸樣式的索引(這個目錄在浏覽器中不顯示,取而代之的是浏覽器地址包括端口)
-p,--pretty
确認執行命令會生成一個索引文件并定義默認格式
-d –database
創建索引文件相關數據文件信息
-o outputdir
将數據保存到指定目錄中
5、部署yum倉庫地址訪問環境和安裝nginx
5.1安裝nginx依賴包
[root@yum /]# yum -y install gcc pcre-devel openssl-devel
5.2安裝nginx
從nginx的官網下載nginx的安裝包,用tar -zxvf nginx-1.12.2.tar.gz解壓。
進入nginx目錄
執行安裝
[root@yum nginx-1.12.2]# ./configure && make && make install
進入sbin目錄
[root@yum nginx-1.12.2]# cd /usr/local/nginx/sbin/
啟動nginx服務
[root@yum sbin]# ./nginx
5.3驗證,查看nginx服務的啟動
[root@yum sbin]# ps -ef | grep nginx
5.4關閉防火牆
[root@yum sbin]# systemctl status firewalld
5.5關閉selinux
[root@yum sbin]# vi /etc/selinux/config
5.6在浏覽器輸入實驗機的IP地址
192.168.2.210,顯示Welcome to nginx!畫面,安裝成功,如果不顯示,可以重新啟動這台主機。
5.7每次執行nginx,啟動服務,比較繁瑣,把nginx配置為開機自動啟動,并且注冊為系統服務。
5.7.1切換到/lib/systemd/system/目錄,
cd /lib/systemd/system/
5.7.2創建nginx.service文件
vi nginx.service
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usrlocal/nginx/sbin/nginx reload
ExecStop=/usr/local/nginx/sbin/nginx quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
用esc鍵,shift gg保存并退出
執行
5.7.3設置開機自動啟動
[root@localhost system]# systemctl enable nginx.service
6、初始化repodata的索引文件
首次初始化,必須要指定索引位置
createrepo –pdo /mirror/repo/centos/x86_64 /mirror/repo/centos/x86_64/
[root@yum conf]# vi nginx.conf
6.1創建倉庫
建立倉庫的時候,目錄必須存在,内容也上傳完畢,否則會報以下錯誤。
createrepo /mirror/repo/centos/x86_64/7/packages/CentOS-7-x86_64-Everything-1908
如果報錯,重新創建目錄即可。
mkdir /mirror/repo/centos/x86_64/7/packages/CentOS-7-x86_64-Everything-1908
createrepo /mirror/repo/centos/x86_64/7/packages/CentOS-7-x86_64-Everything-1908
6.2更新倉庫
如果以後文件内容有更新,需要更新倉庫,用命令createrepo –update
比如:
createrepo –update /mirror/repo/centos/x86_64/7/packages/CentOS-7-x86_64-Everything-1708
此時在浏覽器中輸入192.168.2.210:88,可以看到如下内容
目前局域網yum源的基礎包完成。
7、用同樣的方法建立擴展包目錄extras和文件,我是放置docker-ce的rpm文件在裡面,注意這個目錄裡主要放置rpm包
其他軟件另外設置目錄和extras為同一級目錄,可以用wget命令進行下載。
此時,/etc/yum.repos.d/下面的centos7.repo配置文件為
8、客戶端配置yum源。
在/etc/yum.repos.d的路徑下建立一個repo文件
vi centos7.repo
内容如下:
[centos7]
name=centos7
baseurl=http://192.168.2.210:88/7/packages/CentOS-7-x86_64-Everything-1908/
enabled=1
gpgcheck=0
[extras]
name=CentOS-$releasever - Extras
baseurl=http://192.168.2.210:88/extras/
gpgcheck=0
再執行yum clean all 和yum makecache
到此局域網yum源配置完成。
9、為了安裝快速,方便,可以在客戶端執行以下腳本,生成repo文件,不用再進行配置。
#!/bin/bash
cd /etc/yum.repos.d/
mkdir repobackup
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/repobackup/
echo "
[centos7]
name=centos7
baseurl=http://192.168.2.210:88/7/packages/CentOS-7-x86_64-Everything-1708/
enabled=1
gpgcheck=0 " > /etc/yum.repos.d/centos7.repo
yum clean all
yum makecache
yum repolist
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!