Как да заредите & Unload Kernel Extensions в Mac OS X
Съдържание:
- Зареждане на разширение на ядрото в Mac OS X с kextload
- Разтоварване на разширение на ядрото с kextunload
Разширенията на ядрото, наричани накратко kext, са модули от код, които се зареждат директно в пространството на ядрото на Mac OS X и могат да работят на ниско ниво, за да изпълняват различни задачи. Повечето kext са част от основния системен софтуер на Mac OS X, обикновено драйвери на хардуерни устройства, но някои приложения на трети страни също ще инсталират kext.
Понякога напреднали потребители на Mac и системни администратори може да се наложи ръчно да заредят или разтоварят разширение на ядрото.Тъй като разширенията на ядрото често са критични компоненти на MacOS, това е подходящо само за потребители, които имат конкретна причина да променят дали kext се зарежда или разтоварва в пространството на ядрото на MacOS X. Неподходящата модификация на поведението на kext може да направи хардуера на Mac безполезен или недостъпен и може също така да попречи на Mac OS X да функционира изобщо, така че не се опитвайте да промените разширение на ядрото без убедителна причина и разбиране за какво се използва.
Зареждане на разширение на ядрото в Mac OS X с kextload
За да заредите разширение на ядрото в Mac OS X, ще трябва да използвате помощната програма kextload от командния ред. Синтаксисът иначе е достатъчно прост, изисква sudo за административен достъп за извършване на действието:
sudo kextload /path/to/kext.kext
Можете също да използвате идентификатора на пакета (които често са целите на командите по подразбиране) с флага -b:
sudo kextload -b com.apple.driver.ExampleBundle
И в двата случая натиснете return и с въвеждането на администраторската парола разширението на ядрото ще бъде заредено в Mac OS X.
Можете да потвърдите, че ядрото е заредено, като го посочите с kextstat, като използвате grep за търсене на даденото име, така:
$ kextstat |grep com.apple.driver.ExampleBundle 125 0 0xdddddd7f23351040 0x5000 0x5000 com.apple.driver.ExampleBundle (1) 12 8 7 5 4 2 1
Това може да бъде полезно след ръчно инсталиране на разширение на ядрото в Mac OS X, тъй като в някои ситуации ще предотврати необходимостта от рестартиране на Mac.
Модерните версии на Mac OS X също позволяват зареждането на разширението на ядрото да бъде завършено с командата kextutil, която е малко по-пълнофункционална поради причини за отстраняване на грешки, но иначе е същата за зареждане на kext.
Разтоварване на разширение на ядрото с kextunload
Разтоварването на разширение на ядрото от Mac OS X е по принцип същото като зареждането на kext, с изключение на това, че ще използвате помощната програма kextunload със sudo, както следва:
sudo kextunload -b com.apple.driver.ExampleBundle
Или като посочите директно пътя на разширенията на ядрото:
sudo kextunload /System/Library/Extensions/ThirdPartyMystery.kext
Отново можете да потвърдите, че разширението на ядрото е разтоварено, като използвате kextstat и grep, където не трябва да върне нищо.