系统环境
系统发行版:V10 SP3 2403/(Halberd)-x86_64
内核版本:4.19.90-89.11.v2401.ky10.x86_64
查看系统版本
# nkvers
############## Kylin Linux Version #################
Release:
Kylin Linux Advanced Server release V10 (Halberd)
Kernel:
4.19.90-89.11.v2401.ky10.x86_64
Build:
Kylin Linux Advanced Server
release V10 SP3 2403/(Halberd)-x86_64-Build20.01/20240426
#################################################
一、制作离线源(服务器能联网)
1. 修改默认的源文件
在系统初始化时,/etc/yum.repos.d 目录下默认有一个源文件 kylin_x86_64.repo ,这里需要修改文件,让服务器从官方源下载我们需要的安装包,用于制作离线源。
# 进入源文件目录
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# pwd
/etc/yum.repos.d
# 当前系统是 x86_64 架构的,地址:https://update.cs2c.com.cn/NS/V10/V10SP3-2403/os/adv/lic/
# 写入源文件配置如下:
cat >/etc/yum.repos.d/kylin_x86_64.repo <<EOF
[ks10-adv-os]
name = Kylin Linux Advanced Server 10 - Os
baseurl = https://update.cs2c.com.cn/NS/V10/V10SP3-2403/os/adv/lic/base/x86_64/
gpgcheck = 0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-kylin
enabled = 1
[ks10-adv-updates]
name = Kylin Linux Advanced Server 10 - Updates
baseurl = https://update.cs2c.com.cn/NS/V10/V10SP3-2403/os/adv/lic/updates/x86_64/
gpgcheck = 0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-kylin
enabled = 1
[ks10-adv-addons]
name = Kylin Linux Advanced Server 10 - Addons
baseurl = https://update.cs2c.com.cn/NS/V10/V10SP3-2403/os/adv/lic/addons/x86_64/
gpgcheck = 1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-kylin
enabled = 0
EOF
2. 刷新缓存
# 清理 DNF 的所有缓存数据
dnf clean all
# 主动更新所有启用仓库的元数据缓存(repodata)
dnf makecache
# 显示当前系统启用的所有仓库列表
dnf repolist
操作成功,应显示如下内容:
[root@localhost ~]# dnf repolist
repo id repo name
ks10-adv-os Kylin Linux Advanced Server 10 - Os
ks10-adv-updates Kylin Linux Advanced Server 10 - Updates
3. 安装必要的软件包
# 更新系统包缓存
sudo yum update -y
# 安装 createrepo 和 httpd(可选,用于本地服务测试)
sudo yum install createrepo httpd -y
# 验证安装
createrepo --version
# 下载离线源插件(用于下载离线源)
# dnf install -y dnf-plugins-core
4. 创建离线源目录
mkdir -p /opt/offline
# 修改权限
chmod 777 -R /opt/offline/
后面所有的安装包都会放到此目录,及子目录下。
5. 下载安装包
下载需要安装的应用的离线安装包,用于制作离线源给其他无法联网的服务器使用。
这里下载一些常用的应用安装包,如下:
dnf download --resolve --alldeps vim --destdir=/opt/offline
dnf download --resolve --alldeps curl --destdir=/opt/offline
dnf download --resolve --alldeps zip --destdir=/opt/offline
dnf download --resolve --alldeps unzip --destdir=/opt/offline
dnf download --resolve --alldeps wget --destdir=/opt/offline
dnf download --resolve --alldeps net-tools --destdir=/opt/offline
dnf download --resolve --alldeps openssh-server --destdir=/opt/offline
dnf download --resolve --alldeps tree --destdir=/opt/offline
dnf download --resolve --alldeps ntp --destdir=/opt/offline
dnf download --resolve --alldeps nfs-utils rpcbind --destdir=/opt/offline
dnf download --resolve --alldeps dos2unix --destdir=/opt/offline
dnf download --resolve --alldeps vsftpd --destdir=/opt/offline
dnf download --resolve --alldeps createrepo_c --destdir=/opt/offline
dnf download --resolve --alldeps httpd --destdir=/opt/offline
dnf download --resolve --alldeps ffmpeg --destdir=/opt/offline
6. 生成离线源
# 进入离线源安装目录
cd /opt/offline
# 执行命令,生成离线源
createrepo .
#如果你后续往目录里新增 RPM 包,只需要执行:
createrepo --update /opt/offline
7. 离线源打包
# 打包
tar -czvf /opt/kylin-offline-repo.tar.gz -C /opt offline
# 查看打包后的离线源文件
[root@localhost /]# ll /opt/
-rw-r--r-- 1 root root 213864300 12月 11 16:38 kylin-offline-repo.tar.gz
至此,离线源就制作完成了,可以使用 scp 、rsync 命令发送到没有联网的服务器上,用于离线安装
二、使用离线源安装服务器
在无网络连接的麒麟服务器上,配置和使用离线源,系统的版本和系统架构需相同。
1. 备份旧源
mkdir -p /etc/yum.repos.d/bak
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak/
2. 上传离线源
将打包好的离线源文件 kylin-offline-repo.tar.gz 放到 /opt 目录下
# 解压离线源
tar -zxvf /opt/kylin-offline-repo.tar.gz -C /opt/
# 查看解压后的源文件
[root@localhost ~]# cd /opt/
[root@localhost opt]# ll
-rw-r--r-- 1 root root 213864300 12月 11 16:38 kylin-offline-repo.tar.gz
drwxrwxrwx 3 root root 24576 12月 11 16:34 offline
3. 配置系统源文件
cat >/etc/yum.repos.d/local.repo <<EOF
[local-yum]
name=Kylin Local Repository
baseurl=file:///opt/offline
enabled=1
gpgcheck=0
EOF
4. 刷新缓存,测试离线源
刷新缓存
# 清理 DNF 的所有缓存数据
dnf clean all
# 主动更新所有启用仓库的元数据缓存(repodata)
dnf makecache
# 显示当前系统启用的所有仓库列表
dnf repolist
操作成功,应显示如下内容:
[root@localhost opt]# dnf repolist
repo id repo name
local-yum Kylin Local Repository
测试离线源
dnf install -y wget net-tools dos2unix ntp
三、离线安装Docker、Docker-Compose
Docker 和 Docker-Compose 都可以使用二进制包的形式离线安装
1. 下载Docker二进制包
# 创建必要的文件夹
mkdir -p /opt/software
chmod 777 -R /opt/software/
# 下载Docker二进制包
wget https://download.docker.com/linux/static/stable/x86_64/docker-28.5.2.tgz
2. 安装Docker
# 解压Docker二进制包
tar -zxvf docker-28.5.2.tgz -C /opt/software/
# 移动二进制包到 /usr/bin 目录下
mv /opt/software/docker/* /usr/bin/
编辑 docker.service
cat >/usr/lib/systemd/system/docker.service <<EOF
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target
EOF
3. 配置Docker
# 1. 创建文件夹
mkdir -p /etc/docker /mnt/sdb
# 2. 写入daemon.json 配置
cat >/etc/docker/daemon.json <<EOF
{
"log-driver": "json-file",
"log-opts": {
"max-size": "100m",
"max-file": "10"
},
"data-root":"/mnt/sdb/docker",
"exec-opts": ["native.cgroupdriver=systemd"]
}
EOF
4. 启动Docker
systemctl daemon-reload
systemctl restart docker
测试
docker info
5. 安装 Docker-Compose
# 下载二进制包
wget https://github.com/docker/compose/releases/download/v2.39.2/docker-compose-linux-x86_64
# 放到 /usr/local/bin/ 目录下
mv docker-compose-linux-x86_64 /usr/local/bin/docker-compose
# 授权
chmod +x /usr/local/bin/docker-compose
# 查看版本
docker-compose --version
参考链接
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 george_95@126.com