Oracle 19c安装脚本拒绝麒麟系统,因其硬检查发行版标识,仅认可RHEL/CentOS等白名单;需临时修改/etc/os-release(ID="rhel"、VERSION_ID="8.6")并删除/etc/redhat-release以绕过检测,安装完成后必须立即还原,否则将导致yum/dnf异常及合规性问题。
为什么 Oracle 19c 安装脚本会拒绝麒麟系统
oracle 官方安装程序(runinstaller)在启动时会硬检查 /etc/redhat-release 或 /etc/os-release 中的发行版标识,只认 red hat、centos、oracle linux 等白名单。银河麒麟 v10 虽然内核和包管理器(dnf)与 rhel 8 高度兼容,但 id="kylin" 和 pretty_name="kylin linux advanced server" 会被直接判定为“不支持”,报错类似:[fatal] [ins-32037] the operating system does not meet minimum requirements。
修改 /etc/os-release 是最直接有效的绕过方式
不是伪造整个系统,而是仅让 Oracle 安装器“看”到它想看到的内容。操作前确保已备份原始文件:
cp /etc/os-release /etc/os-release.bak
然后用以下内容覆盖(以 Kylin V10 SP3 为例):
NAME="Red Hat Enterprise Linux" VERSION="8.6 (Ootpa)" ID="rhel" ID_LIKE="fedora" VERSION_ID="8.6" PLATFORM_ID="platform:el8" PRETTY_NAME="Red Hat Enterprise Linux 8.6 (Ootpa)" ANSI_COLOR="0;31" CPE_NAME="cpe:/o:redhat:enterprise_linux:8::baseos" HOME_URL="https://www.redhat.com/" BUG_REPORT_URL="https://bugzilla.redhat.com/" REDHAT_BUGZILLA_PRODUCT="Red Hat Enterprise Linux 8" REDHAT_BUGZILLA_PRODUCT_VERSION="8.6" REDHAT_SUPPORT_PRODUCT="Red Hat Enterprise Linux" REDHAT_SUPPORT_PRODUCT_VERSION="8.6"
注意要点:
-
ID="rhel"必须存在且值为rhel(不能是centos或ol,Oracle 19c 对 ID 匹配较严格) -
VERSION_ID建议设为8.6或8.8,避免用8.0—— 某些补丁版本的runInstaller会校验该字段是否 ≥8.4 - 改完后无需重启,但必须退出当前 shell 重新登录,使环境变量(如
LSB_RELEASE)刷新
改完仍报 INS-32037?检查是否被 /etc/redhat-release 干扰
部分麒麟镜像会同时存在 /etc/redhat-release(内容可能是空或 CentOS Linux 7),而 Oracle 安装器优先读取此文件。如果存在,务必删除或重命名:
rm -f /etc/redhat-release
或者强制清空并写入兼容内容(仅当必须保留该文件时):
echo "Red Hat Enterprise Linux Server release 8.6 (Ootpa)" > /etc/redhat-release
常见错误场景:
- 只改了
/etc/os-release,但忘了删/etc/redhat-release→ 安装器仍读旧文件报错 - 改了
ID="centos"→ Oracle 19c 的 installer 不识别该 ID,仍拒绝 - 未重新登录 shell →
runInstaller启动时读取的是旧的环境上下文,检测失效
安装完成后必须还原系统标识
数据库软件安装成功后,立即还原原始 /etc/os-release 和清理掉的 /etc/redhat-release,否则会影响后续系统更新、安全扫描工具识别,甚至某些国产中间件的合规性检查。还原命令:
cp /etc/os-release.bak /etc/os-release rm -f /etc/redhat-release
这个步骤常被忽略:很多人以为“装完就完了”,结果几个月后系统打补丁失败,排查才发现发行版标识被长期篡改,导致 yum/dnf 元数据混乱。真正的关键不在“怎么骗过安装器”,而在“骗完立刻还回去”。











