Probleme mit dem Oracle Linux Echtzeit-Schutz
Problem
Unter Oracle Linux 8 und Oracle Linux 9 kann die Kompilierung des Echtzeit-Schutz-Kernelmoduls fehlschlagen, weil die GCC-Standardversion des Systems nicht mit der GCC-Version für die Kompilierung des laufenden Kernels übereinstimmt.
Lösung
Um das Problem zu beheben, ändern Sie die GCC-Standardversion des Systems in die GCC-Version, die für die Kompilierung des laufenden Kernels verwendet wird, indem Sie eine systemd-Dienstüberschreibungsdatei erstellen.
1.Erstellen Sie eine Dienstüberschreibungsdatei und führen Sie den folgenden Befehl als privilegierter Benutzer aus:
sudo systemctl edit efs |
2.Fügen Sie der Datei je nach verwendeter Oracle Linux-Version den folgenden Inhalt hinzu und speichern Sie sie:
Oracle Linux 8
[Service] # Override to use gcc-toolset for kernel module compilation on Oracle Linux 8 ExecStartPre= ExecStartPre=/usr/bin/scl enable gcc-toolset-11 /opt/eset/efs/lib/install_scripts/check_start.sh |
Oracle Linux 9
[Service] # Override to use gcc-toolset for kernel module compilation on Oracle Linux 9 ExecStartPre= ExecStartPre=/usr/bin/scl enable gcc-toolset-14 /opt/eset/efs/lib/install_scripts/check_start.sh |
Alternative, einmalige Lösung
Wenn Sie die GCC-Standardversion nicht dauerhaft ändern wollen, führen Sie je nach verwendeter Oracle Linux-Version den folgenden Befehl als privilegierter Benutzer aus:
Oracle Linux 8
scl enable gcc-toolset-11 /opt/eset/efs/lib/install_scripts/check_start.sh |
Oracle Linux 9
scl enable gcc-toolset-14 /opt/eset/efs/lib/install_scripts/check_start.sh |