SUSE 15 SP3 或 12 SP5 均支持 Oracle 19c RAC,但必须严格匹配认证内核、安装 oracleasm、配置 /dev/shm(≥4G且mode=1777)、禁用 SELinux 替代项 apparmor 干扰、确保 udev 规则生效及 OCR/voting disk 属主为 grid:asmadmin,任一缺失将导致 runcluvfy.sh 或 crsctl start crs 失败。

直接说结论:SUSE Linux Enterprise Server(SLES)15 SP3 或 12 SP5 均支持 Oracle 19c RAC,但必须严格匹配内核版本、系统包、ASM磁盘权限和网络配置;不满足任一条件,runcluvfy.sh 阶段就会失败,且错误提示往往模糊——比如报 PRVF-0401: Failed to check for the existence of file "/usr/lib64/libcap.so",实际根源可能是 libcap-devel 缺失或 udev 规则未生效。
检查 SLES 内核与 Oracle 19c 的兼容性
Oracle 官方只认证特定内核版本。SLES 15 SP3 必须使用内核 5.3.18-150300.59.155-default 或更高(非任意 5.3+),SLES 12 SP5 则需 4.12.14-122.227-default 及以上。用 uname -r 查看后,务必对照 MOS 文档 ID 1304727.2 确认是否在白名单中。
- 不要依赖
zypper update后的最新内核——SLES 的“latest”可能未被 Oracle 认证 - 若内核不匹配,
gridSetup.sh会卡在“Validating Node Connectivity”,不报错但无日志进展 - SLES 15 SP3 默认启用
systemd-boot,需确认/boot/grub2下有grub.cfg(Oracle 安装脚本部分逻辑仍依赖 GRUB2 路径)
配置 ASM 共享磁盘时绕过 udev 的坑
SLES 不像 RHEL 那样默认启用 udev 规则持久化,而 Oracle 19c RAC 强制要求 ASM 磁盘设备名稳定(如 /dev/asm-disk1)。直接用 scsi_id + udev 规则容易失效,推荐改用 lsscsi + asmlib 替代方案:
Linux系统管理专家,覆盖12大模块:用户权限、SSH、存储、网络、systemd、防火墙、日志监控、备份恢复、TLS证书、Ansible、容器、IaC。提供配置、验证、加固、监控、备份、自动化、故障排查、回滚闭环。关键词:useradd、sudo、sshd_config、chmod、SEL...
- 安装
oracleasm包:zypper install oracleasm-kmp-default oracleasmlib(注意 kmp 包必须与当前运行内核完全一致) - 初始化时指定
--user grid --group asmadmin,否则oracleasm scandisks返回空 -
oracleasm listdisks必须输出非空结果,且每个盘的 major:minor 与ls -l /dev/oracleasm/disks/下设备节点一致 - 若用 multipath 设备,
mpathconf --enable后必须重启multipathd,否则asmca创建磁盘组时提示 “no disks available”
静默安装时响应文件的关键字段差异
SLES 上的 responseFile 和 RHEL 的关键区别在用户权限模型和 SELinux 替代机制。SLES 没有 SELinux,但启用了 apparmor,所以响应文件中不能设 oracle.install.db.config.starterdb.securityGroups=,否则 runInstaller 解析失败。
-
oracle.install.grid.setupUser必须为grid,且该用户需在/etc/passwd中 shell 为/bin/bash(SLES 默认可能为/bin/false) -
oracle.install.asm.SYSASMPassword和oracle.install.asm.monitorPassword必须不同,SLES 的asmca对密码复杂度校验更严,含数字+大小写字母+特殊字符缺一不可 -
INVENTORY_LOCATION推荐设为/u01/app/oraInventory,SLES 的/opt默认挂载选项含noexec,会导致oraInst.loc读取失败 - SCAN 名称必须能被所有节点的
/etc/hosts解析(不能仅靠 DNS),否则cluvfy stage -post hwos报PRVF-4657
验证集群状态时重点关注 OCR 和 voting disk 权限
安装完成后,crsctl check cluster -all 显示正常,不代表 OCR 已真正写入。SLES 的 udev 权限规则若未正确加载,OCR 磁盘会被识别为 root:root,导致后续 crsctl start crs 失败并反复重启。
- 用
ls -l /dev/oracleasm/disks/OCR_VOTE确认属主是grid:asmadmin - 执行
ocrcheck -config,输出中 “Device/File Name” 必须是 ASM 磁盘别名(如+OCR_VOTE),而非原始路径(如/dev/sdb1) - 若
crsctl query css votedisk显示 “no voting files available”,说明 ASM 实例未真正挂载 OCR_VOTE 磁盘组,需检查srvctl status asm和asmcmd lsdg - SLES 15 SP3 的
systemd服务依赖顺序较严格,oracleasm服务必须在ohasd之前启动,否则crsctl start crs直接超时
最常被忽略的是:SLES 的 /dev/shm 默认挂载为 tmpfs,但 Oracle 19c RAC 要求其 size ≥ 4G 且 mode=1777。仅执行 mount -o remount,size=4G /dev/shm 不够,必须写入 /etc/fstab 并确保 systemd-tmpfiles 不覆盖它——否则重启后 CRS 启动失败,报错 ORA-27058: unable to create directory。

















