Problemy z ochroną w czasie rzeczywistym Oracle Linux
Problem
Na Oracle Linux 8 i Oracle Linux 9 kompilacja modułu jądra ochrony w czasie rzeczywistym może ulec awarii, ponieważ domyślna wersja GCC nie odpowiada wersji GCC użytej do kompilacji działającego jądra.
Rozwiązanie
Aby rozwiązać ten problem, zmień domyślną wersję systemową GCC na wersję GCC używaną do kompilacji działającego jądra, tworząc plik nadpisania usługi systemd.
1.Utwórz plik nadpisania usługi, wykonaj następujące polecenie jako użytkownik uprzywilejowany:
sudo systemctl edit efs |
2.Dodaj do pliku następujące treści na podstawie wersji Oracle Linux i zapisz plik:
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 |
Alternatywne rozwiązanie jednorazowe
Jeśli nie chcesz trwale zmieniać domyślnego GCC, uruchom następujące polecenie jako użytkownik uprzywilejowany, w zależności od wersji Oracle Linux:
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 |