中科方德(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 及其依赖

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

相关推荐
晚风吹长发7 小时前
Docker基础——Docker Network(网络详解)
linux·运维·网络·ubuntu·docker·容器
LedgerNinja9 小时前
WEEX API 自动化交易实践:下单、撤单、订单查询与状态闭环
运维·自动化
执笔画流年呀9 小时前
Linux搭建Java项目部署环境
java·linux·运维
Dory_Youth10 小时前
联想笔记本电脑失灵
运维·笔记·电脑
W.W.H.10 小时前
嵌入式 Linux外接USB/WIFI模块兼容5G频段实战
linux·运维·5g·wifi
运维大师10 小时前
【K8S 运维实战】24-资源优化HPA与VPA
运维·kubernetes·github
GlobalHRTalk10 小时前
埃及名义雇主EOR业务概述与市场发展优势分析
大数据·运维·人工智能
瞬间&永恒~11 小时前
【MySQL】 主从复制多拓扑搭建实验
运维·数据库·mysql·云原生
星野爱89512 小时前
远程控制哪家安全性更高?ToDesk、UU远程、向日葵隐私屏深度测评!
linux·运维·网络
ALINX技术博客13 小时前
【黑金云课堂】FPGA技术教程Linux开发:系统定制
linux·运维·fpga开发