中科方德(NFSChina)离线安装 RPM 包

中科方德(NFSChina)离线安装 RPM 包

系统背景

中科方德是基于 RHEL/CentOS 的国产 Linux 发行版,底层包管理兼容 RPM + yum/dnf,离线安装方法与 RHEL 基本一致,但有几个注意点。


一、查看系统版本

先确认具体版本,因为不同版本的包依赖链不同:

bash 复制代码
# 查看系统信息
cat /etc/os-release
cat /etc/redhat-release       # 兼容命令
uname -r                      # 内核版本
arch                          # 架构(x86_64 / aarch64)

二、基本 RPM 安装

bash 复制代码
# 安装
rpm -ivh package.rpm

# 升级
rpm -Uvh package.rpm

# 批量安装(同目录下所有 rpm)
rpm -ivh *.rpm

# 强制安装(慎用)
rpm -ivh --force --nodeps package.rpm

三、推荐方式:本地 Yum 源(自动解依赖)

步骤 1:准备 RPM 包

联网的同版本方德系统上下载包及依赖:

bash 复制代码
# 使用 yumdownloader(需先装 yum-utils)
yum install -y yum-utils
yumdownloader --resolve --destdir=/tmp/rpms/ package-name

# 或者用 repotrack(依赖更完整)
repotrack -p /tmp/rpms/ package-name

# 或者只下载不安装
yum install --downloadonly --downloaddir=/tmp/rpms/ package-name

⚠️ 关键 :下载依赖的机器必须与目标机器同版本同架构,否则依赖版本可能不匹配。

步骤 2:拷贝到离线服务器

bash 复制代码
# 用 U 盘、内网传输等方式,将 /tmp/rpms/ 拷到离线服务器
# 假设放到 /opt/local-repo/
mkdir -p /opt/local-repo

步骤 3:创建本地仓库

bash 复制代码
# 安装 createrepo(如果没有,也需要离线带过来)
rpm -ivh createrepo-*.rpm

# 生成仓库元数据
createrepo /opt/local-repo

步骤 4:配置 repo 文件

bash 复制代码
cat > /etc/yum.repos.d/local.repo << 'EOF'
[local]
name=Local RPM Repository
baseurl=file:///opt/local-repo
enabled=1
gpgcheck=0
EOF

步骤 5:安装

bash 复制代码
yum clean all
yum makecache
yum install package-name

四、方德系统特殊注意点

1. 方德可能用 dnf 替代 yum

较新版本的方德(基于 RHEL 8+)默认使用 dnf

bash 复制代码
# 检查是否有 dnf
which dnf

# 如果有,上述 yum 命令替换为 dnf
dnf install -y dnf-utils
dnf download --resolve --destdir=/tmp/rpms/ package-name

# 本地源安装
dnf clean all
dnf makecache
dnf install package-name

2. 方德自有源可能不可用

方德默认的软件源可能需要授权或内网才能访问,离线环境下确认禁用不可用的源:

bash 复制代码
# 查看当前源
yum repolist
# 或
dnf repolist

# 临时禁用所有其他源,只用本地源
yum install --disablerepo="*" --enablerepo="local" package-name

3. 国产化环境架构注意

方德常部署在国产 CPU 上,注意架构匹配:

CPU 架构 RPM 后缀
鲲鹏 aarch64 .aarch64.rpm
飞腾 aarch64 .aarch64.rpm
海光 x86_64 .x86_64.rpm
兆芯 x86_64 .x86_64.rpm
龙芯 loongarch64 .loongarch64.rpm
bash 复制代码
# 确认架构后下载对应包
arch
# x86_64 → 下载 .x86_64.rpm
# aarch64 → 下载 .aarch64.rpm

4. SELinux 可能阻止安装

bash 复制代码
# 查看 SELinux 状态
getenforce

# 临时关闭(安装完成后建议重新开启)
setenforce 0

# 永久关闭(需重启)
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

五、完整离线安装流程(速查)

复制代码
联网同版本机器                          离线目标机器
─────────────                          ────────────
1. yumdownloader --resolve             4. mkdir /opt/local-repo
   --destdir=/tmp/rpms/ xxx               ↓ 拷贝文件
2. 打包 /tmp/rpms/ ───────────────→   5. createrepo /opt/local-repo
3. U盘/SCP传输                          6. 配置 /etc/yum.repos.d/local.repo
                                        7. yum clean all && yum makecache
                                        8. yum install xxx

六、常见问题排查

问题 原因 解决
Failed dependencies 缺依赖包 yumdownloader --resolve 补全依赖
conflicts with file 文件冲突 rpm -ivh --force 或先卸载旧版
Header V3 RSA/SHA256 Signature GPG 签名校验失败 rpm -ivh --nosignature 或 repo 中设 gpgcheck=0
package is already installed 已装过 rpm -Uvh 升级 或 rpm -e 卸载后重装
createrepo: command not found 没装 createrepo 先离线装 createrepo 及其依赖

你目前是要在方德上装什么具体的包?告诉我包名和系统架构,我可以帮你查完整的依赖链。

相关推荐
Splashtop高性能远程控制软件2 小时前
聊天工具与专业远程支持软件:企业 IT 远程支持工具选型的五个评估维度
运维·远程工作·splashtop
网络小白不怕黑3 小时前
10.邮件服务器搭建并脚本实现监控httpd状态
linux·运维·服务器
TTBIGDATA3 小时前
【Ambari Plus】15.Livy 安装
大数据·运维·hadoop·ambari·hdp·cdh·bigtop
java_logo4 小时前
5 分钟共享打印机:用 Docker 一键部署 CUPS
运维·docker·容器·cups·网络打印机·共享打印机·docker部署cups
Macbethad4 小时前
基于TwinCAT的半导体刻蚀设备SCADA管理程序技术方案
运维·网络·数据库
刘马想放假5 小时前
生成树协议 STP、RSTP、MSTP 分析:二层环网如何既冗余又不环路
运维·网络协议
zhz52145 小时前
Nginx + OpenSSL 自签名证书配置:优劣总结
运维·nginx
jsons15 小时前
rocky8内网离线批量补丁(你之前搭建的架构,多台服务器首选,无订阅)
linux·运维·服务器
Bomangedd5 小时前
NSK RA25BN 滚子直线导轨技术详解
运维·服务器·经验分享·规格说明书
2301_780303905 小时前
DevSecOps建设之自动化集成与部署 Jenkins教程和使用案例
运维·自动化·jenkins