314TeR Posted November 4, 2008 Report Share Posted November 4, 2008 Temat ciągle powraca, więc postaram się go opisać najdokładniej jak potrafię. Co to jest ten “kext” - jest to skrót od kernel extension - na polski tłumacząc rozszerzenie (moduł) jadra. W Windows najbliższym odpowiednikiem jest sterownik sprzętu. Jest on odpowiedzialny za obsługę sprzętu jaki się znajduje w danej maszynie. Moduły są ładowane jedynie kiedy dany sprzęt jest obecny w komputerze. Kexty znajdują się na dysku systemowym w folderze: /System/Library/Extensions/ Żeby system startował szybciej jest tworzony tzw “cache” kextów. Jest to jeden plik umieszczony tu: /System/Library/Extensions.mkext Cache ten jest tworzony automatycznie przez system na podstawie zawartości teczki Extensions. Podczas startu systemu kexty są ładowany TYLKO z cache. Po zmodyfikowaniu zawartości Extensions, gdy np. wgraliśmy nowy kext, należy ten cache odświeżyć, a najprościej jest to zrobić kasując go np z terminala komendą: sudo rm /System/Library/Extensions.mkext lub uruchomić OS X z parametrem -f. Aby kext zadziałał musi posiadać on odpowiednie uprawnienia i właściciela. W *NIX’ach właścicielem jest najczęściej użytkownik “root” należący w OS X do grupy “whell”. Kext powinien posiadać ponadto uprawnienia 755. Jeśli wgrywamy ręcznie kext do katalogu to musimy poprawić jego uprawnienia a najłatwiej jest to zrobić z poziomu terminala komendami: sudo chown -R 0:0 nazwa.kext (zmiana właściciela) sudo chmod -R 755 nazwa.kext (zmiana uprawnień) Zamiast uruchamiać komendy poprzez sudo można się też przełączyć na superusera komendą “su -s”. Aby móc się przełączyć na root’a, konto z którego dokonujemy przełączenia MUSI posiadać hasło, inaczej w ogóle nie nastąpi przełączenie i nic nie zmodyfikujemy. Zamiast ręcznego wrzucania kextów, można użyć wygodnego i prostego programiku o nazwie Kext Helper b7. Można go pobrać z internetu z tej strony: http://www.cheetha.net/Kext_Helper/Software.html lub z załącznika do postu. Oprócz ręcznego naprawiania uprawnień, system posiada też wygodne narzędzie do naprawy ich w “Disk Utility” - funkcja Repair permisions (w polskim systemie odpowiednio - Narzędzie dyskowe - naprawa uprawnień). Wybieramy w nim odpowiedni dysk i klikamy w jeden klawisz i już... no prawie... bo disk utility naprawia uprawnienia kextów które zna, a dokładnie tylko oryginalnych Apple’a dostarczanych z systemem. I tak naprawi np. AppleIntelGMAX3100.kext, ale już zupełnie mu nieznanego NullCPUPowerManagement.kext nie!! Pamiętajcie o tym, że te inne kexty trzeba ręcznie poprawiać przez chmod i chown, lub wgrywać kext helperem. Podsumowując prawidłowa kolejność instalacji kextów to: Wgranie do teczki /System/Library/Extensions/ Naprawienie uprawnień (komeny chown, chmod) Usunięcie cache /System/Library/Extensions.mkext Temat zamykam aby w nim nie śmiecić, ale zapraszam do dyskusji tutaj: http://hamac.pl/viewtopic.php?t=18 i składania uwag co poprawić, lepiej opisać, lub co jeszcze powinno się znaleźć w tym temacie Poprzedni wątek z dyskusją tu: http://forum.osx86.pl/viewtopic.php?f=7&t=489 Quote Link to comment Share on other sites More sharing options...
rzooff Posted November 16, 2009 Report Share Posted November 16, 2009 Małe uzupełnienie o zmiany w Snow Leopard. Systemowe kexty są nadal pod tą samą lokalizacją: /System/Library/Extensions/ Natomiast "cache", czyli plik Extensions.mkext znajduje się w: /System/Library/Caches/com.apple.kext.caches/Startup/ INSTALACJA polega na skopiowaniu kexta do /System/Library/Extensions, nadaniu właściciela, uprawnień i odświeżeniu (usunięciu) starego mkext'a: sudo -s cd /System/Library/Extensions chown -R 0:0 nazwa_kexta.kext chmod -R 755 nazwa_kexta.kext rm -R /System/Library/Caches/com.apple.kext.caches exit DEINSTALACJA, polega na skasowaniu kexta z /System/Library/Extensions i odświeżeniu (usunięciu) starego mkext'a: sudo rm -R /System/Library/Caches/com.apple.kext.caches Zamiast ręcznego wrzucania kextów, można użyć Skryptu automatyzującego postinstalacyjne modyfikacje systemu (przy okazji potrafi on załatwić sprawę kextów trzymanych w Extra). Albo wygodnego i prostego programiku o nazwie Kext Utility. Można go pobrać z internetu z tej strony: http://cvad-mac.narod2.ru/Kext_Utility/ http://www.insanelymac.com/forum/index.php?showtopic=140647 UWAGA! Kext Helper polecany przy "starym" Leopardzie, nie działa poprawnie w Snow Leo! Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.