1. 基本背景
EPICS 软件仓库:192.168.206.234:8888
安装方式:yum
2. 配置跳板机
跳板机功能:借助ssh 隧道服务进行端口转发,使未联网的计算机能够访问软件仓库。
将未联网的计算机与一台申请了无线校园网的笔记本电脑进行有线连接,同时笔记本无线
连接校园网(可以 ping 通 206.234 服务器),在笔记本上开启 ssh 服务:
下载 ssh 服务端;
管理员身份运行 Windows PowerShell,输入命令
net start sshd;
3. 配置未联网计算机
3.1 设置端口转发
未联网计算机的IP临时设置为 192.168.200.101。将笔记本的有线网卡的 IP 地址改为 192.168.200.200,此时未联网计算机与笔记本可以相互 ping 通。
在未联网计算机上输入命令开启端口转发:
ssh -L 8888:192.168.206.234:8888 dxw@192.168.200.200
# 192.168.200.200(笔记本)作为跳板机,
# 此时访问未联网计算机的 localhost:8888 即相当于访问 192.168.206.234:8888
彻底搞懂SSH端口转发命令
SSH开启(win10)
Windows 10 开启ssh服务
3.2 修改yum源配置
3.2.1 CentOS 7操作系统
- 更改/etc/yum.repo.d/CentOS-Base.repo 文件:
[base]
baseurl=http://localhost:8888/centos7
# 设置 base 的镜像仓库地址,
# 借助端口转发,实际上访问的是 206.234 服务器的相应端口路径
[updates]
…
enabled=0 # 其余几个模块都禁止使能
…
- 添加 /etc/yum.repo.d/ihep.repo 文件:
[ihep]
name=Packages provided by IHEP for CentOS 7
baseurl=http://localhost:8888/rpm
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-IHEP-7
- yum 安装 EPICS 环境:
sudo yum install epics-base epics-medm epics-synApps_useful
3.2.2 Rocky Linux 8操作系统
- 更改Rocky-AppStream.repo和Rocky-BaseOS.repo中yum源地址:
# 注释掉原yum源的地址
sudo sed -i 's|^mirrorlist=|#mirrorlist=|g'\
-i 's|^baseurl=|#baseurl=|g' /etc/yum.repos.d/Rocky-[AB]*.repo
在Rocky-AppStream.repo中添加:
baseurl=http://localhost:8888/rocky8/AppStream
在Rocky-BaseOS.repo中添加:
baseurl=http://localhost:8888/rocky8/BaseOS
注意:
AppStream和BaseOS仓库用于提供系统基本软件包。
http://localhost:8888/rocky8 是Rocky Linux 8系统镜像的路径,
baseurl应设置到repodata文件夹的上一层,因为yum安装软件包的信息会从 $baseurl/repodata/repomd.xml
中获取。
若baseurl设错,yum安装时会报错。
Rocky Linux更换yum源为国内源
搭建本地yum仓库:repomd.xml简单来说就是存放本地仓库rpm包的索引信息,我们的yum源就是根据这个文件来知道具体包的存放位置的
ROCKY 8.4搭建本地yum源及配置局域网公用
- 关闭除AppStream和BaseOS之外的其他软件仓库
sudo sed -i 's|^enabled=1|enabled=0|g' /etc/yum.repos.d/Rocky-[^AB]*.repo
- 添加 /etc/yum.repo.d/ihep.repo 文件:
[ihep]
name=Packages provided by IHEP for Rocky Linux 8
baseurl=http://localhost:8888/rpm8
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-IHEP-8
- yum 安装 EPICS 环境:
sudo yum install epics-base epics-medm epics-synApps_useful