1.8. 시스템 부팅 시 커널 모듈이 자동으로 로드되지 않도록 방지


다음 절차에서는 부팅 프로세스 중에 자동으로 로드되지 않도록 커널 모듈을 거부 목록에 추가하는 방법을 설명합니다.

사전 요구 사항

  • 루트 권한.
  • kmod 패키지가 설치되어 있습니다.
  • 거부 목록에 있는 커널 모듈이 현재 시스템 구성에 필요하지 않은지 확인합니다.

절차

  1. 거부 목록에 배치할 커널 모듈을 선택합니다.

    $ lsmod
    
    Module                  Size  Used by
    fuse                  126976  3
    xt_CHECKSUM            16384  1
    ipt_MASQUERADE         16384  1
    uinput                 20480  1
    xt_conntrack           16384  1
    …​

    lsmod 명령은 현재 실행 중인 커널에 로드된 모듈 목록을 표시합니다.

    • 또는 잠재적으로 로드되지 않도록 하려는 언로드되지 않은 커널 모듈을 식별합니다.

      모든 커널 모듈은 /lib/modules/<KERNEL_VERSION>/kernel/<SUBSYSTEM>/ 디렉터리에 있습니다.

  2. 거부 목록에 대한 구성 파일을 생성합니다.

    # vim /etc/modprobe.d/blacklist.conf
    
    	# Blacklists <KERNEL_MODULE_1>
    	blacklist <MODULE_NAME_1>
    	install <MODULE_NAME_1> /bin/false
    
    	# Blacklists <KERNEL_MODULE_2>
    	blacklist <MODULE_NAME_2>
    	install <MODULE_NAME_2> /bin/false
    
    	# Blacklists <KERNEL_MODULE_n>
    	blacklist <MODULE_NAME_n>
    	install <MODULE_NAME_n> /bin/false
    	…​

    이 예제에서는 vim 편집기에서 편집한 blacklist.conf 파일의 내용을 보여줍니다. blacklist 행을 사용하면 부팅 프로세스 중에 관련 커널 모듈이 자동으로 로드되지 않습니다. 그러나 blacklist 명령은 거부 목록에 없는 다른 커널 모듈에 대한 종속성으로 모듈이 로드되지 않도록 합니다. 따라서 설치 행은 모듈을 설치하는 대신 /bin/false 가 실행됩니다.

    해시 기호로 시작하는 줄은 파일을 더 쉽게 읽을 수 있도록 주석입니다.

    참고

    커널 모듈의 이름을 입력할 때 이름 끝에 .ko.xz 확장을 추가하지 마십시오. 커널 모듈 이름에는 확장자가 없습니다. 해당 파일은 다음과 같습니다.

  3. 재구축하기 전에 현재 초기 램디스크 이미지의 백업 사본을 생성합니다.

    # cp /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).bak.$(date +%m-%d-%H%M%S).img

    위의 명령은 새 버전에 예기치 않은 문제가 있는 경우 backup initramfs 이미지를 생성합니다.

    • 또는 커널 모듈을 거부 목록에 배치하려는 커널 버전에 해당하는 다른 초기 램디스크 이미지의 백업 사본을 생성합니다.

      # cp /boot/initramfs-<SOME_VERSION>.img /boot/initramfs-<SOME_VERSION>.img.bak.$(date +%m-%d-%H%M%S)
  4. 변경 사항을 반영할 새 초기 ramdisk 이미지를 생성합니다.

    # dracut -f -v
    • 현재 부팅된 것과 다른 커널 버전의 초기 램디스크 이미지를 빌드하는 경우 target initramfs 및 커널 버전을 모두 지정합니다.

      # dracut -f -v /boot/initramfs-<TARGET_VERSION>.img <CORRESPONDING_TARGET_KERNEL_VERSION>
  5. 시스템을 재부팅합니다.

    $ reboot
중요

이 절차에 설명된 변경 사항은 시스템을 재부팅 한 후 적용됩니다. 키 커널 모듈을 거부 목록에 부적절하게 배치하면 불안정하거나 작동하지 않는 시스템에 직면할 수 있습니다.

추가 리소스

  • dracut 유틸리티에 대한 자세한 내용은 dracut(8) 매뉴얼 페이지를 참조하십시오.
  • Red Hat Enterprise Linux 8 및 이전 버전에서 시스템 부팅 시 커널 모듈이 자동으로 로드되지 않도록 하는 방법에 대한 자세한 내용은 How do I avoid a kernel module from loading automatically?
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.