출처 : http://blog.daum.net/yong0319/7895693

▣ 커널관리 파일

- insmod
: 모듈 추가. 커널 디렉토리를 찾아서 해당 모듈을 추가한다.
■ 형식 : insmod [옵션] [오브젝트파일]
■ 옵션
  -k : autoclean 을 사용하여 적재

- rmmod
: 모듈 삭제
■ 형식 : rmmod [옵션] [모듈]
■ 옵션
  -r : 의존관계에 있는 모듈을 한번에 삭제

- lsmod
: 추가된 모듈 출력(/proc/modules 를 참조한다)
■ 형식 : lsmod [옵션]
■ 옵션
  -V : lsmod 버전 출력

- modprobe
: 모듈 추가. depmod에 의해 갱신된 modules.dep에서 찾아 추가한다. insmod와 달리 해당 커널 디렉토리로 갈 필요없이 아무위치에서나 모듈을 추가할수 있다. 또한 의존성이 필요한 모듈이나 먼저 실행되어야 할 모듈이 있다면 그 모듈부터 추가하고 해당 모듈을 추가한다
■ 형식 : modprobe [옵션] [오브젝트파일]
■ 옵션
  -k : autoclean 을 사용하여 추가
  -r : 모듈 삭제

- depmod
: 의존성 검사를 한뒤 modules.dep 파일을 갱신한다. kernald나 modprobe를 실행하기 전엔 꼭 depmod -a를 사용하는 습관을 들인다
■ 형식 : depmod [옵션]
■ 옵션

- modinfo
: 모듈 정보 확인
■ 형식 : modinfo [모듈명]

※ autoclean
autoclean라는 플레그를 사용하면 커널 데몬(kerneld)에 의해 일정시간 사용하지 않는 모듈을 삭제한다. 단 커널 컴파일시 kerneld 지원 여부를 물을때 Y를 해야 사용 가능


※ 참고사항
insmod는 '/lib/modules/커널버전' 디렉토리를 뒤져 해당 모듈이 있으면 메모리에 올려준다.
modprobe는 depmod에 의해 생성된 modules.dep에서 모듈을 찾아 올린다. 그리고 해당 모듈에 의존성이 있거나 해당모듈보다 선행되어야 하는 모듈이 있으면 그 모듈도 같이 올려준다.
이 부분이 insmod와 가장 큰 차이점이다.
예를 들어 vfat란 모듈을 올리기 위해서는 fat란 모듈을 먼저 올려야 하는데, fat 모듈이 메모리에 올라가 있지 않은 상태에서
# insmod vfat 하면 fat에 대한 symbol을 찾지못해 vfat 모듈을 올리지 못하지만
# modprobe vfat 을 실행하면 자동으로 먼저 fat 모듈을 올리고, 그 다음으로 vfat 모듈을 올린다
(커널 컴파일시 fat, vfat을 모듈로 설정했다고 가정)
modprobe로 해당 모듈을 찾지 못하는 경우 modules.dep에 없을 가능성이 크므로
#depmod -a 해서 모듈 의존 관계를 새롭게 갱신시킬 필요가 있다.

참고로 의존 관계에 있는 모듈들을 한꺼번에 내리려면 rmmod -r 옵션을 하면 된다.

'Linux' 카테고리의 다른 글

#define 활용, macro, preprocess (DEBUG, printf)  (0) 2010.12.07
linux directory dirent.h  (0) 2010.12.05
[MTD] NAND: nandsim page-wise allocation  (0) 2010.12.05
여러 가지 커널 팁 #2  (0) 2010.12.04
여러 가지 커널 팁 #1  (0) 2010.12.04

WRITTEN BY
RootFriend
개인적으로... 나쁜 기억력에 도움되라고 만들게되었습니다.

,