文章最后更新时间:2025年06月13日
挂载光盘本地源
添加光盘文件
# 创建挂载目录
[root@controller ~]# mkdir -p /media/centos
# 挂载
[root@controller ~]# mount /dev/cdrom /media/centos/
[root@controller ~]# ll /media/centos/
total 696
-rw-r--r-- 3 root root 14 Oct 30 2020 CentOS_BuildTag
drwxr-xr-x 3 root root 2048 Oct 27 2020 EFI
-rw-rw-r-- 21 root root 227 Aug 30 2017 EULA
-rw-rw-r-- 21 root root 18009 Dec 10 2015 GPL
drwxr-xr-x 3 root root 2048 Oct 27 2020 images
drwxr-xr-x 2 root root 2048 Nov 3 2020 isolinux
drwxr-xr-x 2 root root 2048 Oct 27 2020 LiveOS
drwxr-xr-x 2 root root 673792 Nov 4 2020 Packages
drwxr-xr-x 2 root root 4096 Nov 4 2020 repodata
-rw-rw-r-- 21 root root 1690 Dec 10 2015 RPM-GPG-KEY-CentOS-7
-rw-rw-r-- 21 root root 1690 Dec 10 2015 RPM-GPG-KEY-CentOS-Testing-7
-r--r--r-- 1 root root 2883 Nov 4 2020 TRANS.TBL
# 备份repo文件
[root@controller ~]# mv /etc/yum.repos.d/*.repo /bak/
# 新建repo文件
[root@controller ~]# vim /etc/yum.repos.d/Media.repo
[cdrom]
name=media
baseurl=file:///media/centos
gpgcheck=0
enabled=1
[root@controller ~]# yum clean all
Loaded plugins: fastestmirror
Cleaning repos: cdrom
Cleaning up list of fastest mirrors
Other repos take up 523 M of disk space (use --verbose for details)
[root@controller ~]# yum makecache
Loaded plugins: fastestmirror
Determining fastest mirrors
cdrom | 3.6 kB 00:00:00
(1/4): cdrom/group_gz | 153 kB 00:00:00
(2/4): cdrom/primary_db | 3.3 MB 00:00:00
(3/4): cdrom/other_db | 1.3 MB 00:00:00
(4/4): cdrom/filelists_db | 3.3 MB 00:00:00
Metadata Cache Created
# 查看多少软件包
[root@controller ~]# yum list | wc -l
4134
搭建本地局域网源
源码编译安装Nginx
# 安装依赖包
[root@controller ~]# yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel
# 下载Nginx安装包
[root@controller ~]# cd /usr/local/src/
[root@controller src]# wget https://nginx.org/download/nginx-1.20.2.tar.gz
--2022-12-02 14:51:33-- https://nginx.org/download/nginx-1.20.2.tar.gz
Resolving nginx.org (nginx.org)... 3.125.197.172, 52.58.199.22, 2a05:d014:edb:5704::6, ...
Connecting to nginx.org (nginx.org)|3.125.197.172|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1062124 (1.0M) [application/octet-stream]
Saving to: ‘nginx-1.20.2.tar.gz’
100%[========================================================>] 1,062,124 882KB/s in 1.2s
2022-12-02 14:51:36 (882 KB/s) - ‘nginx-1.20.2.tar.gz’ saved [1062124/1062124]
# 解压编译安装
[root@controller src]# tar zxvf nginx-1.20.2.tar.gz
[root@controller src]# cd nginx-1.20.2
[root@controller nginx-1.20.2]# ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
[root@controller nginx-1.20.2]# make && make install
# 建立快捷方式
[root@controller nginx-1.20.2]# ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx
[root@controller nginx-1.20.2]# nginx -version
nginx version: nginx/1.20.2
# 新建nginx系统用户
[root@controller nginx-1.20.2]# useradd -s /sbin/nologin nginx
# 修改配置文件
[root@controller nginx]# vim /usr/local/nginx/conf/nginx.conf
user nginx;
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
# 主要修改location
location / {
autoindex on;
root html/centos/;
}
# 测试配置文件
[root@controller nginx]# nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
# 开启nginx
[root@controller nginx]# nginx
创建YUM源端
[root@controller nginx]# yum install createrepo* -y
[root@controller nginx]# mkdir /usr/local/nginx/html/centos
[root@controller nginx]# cd /mnt/centos/
[root@controller centos]# cp Packages/* /usr/local/nginx/html/centos/
[root@controller media]# cd /usr/local/nginx/html/
# 使用 Createrepo 创建本地源
[root@controller html]# createrepo centos/
Spawning worker 0 with 2035 pkgs
Spawning worker 1 with 2035 pkgs
Workers Finished
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
[root@controller html]# cd centos/repodata/
[root@controller repodata]# ls
0fb14ce7d89e3053447ac8442fd3472451ea84bda1d5c9d38328193613f0a84b-primary.sqlite.bz2
4a1c8221285db1b9d5361d4567baa883e60ee29c32d8d0a1b7777d7d7761664d-filelists.xml.gz
60aa4673bf5fa63d1a7a640ef407b8e48fe5b3337720d844a29a53fec130d6da-filelists.sqlite.bz2
7d37fe033f19d2c678fd43b307f3f9ac7e6bfb032238a4a330b0229c1f32f1e2-primary.xml.gz
9d6292fa12fd9ca472fafa8c0b348c3e1f139681aa066d41dc53b3563bcd1f53-other.sqlite.bz2
b157d8b012febabf1c72d579b5155b8519a362a64bbd37c40acb22b6cc544ccf-other.xml.gz
repomd.xml
其他主机测试
[root@localhost ~]# ip add
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:57:68:0f brd ff:ff:ff:ff:ff:ff
inet 192.168.139.136/24 brd 192.168.139.255 scope global noprefixroute dynamic ens33
valid_lft 1684sec preferred_lft 1684sec
inet6 fe80::aa12:63d5:a536:90cc/64 scope link noprefixroute
valid_lft forever preferred_lft forever
[root@localhost ~]# rm -rf /etc/yum.repos.d/*.repo
[root@localhost ~]# ls /etc/yum.repos.d/
bak
[root@localhost ~]# vi /etc/yum.repos.d/centos_http.repo
[root@localhost yum.repos.d]# cat centos_http.repo
[nginx_yum]
name=host_nginx
baseurl=http://192.168.139.135/
enabled=1
gpgcheck=0
[updates]
name=host_nginx
baseurl=http://192.168.139.135/
enabled=1
gpgcheck=0
[root@localhost yum.repos.d]# yum makecache
Loaded plugins: fastestmirror
Determining fastest mirrors
nginx_yum | 2.9 kB 00:00:00
updates | 2.9 kB 00:00:00
(1/6): nginx_yum/filelists_db | 3.3 MB 00:00:00
(2/6): nginx_yum/primary_db | 3.2 MB 00:00:00
(3/6): nginx_yum/other_db | 1.3 MB 00:00:00
(4/6): updates/primary_db | 3.2 MB 00:00:00
(5/6): updates/filelists_db | 3.3 MB 00:00:00
(6/6): updates/other_db | 1.3 MB 00:00:00
Metadata Cache Created
[root@localhost yum.repos.d]# yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
repo id repo name status
nginx_yum host_nginx 4,070
updates host_nginx 4,070
repolist: 8,140
YUM 源端软件包扩展
- 把下载的软件包添加至centos目录
- 使用Createrepo命令更新软件包
createrepo --update centos/
同步外网 YUM 源
(1)下载CentOS7 REPO文件并安装reposync工具
[root@controller ~]# curl -O https://mirrors.aliyun.com/repo/Centos-7.repo
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 2523 100 2523 0 0 5931 0 --:--:-- --:--:-- --:--:-- 5936
[root@controller ~]# mv Centos-7.repo /etc/yum.repos.d/centos.repo
yum clean all
yum install yum-utils createrepo –y
yum repolist
(2)通过reposync获取外网YUM源软件包
-r
:指定repolist id(默认获取所有)-p
:指定下载路径
reposync -r base -p /usr/local/nginx/html/centos/
reposync -r updates -p /usr/local/nginx/html/centos/
(3)更新本地YUM仓库
createrepo /usr/local/nginx/html/centos/
文章版权声明:除非注明,否则均为柳三千运维录原创文章,转载或复制请以超链接形式并注明出处。