7장. 업그레이드 후 작업 수행

RHEL 8로 인플레이스 업그레이드 후 다음 주요 작업이 권장됩니다.

절차

업그레이드를 수행한 후 다음 작업을 완료합니다.

  1. snactor 패키지를 포함하여 /etc/dnf/dnf.conf 구성 파일의 exclude 목록에서 나머지 Leapp 패키지를 제거합니다. 인플레이스 업그레이드 중에 Leapp 유틸리티를 사용하여 설치된 Leapp 패키지가 자동으로 제외 목록에 추가되어 중요한 파일이 제거되거나 업데이트되지 않도록 합니다. 인플레이스 업그레이드 후 시스템에서 제거하기 전에 이 Leapp 패키지를 제외 목록에서 제거해야 합니다.

    • 제외 목록에서 패키지를 수동으로 제거하려면 /etc/dnf/dnf.conf 구성 파일을 편집하고 exclude 목록에서 원하는 Leapp 패키지를 제거합니다.
    • exclude 목록에서 모든 패키지를 제거하려면 다음을 수행합니다.

      # yum config-manager --save --setopt exclude=''
  2. 나머지 Leapp 패키지가 포함된 나머지 RHEL 7 패키지를 제거합니다.

    1. 이전 커널 버전을 확인합니다.

      # cd /lib/modules && ls -d *.el7*
    2. 이전 커널에서 약한 모듈을 제거합니다. 이전 커널이 여러 개 있는 경우 각 커널에 대해 다음 단계를 반복합니다.

      # [ -x /usr/sbin/weak-modules ] && /usr/sbin/weak-modules --remove-kernel <version>

      & lt;version& gt;을 이전 단계에서 결정된 커널 버전으로 바꿉니다. 예를 들면 다음과 같습니다.

      #  [ -x /usr/sbin/weak-modules ] && /usr/sbin/weak-modules --remove-kernel 3.10.0-1160.25.1.el7.x86_64
      참고

      커널 패키지가 이전에 제거된 경우 생성되는 다음과 같은 오류 메시지를 무시합니다.

      /usr/sbin/weak-modules: line 1081: cd: /lib/modules/<version>/weak-updates: No such file or directory
    3. 부트 로더 항목에서 이전 커널을 제거합니다. 오래된 커널이 여러 개 있는 경우 각 커널에 대해 이 단계를 반복합니다.

      # /bin/kernel-install remove <version> /lib/modules/<version>/vmlinuz

      version을 이전 단계에서 확인한 커널 버전으로 교체합니다. 예를 들면 다음과 같습니다.

      # /bin/kernel-install remove 3.10.0-1160.25.1.el7.x86_64 /lib/modules/3.10.0-1160.25.1.el7.x86_64/vmlinuz
    4. 나머지 RHEL 7 패키지를 찾습니다.

      # rpm -qa | grep -e '\.el[67]' | grep -vE '^(gpg-pubkey|libmodulemd|katello-ca-consumer)' | sort
    5. RHEL 8 시스템에서 이전 커널 패키지를 포함한 나머지 RHEL 7 패키지 및 kernel-workaround 패키지를 제거합니다.
    6. 나머지 Leapp 종속성 패키지를 제거합니다.

      # yum remove leapp-deps-el8 leapp-repository-deps-el8
    7. 나머지 빈 디렉토리를 제거하십시오.

      # rm -r /lib/modules/*el7*
  3. 선택 사항: 시스템에서 나머지 업그레이드 관련 데이터를 모두 제거합니다.

    # rm -rf /var/log/leapp /root/tmp_leapp_py3 /var/lib/leapp
    중요

    이 데이터를 제거하면 업그레이드 후 문제를 조사하고 해결하는 Red Hat 지원 기능이 제한될 수 있습니다.

  4. RHEL 8에 패키지를 설치하거나 사용할 수 없는 YUM 리포지토리를 비활성화합니다. RHSM에서 관리하는 리포지토리는 자동으로 처리됩니다. 이러한 리포지토리를 비활성화하려면 다음을 수행합니다.

    # yum config-manager --set-disabled <repository_id>

    &lt ;repository_id&gt;를 리포지토리 ID로 바꿉니다.

  5. 향후 커널이 올바른 매개변수로 부팅되도록 현재 커널 명령줄 인수를 새 기본값으로 설정합니다.

    • IBM Z 아키텍처의 경우:

      # BOOT_OPTIONS="$(tr -s "$IFS" '\n' </proc/cmdline | grep -ve '^BOOT_IMAGE=' -e '^initrd=' | tr '\n' ' ')"
      # echo $BOOT_OPTIONS > /etc/kernel/cmdline
    • 기타 아키텍처의 경우:

      # BOOT_OPTIONS="$(tr -s "$IFS" '\n' </proc/cmdline | grep -ve '^BOOT_IMAGE=' -e '^initrd=' | tr '\n' ' ')"
      # grub2-editenv - set "kernelopts=$BOOT_OPTIONS"
  6. 이전 복구 커널 및 초기 RAM 디스크를 현재 커널 및 디스크로 교체하십시오.

    1. 기존 복구 커널 및 초기 RAM 디스크를 제거합니다.

      # rm /boot/vmlinuz-*rescue* /boot/initramfs-*rescue* 
    2. rescue 커널 및 관련 초기 RAM 디스크를 다시 설치합니다.

      # /usr/lib/kernel/install.d/51-dracut-rescue.install add "$(uname -r)" /boot "/boot/vmlinuz-$(uname -r)"
      참고

      시스템의 커널 패키지에 실시간 시스템과 같은 이름이 다른 경우 kernel-core 를 올바른 패키지 이름으로 교체합니다.

    3. 시스템이 IBM Z 아키텍처에 있는 경우 zipl 부트로더를 업데이트합니다.

      # zipl
  7. 보안 정책을 다시 평가 및 다시 적용합니다. 특히 SELinux 모드를 강제로 변경합니다. 자세한 내용은 보안 정책 적용을 참조하십시오.

검증 단계

  1. 이전 커널이 부트로더 항목에서 제거되었는지 확인합니다.

    # grubby --info=ALL | grep "\.el7" || echo "Old kernels are not present in the bootloader."
  2. 이전에 제거된 복구 커널 및 복구 초기 RAM 디스크 파일이 현재 커널에 대해 생성되었는지 확인합니다.

    # ls /boot/vmlinuz-*rescue* /boot/initramfs-*rescue* 
    # lsinitrd /boot/initramfs-*rescue*.img | grep -qm1 "$(uname -r)/kernel/" && echo "OK" || echo "FAIL"
  3. 복구 부팅 항목이 기존 복구 파일을 참조하는지 확인합니다. grubby 출력을 참조하십시오.

    # grubby --info $(ls /boot/vmlinuz-*rescue*)