Mac OS X에서 .kext를 어떻게 제거하고 제거합니까?


32

X-in-1 미디어 카드 리더를 구입했으며 SD-HC 카드를 읽으려면 드라이버를 설치해야했습니다. 때때로 USB 포트에서 리더를 뽑을 때 커널 패닉이 발생합니다.

이제이 커널 확장을 제거하고 싶지만 드라이버 설치 프로그램에서이 옵션을 제공하지 않습니다.

Mac OS X 10.5에서 커널 확장 (.kext)을 어떻게 제거 할 수 있습니까?

답변:


32

.kext 파일의 이름을 모르는 경우 설치 관리자가 Installer.app에서 열리는 표준 패키지 (.pkg 또는 .mpkg) 인 경우 Suspicious Package 와 같은 QuickLook 플러그인을 사용하여 알아낼 수 있습니다 .

패키지가 아닌 경우 커널 패닉에서 kext의 이름을 찾을 수 있습니다 ~/Library/Logs/panic.log. 패닉 후 컴퓨터를 다시 시작하거나 재시작 할 때이 정보를 찾을 수 있으며 오류를 Apple에보고 할 것인지 묻습니다. 보고서를 누른 다음 가운데 탭을 클릭하여 충돌 세부 사항을보십시오.

예를 들면 다음과 같습니다.

panic(cpu 0 caller 0x0035C330): freeing free mbuf
Backtrace, Format - Frame : Return Address (4 potential args on stack) 
0x2545bc08 : 0x128d08 (0x3c9afc 0x2545bc2c 0x131de5 0x0) 
0x2545bc48 : 0x35c330 (0x3ea258 0x3ae65000 0x23935100 0x493e0) 
0x2545bc88 : 0x7424a4 (0x36f19300 0x493e0 0x0 0x134b11) 
0x2545bca8 : 0x9f1458 (0x23935000 0x36f19300 0x0 0x0) 
0x2545bcd8 : 0x9ef6d6 (0x23935000 0x36f19300 0x0 0x0) 
0x2545bcf8 : 0x9fa0ce (0x23935000 0x36f15f00 0x1000000 0x0) 
0x2545bea8 : 0x9f375a (0x23935000 0x3a14880 0x40000000 0x34fb8b) 
0x2545bf08 : 0x398f79 (0x23935000 0x3a14880 0x1 0x13becf) 
0x2545bf58 : 0x39814b (0x3a14880 0x4121d48 0x4121d8c 0x0) 
0x2545bf88 : 0x397e81 (0x3a184c0 0x5d3734 0x452084 0x40431f4) 
0x2545bfc8 : 0x19a77c (0x3a184c0 0x0 0x19d0b5 0x696543c) Backtrace terminated-invalid frame pointer 0x0  

Kernel loadable modules in backtrace (with dependencies):
com.apple.iokit.AppleYukon(1.0.9b3)@0x9ed000  

dependency: com.apple.iokit.IONetworkingFamily(1.5.1)@0x73b000
dependency: com.apple.iokit.IOPCIFamily(2.2)@0x60a000
dependency: com.apple.iokit.IOACPIFamily(1.2.0)@0x6b6000
com.apple.iokit.IONetworkingFamily(1.5.1)@0x73b000

Kernel version:
Darwin Kernel Version 8.8.2: Thu Sep 28 20:43:26 PDT 2006; root:xnu-792.14.14.obj~1/RELEASE_I386

상대 선을 구분했습니다. 특히 "Kernel loadable modules ..."다음의 첫 번째 줄을 찾고 있습니다. 이 경우 항목은 com.apple.iokit.AppleYukon (이더넷 드라이버 / 커널 확장명)이므로 파일 이름은 com.apple.iokit.AppleYukon.kext 입니다.

다음 단계로 넘어 가기 전에 올바른 커널 확장이 있는지 110 % 확인하십시오 . 잘못된 커널 확장을 비활성화하면 삶을 정말 어렵게 만들 수 있습니다 . USB 장치는 다시 활성화 될 때까지 작동하지 않습니다.

마지막으로 언로드하십시오.

sudo kextunload /System/Library/Extensions/NAME_OF_THE_KEXT_FILE.kext


자세한 답변에 감사 드리며 다른 모든 도움에도 감사드립니다.
Marc

3
kextunload영원하지 않습니다. 따라서 110 % 는 약간 과도합니다. 다시 시작할 수 있습니다 ...
Alec Jacobson

6

kextunload 명령을 사용해야합니다. sudo가 개별 사용자가 아닌 시스템 전체 kext로 설치된 경우 sudo를 사용해야 할 수도 있습니다.

kext 번들을 직접 삭제하고 재부팅 할 수도 있습니다.


1
+1. kextunload가 오류를 반환했지만 .kext를 삭제하면 내 문제가 직접 해결되었습니다.
gary


2

한 번 봐 가지고 의심스러운 패키지를 , 당신이가 .pkg (즉,의 가정은 어떤 설치가) 파일 시스템에 무엇을 할 것인지 볼 수 있습니다 얼핏 플러그인이며, 그것이 설치된 것을 제거하기 위해 매우 쉽게 다음 일반적이다.


1

먼저 kext 파일을 언로드하십시오. "로드 된"탭에서 Kext Wizard 3.7.11 로 로드 된 kext 파일을 확인할 수 있습니다 .
sudo kextunload /System/Library/Extensions/NAME_OF_THE_KEXT_FILE.kext

그런 다음 kext 폴더를 제거하여 다음 부팅시 자동으로로드되지 않습니다.
sudo rm -r /System/Library/Extensions/NAME_OF_THE_KEXT_FILE.kext

어떤이 NAME_OF_THE_KEXT_FILE.kext는 폴더입니다, 파일이 아닙니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.