모뎀

modprobe


modprobe 는 원래 Rusty Russell에 의해 작성된 Linux 프로그램으로 로딩 가능한 커널 모듈을 Linux 커널에 추가하거나 로딩 가능한 커널 모듈을 커널에서 제거하기 위해 사용됩니다.일반적으로 간접적으로 사용됩니다.udev는 modprobe에 의존하여 자동으로 검출된 [citation needed]하드웨어의 드라이버를 로드합니다.

Modprobe는 소프트웨어 패키지 "kmod"[1]의 일부로 배포됩니다(Lucas De Marchi 및 기타에 의해 유지 관리됨).이전에는 다음과 같이 개발되었습니다.

  • Linux 커널 버전 2.6 이상용 "module-init-tools"[2] (Jon Masters 및 기타에 의해 유지 관리됨)
  • Linux 버전 2.2.x 및 2.4.x에서 사용하기 위한 "modutils"[3]입니다.

작동

modprobe 프로그램은 기본적인 insmodrmmod 유틸리티보다 풀기능의 "Swiss-army-knife" 기능을 제공합니다.다음의 이점이 있습니다.

  • 로드할 모듈을 보다 직관적으로 결정할 수 있는 기능
  • 모듈 의존성을 인식하여 모듈 로딩이 요구되면 modprobe가 다른 필수 모듈을 먼저 추가하도록 합니다.
  • 필요에 따라 재귀 모듈 의존성 해결

스위치를 사용하지 않고 호출할 경우 프로그램은 기본적으로 지정된 모듈을 커널에 추가/삽입/설치합니다.일반적으로 이러한 변경에는 루트 권한이 필요합니다.

모듈명 뒤에 표시되는 인수(컨피규레이션파일에 리스트 되어 있는 옵션과 함께)는 커널에 전달됩니다.

modprobe 버전에 따라서는 컨피규레이션파일이 modprobe.conf 라고 불리며, 다른 버전에서는 /etc/modprobe.d 디렉토리에 있는 <modulename> 이라고 불리는 파일의 집합이라고 불리기도 합니다.

modprobe는 표준 모듈디렉토리에서만 검색됩니다.작업 디렉토리 insmod에서 모듈을 설치하는 것은 여전히 필요합니다.사용자는 모듈의 심볼릭링크를 표준 패스로 만들 수도 있습니다.따라서 depmod는 설치된 다른 모듈과 마찬가지로 모듈을 검색하여 로드합니다.

특징들

modprobe 프로그램에는 다른 유사한 유틸리티보다 더 많은 구성 기능도 있습니다.모듈 에일리어스를 정의하여 모듈을 자동으로 로드할 수 있습니다.커널이 모듈을 필요로 하는 경우 실제로 modprobe를 실행하여 요구합니다.단, 커널에는 일부 모듈 속성(예를 들어 디바이스 메이저 번호 또는 네트워크 프로토콜 번호)만 기재되어 있으며 modprobe는 에일리어스를 통해 실제 모듈 이름으로 변환하는 작업을 수행합니다.

또한 이 프로그램은 특정 모듈을 로드 또는 언로드하기 전 또는 후에 프로그램을 실행할 수 있습니다. 예를 들어 사운드 카드 모듈을 로드한 직후에 믹서를 설정하거나 펌웨어를 활성화하기 직전에 장치에 업로드하는 것입니다.이러한 액션은 외부 프로그램에 의해 구현되어야 하지만 modprobe는 모듈 로드/언로드와 이들의 실행을 동기화합니다.

블랙리스트

둘 이상의 모듈이 같은 디바이스를 지원하거나 모듈이 디바이스 지원을 무효로 주장하는 경우가 있습니다.blacklist 키워드는 특정 모듈의 내부 에일리어스를 모두 [4]무시함을 나타냅니다.

모듈을 블랙리스트에 올리는 방법에는 몇 가지가 있으며, 모듈을 로드하는 방법에 따라 모듈이 설정되어 있는 위치에 따라 달라집니다.

modprobe를 사용한 모듈 블랙리스트에는 modprobe.conf 시스템을 사용하는 두 가지 방법이 있습니다.첫 번째 방법은 /etc/modprobe.d/의 블랙리스트 시스템을 사용하는 것입니다..conf로 끝나는 모든 파일 이름을 사용할 수 있습니다.

cat /etc/modprobe.d/modprobe.conf 블랙리스트 IEEE blistlist ohci blistlist eth blistlist sbp2

설치 프리미티브는 컨피규레이션파일에서 가장 높은 priority로 위의 블랙리스트 방식 대신 사용됩니다.다음 두 번째 방법이 필요합니다.

cat /etc/modprobe.d/modprobe.conf install ieeeecips /bin/true install ohci params /bin/true install ethp2 /bin/true

또는 /etc/modprobe.conf 를 변경할 수도 있습니다.

alias sub_module /dev/module alias module_main /dev/module 옵션 module_main needed_option=0

「 」를 참조해 주세요.

레퍼런스

  1. ^ "kernel/kmod/kmod.git - kmod - module management".
  2. ^ "Archived copy". Archived from the original on 2008-06-09. Retrieved 2008-09-22.{{cite web}}: CS1 maint: 제목으로 아카이브된 복사(링크)
  3. ^ "Archived copy". Archived from the original on 2009-02-23. Retrieved 2008-09-22.{{cite web}}: CS1 maint: 제목으로 아카이브된 복사(링크)
  4. ^ modprobe.conf(5) - Linux man 페이지

외부 링크