Forum OSx86 - instalacja Mac OS X na PC Strona Główna


 
   
 
Poprzedni temat «» Następny temat
Autor Wiadomość
Zamknięty przez: rzooff
2011-04-08, 13:33
Skrypt automatyzujący postinstalacyjne modyfikacje systemu
314TeR 
Administrator


Pomógł: 286 razy
Wiek: 37
Dołączył: 04 Lis 2008
Posty: 7597
Wysłany: 2009-10-01, 23:40   

Nowa wersja skryptu w wersji dla Snow Leopard'a, automatyzująca następujące czynności:
:arrow: poprawę uprawnień i właścicieli plików dla zawartości /Extra i /System/Library/Extra
:arrow: tworzenie mkextów w /Extra i /System/Library/Extra w wersjach 32 i 64 bit.

Używanie skryptu.
Należy go skopiować do głównego folderu ( / ) partycji gdzie mamy /Extra i uruchomić komendą w terminalu:
Kod:
sudo ./cachesl.sh


Kod:
#!/bin/bash

if [ $USER != "root" ]; then
   echo "Error ==> This script must be run as root"
   exit
fi

echo "Fixing Extra permisions"

chown -R root:wheel Extra
find "Extra" -type f -exec chmod 644 {} \;
find "Extra" -type d -exec chmod 755 {} \;
#chmod -R 755 Extra

if [ -e "Extra/Extensions.mkext" ]; then
   mv Extra/Extensions.mkext Extra/Extensions.mkext.`date "+%Y-%m-%d--%H-%M"`
fi

if [ -e "Extra/KextStore" ]; then
   mv Extra/KextStore Extra/Extensions
fi

if [ -e "dsdt.aml" ]; then
   chown -R root:wheel dsdt.aml
   chmod -R 644 dsdt.aml
fi

if [ -e "DSDT.aml" ]; then
   chown -R root:wheel DSDT.aml
   chmod -R 644 DSDT.aml
fi

echo "Updating Chameleon PC_EFI Extra boot cache"

#kextcache -v 1 -a i386 -a x86_64 -m Extra/Extensions.mkext Extra/Extensions > Extra/update.log 2>&1
kextcache -v 1 -a i386 -a x86_64 -m Extra/Extensions.mkext Extra/Extensions

mv Extra/Extensions Extra/KextStore

echo "Fixing System Extensions permisions"
chown -R root:wheel System/Library/Extensions
find "System/Library/Extensions" -type f -exec chmod 644 {} \;
find "System/Library/Extensions" -type d -exec chmod 755 {} \;

#echo "Clearing system caches"

#if [ -e "System/Library/Extensions.mkext" ]; then
#   rm -rf System/Library/Extensions.mkext
#fi

#if [ -e "System/Library/Extensions/Caches/" ]; then
#   rm -rf System/Library/Extensions/Caches/
#fi

#if [ -e "System/Library/Caches/" ]; then
#   rm -rf System/Library/Caches/
#fi

echo "Updating System boot cache"

kextcache -v 1 -a i386 -a x86_64 -m System/Library/Caches/com.apple.kext.caches/Startup/Extensions.mkext System/Library/Extensions

echo "done."
_________________
haMac 1: ASUS P8Z68 Deluxe/GEN3 | Core i5-2500K | 8GB DDR3 | RAID 3ware 9750-4i + 4xSamsung HD103SJ | Sapphire 6870 1GB | Snow Leopard Retail
haMac 2: ASUS P5W DH Deluxe | Xeon 1,83GHz | 2GB DDR2 | GF9600 | Snow Leopard Retail
były haMac: ASUS P7P55 WS Supercomputer | Core i7-875K | P55 | 4GB DDR3 | RAID 3ware 9750-4i + 4xSamsung HD103SJ | Sapphire 6870 1GB | Snow Leopard Retail
Jak uruchomić na wypasie ALC 882/888/889/1200 | STOP Gigafail | P5W DH Deluxe - perfekcyjny hackintosh
| Piszę poprawnie po polsku!
| Nie udzielam konsultacji na PW
 
 
rzooff 
iKapć


Pomógł: 234 razy
Wiek: 34
Dołączył: 08 Sty 2009
Posty: 4446
Skąd: Warszawa
Wysłany: 2009-10-01, 23:53   

Dzięki, na pewno się przyda - choć sam lubię sobie czasem wklepać coś ręcznie :D
BTW, rozróżnienie na uprawnienia 755 i 644, tak naprawdę można dodać także do wersji dla "starego" Leo.
_________________
MacOS X 10.6.8 / 10.7.3 (retail, 64bit) | Asus P7P55D | i7 870 2,93 Ghz | 8GB RAM | GF 8400GS | AirPort | Trust Ultra Small Bluetooth 2.1
MacOS X 10.6.8 (retail, 32bit) | Toshiba Satellie L40-17R | T2330 | GMAX3100 / GM965 | ICH8M | ALC660 | RTL8139 + AirPort
MacOS X 10.6.8 (retail, 32bit) | Apple MacBook Air 2,1 | SL9300 | GF9400M | 2GB DDR3 | HDD120GB
| Jak zacząć | Jak zrobić listę konfiguracji sprzętu | DualBoot: Mac OS X & Windows | Snow Retail by rzooff | Jak uruchomić kartę graficzną NVidia | Piszę poprawnie po polsku!
 
 
314TeR 
Administrator


Pomógł: 286 razy
Wiek: 37
Dołączył: 04 Lis 2008
Posty: 7597
Wysłany: 2009-10-02, 00:09   

Jak najbardziej że można dodać... obecna wersja to powiedzmy RC1 dla SL i cały czas nie do końca podoba mi się poprawa uprawnień dla /S/L/E... po tej czynności oczywiście wszystko działa z /S/L/E, ale niektóre pliki powinny być 755 a niektóre 644.
Lepszym wyjściem by było użycie polecenia
Kod:
diskutil repairPermissions MountPoint
ale ono znów nie naprawi uprawnień dla haMac'owych kextów...
_________________
haMac 1: ASUS P8Z68 Deluxe/GEN3 | Core i5-2500K | 8GB DDR3 | RAID 3ware 9750-4i + 4xSamsung HD103SJ | Sapphire 6870 1GB | Snow Leopard Retail
haMac 2: ASUS P5W DH Deluxe | Xeon 1,83GHz | 2GB DDR2 | GF9600 | Snow Leopard Retail
były haMac: ASUS P7P55 WS Supercomputer | Core i7-875K | P55 | 4GB DDR3 | RAID 3ware 9750-4i + 4xSamsung HD103SJ | Sapphire 6870 1GB | Snow Leopard Retail
Jak uruchomić na wypasie ALC 882/888/889/1200 | STOP Gigafail | P5W DH Deluxe - perfekcyjny hackintosh
| Piszę poprawnie po polsku!
| Nie udzielam konsultacji na PW
 
 
rzooff 
iKapć


Pomógł: 234 razy
Wiek: 34
Dołączył: 08 Sty 2009
Posty: 4446
Skąd: Warszawa
Wysłany: 2009-10-02, 11:51   

Sam robię tak, że naprawiam przez diskutil.
A ręcznie naprawniam potem konkretnie kexty non-apple wskazując konkretny. A, że w /S/L/E mam tylko 1 taki kext (VoodooHDA), więc dużo roboty nie mam ;)
_________________
MacOS X 10.6.8 / 10.7.3 (retail, 64bit) | Asus P7P55D | i7 870 2,93 Ghz | 8GB RAM | GF 8400GS | AirPort | Trust Ultra Small Bluetooth 2.1
MacOS X 10.6.8 (retail, 32bit) | Toshiba Satellie L40-17R | T2330 | GMAX3100 / GM965 | ICH8M | ALC660 | RTL8139 + AirPort
MacOS X 10.6.8 (retail, 32bit) | Apple MacBook Air 2,1 | SL9300 | GF9400M | 2GB DDR3 | HDD120GB
| Jak zacząć | Jak zrobić listę konfiguracji sprzętu | DualBoot: Mac OS X & Windows | Snow Retail by rzooff | Jak uruchomić kartę graficzną NVidia | Piszę poprawnie po polsku!
 
 
314TeR 
Administrator


Pomógł: 286 razy
Wiek: 37
Dołączył: 04 Lis 2008
Posty: 7597
Wysłany: 2009-10-02, 12:34   

Można przemyśleć jeszcze raz konstrukcję tego skryptu... masz jakieś propozycje co zmienić, dodać?
_________________
haMac 1: ASUS P8Z68 Deluxe/GEN3 | Core i5-2500K | 8GB DDR3 | RAID 3ware 9750-4i + 4xSamsung HD103SJ | Sapphire 6870 1GB | Snow Leopard Retail
haMac 2: ASUS P5W DH Deluxe | Xeon 1,83GHz | 2GB DDR2 | GF9600 | Snow Leopard Retail
były haMac: ASUS P7P55 WS Supercomputer | Core i7-875K | P55 | 4GB DDR3 | RAID 3ware 9750-4i + 4xSamsung HD103SJ | Sapphire 6870 1GB | Snow Leopard Retail
Jak uruchomić na wypasie ALC 882/888/889/1200 | STOP Gigafail | P5W DH Deluxe - perfekcyjny hackintosh
| Piszę poprawnie po polsku!
| Nie udzielam konsultacji na PW
 
 
rzooff 
iKapć


Pomógł: 234 razy
Wiek: 34
Dołączył: 08 Sty 2009
Posty: 4446
Skąd: Warszawa
Wysłany: 2009-10-02, 13:13   

Teoretycznie można zrobić odwrotnie. Czyli najpierw uprawnienia po całości, tak jak w jest w skrypcie, potem diskutil. Wtedy efekt powinien być optymalny.
Dużym minusem jest jednak czas trwania tej operacji.

Lepsza (szybsza) opcja to wymyślenie jakiejś metody na rozpoznanie kextu non-apple lub możliwość ręcznego wskazania tych kextów. Wtedy nie popsujemy uprawnienień vanilliowych kextów , więc nie trzeba będzie ich naprawiać w diskutil.
Pierwsze, co mi przychodzi do głowy, to utworzenie (dłuugiej) listy oryginalnych kextów. Wtedy można będzie przeprowadzić daną operację, tylko na tych pozostałych. Tu pojawia się inny duży minus - nie naprawimy uprawnień dla kextów zmodyfikowanych, które występują oryginalnie w systemie.

Ale jeśli chodzi o informatykę, to jestem amatorem, więc może jest jakiś elegantszy sposób :)
_________________
MacOS X 10.6.8 / 10.7.3 (retail, 64bit) | Asus P7P55D | i7 870 2,93 Ghz | 8GB RAM | GF 8400GS | AirPort | Trust Ultra Small Bluetooth 2.1
MacOS X 10.6.8 (retail, 32bit) | Toshiba Satellie L40-17R | T2330 | GMAX3100 / GM965 | ICH8M | ALC660 | RTL8139 + AirPort
MacOS X 10.6.8 (retail, 32bit) | Apple MacBook Air 2,1 | SL9300 | GF9400M | 2GB DDR3 | HDD120GB
| Jak zacząć | Jak zrobić listę konfiguracji sprzętu | DualBoot: Mac OS X & Windows | Snow Retail by rzooff | Jak uruchomić kartę graficzną NVidia | Piszę poprawnie po polsku!
 
 
314TeR 
Administrator


Pomógł: 286 razy
Wiek: 37
Dołączył: 04 Lis 2008
Posty: 7597
Wysłany: 2009-10-02, 13:42   

rzooff napisał/a:
najpierw uprawnienia po całości, tak jak w jest w skrypcie, potem diskutil. Wtedy efekt powinien być optymalny.

Też tak wydaje mi się chyba najlepiej... na pewno zostaną naprawione uprawnienia i właściciele plików w sposób optymalny.
rzooff napisał/a:
Dużym minusem jest jednak czas trwania tej operacji.

Niestety, coś za coś... diskutility używa coś na wzór listy kextów Apple i wg niej naprawia uprawnienia... niestety to trwa... 2 - 3 minuty...

A może pomyśleć o jakimś elementarnym systemie wyboru opcji do działania? Tu by się przydała pomoc osoby obeznanej z xcode w zakresie programowania.
_________________
haMac 1: ASUS P8Z68 Deluxe/GEN3 | Core i5-2500K | 8GB DDR3 | RAID 3ware 9750-4i + 4xSamsung HD103SJ | Sapphire 6870 1GB | Snow Leopard Retail
haMac 2: ASUS P5W DH Deluxe | Xeon 1,83GHz | 2GB DDR2 | GF9600 | Snow Leopard Retail
były haMac: ASUS P7P55 WS Supercomputer | Core i7-875K | P55 | 4GB DDR3 | RAID 3ware 9750-4i + 4xSamsung HD103SJ | Sapphire 6870 1GB | Snow Leopard Retail
Jak uruchomić na wypasie ALC 882/888/889/1200 | STOP Gigafail | P5W DH Deluxe - perfekcyjny hackintosh
| Piszę poprawnie po polsku!
| Nie udzielam konsultacji na PW
 
 
314TeR 
Administrator


Pomógł: 286 razy
Wiek: 37
Dołączył: 04 Lis 2008
Posty: 7597
Wysłany: 2009-11-11, 23:36   

Odrobinę poprawiłem tekst w pierwszym poście, dodałem istotną informację o zmianie uprawnień skryptu.
_________________
haMac 1: ASUS P8Z68 Deluxe/GEN3 | Core i5-2500K | 8GB DDR3 | RAID 3ware 9750-4i + 4xSamsung HD103SJ | Sapphire 6870 1GB | Snow Leopard Retail
haMac 2: ASUS P5W DH Deluxe | Xeon 1,83GHz | 2GB DDR2 | GF9600 | Snow Leopard Retail
były haMac: ASUS P7P55 WS Supercomputer | Core i7-875K | P55 | 4GB DDR3 | RAID 3ware 9750-4i + 4xSamsung HD103SJ | Sapphire 6870 1GB | Snow Leopard Retail
Jak uruchomić na wypasie ALC 882/888/889/1200 | STOP Gigafail | P5W DH Deluxe - perfekcyjny hackintosh
| Piszę poprawnie po polsku!
| Nie udzielam konsultacji na PW
 
 
barylatko 
iUczeń:)


Wiek: 26
Dołączył: 30 Kwi 2009
Posty: 260
Skąd: Warszawa
Wysłany: 2010-09-16, 16:24   

314TeR, nie działa mi ten skrypt. Powiem co zrobiłem:
1. Sciągnąłem skrypt z tego tematu dla Snow oczywiscie,
2. Rozpakowałem i skopiowałem do katalogu głównego mojego dysku
Odpaliłem termina i wpisałem sudo ./cachesl.sh zapytał mnie ładnie o hasło podałem i wyskoczyła mi inf o tym, że nie mam takiego katalogu....
_________________
iHack: Snow Leopard Retail 10.6.7 64 bit | Asus P7P55D PRO | COREi7-875K | Asus HD5870 | 16GB DDR3 |
Piszę poprawnie po polsku!
 
 
witucha0 
Absurd Inside


Pomógł: 108 razy
Wiek: 15
Dołączył: 12 Gru 2009
Posty: 1511
Skąd: Warszawa
Wysłany: 2010-09-16, 16:38   

barylatko napisał/a:
Odpaliłem termina i wpisałem sudo ./cachesl.sh zapytał mnie ładnie o hasło podałem i wyskoczyła mi inf o tym, że nie mam takiego katalogu....

A ja właśnie rozkminiłem dlaczego skrypt nie działa ;) Trzeba:
1. Skopiować skrypt na dysk
2. Nadać mu uprawnienia
3. (i o to właśnie chodziło) Wpisać do terminala coś takiego
Kod:
cd /

4. Uruchomić skrypt

Pozdrawiam
_________________
MacOS X Lion 10.7.2 64-bit on MSI P55-GD65 (Intel P55, ALC889) | i5-750 2.66 Ghz | G.Skill ECO 4GB DDR3 1600Mhz CL7 | ZOTAC NVidia 9600GT AMP! Edition | Samsung HD103SJ
MacOS X Lion 10.7.2 32-bit on Gigabyte EP41-UD3L (G41 + ICH7R) | Intel Pentium E5300 2.6Ghz | 3GB DDR2 | Palit NVidia GeForce 7600GT | Seagate 7200.12 500GB
MacOS X Lion 10.7.2 64-bit on MacBook Pro 15' Mid-2010 | i5-520M 2.4Ghz | NVidia GeForce GT330M + IntelHD | 4GB DDR3 | Toshiba 320GB 5400rpm
iPhone 4 32GB White + iOS 5.0.1 JB | TL-WR1043ND + OpenWRT (GargoylePL) | NIE POMAGAM NA PW!!! | Snow Leopard 10.6.8 Retail z BootCD | Piszę poprawnie po polsku!
 
 
 
rzooff 
iKapć


Pomógł: 234 razy
Wiek: 34
Dołączył: 08 Sty 2009
Posty: 4446
Skąd: Warszawa
Wysłany: 2011-04-08, 13:33   

Nowe narzędzie zastępujące funkcjonalność skryptu to KextWizard:
http://forum.osx86.org.pl...t4157.htm#39229
_________________
MacOS X 10.6.8 / 10.7.3 (retail, 64bit) | Asus P7P55D | i7 870 2,93 Ghz | 8GB RAM | GF 8400GS | AirPort | Trust Ultra Small Bluetooth 2.1
MacOS X 10.6.8 (retail, 32bit) | Toshiba Satellie L40-17R | T2330 | GMAX3100 / GM965 | ICH8M | ALC660 | RTL8139 + AirPort
MacOS X 10.6.8 (retail, 32bit) | Apple MacBook Air 2,1 | SL9300 | GF9400M | 2GB DDR3 | HDD120GB
| Jak zacząć | Jak zrobić listę konfiguracji sprzętu | DualBoot: Mac OS X & Windows | Snow Retail by rzooff | Jak uruchomić kartę graficzną NVidia | Piszę poprawnie po polsku!
 
 
Wyświetl posty z ostatnich:   
Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Nie możesz ściągać załączników na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  
 
   

Powered by phpBB modified by Przemo © 2003 phpBB Group
Template created by Qbs. Template theme based on Unofficial modifications.

Forum użytkowników Mac OS X na PC. Co to jest Hackintosh. Instalacja Mac OS X na PC z płyty Retail. Instalacja i opisy dystrybucji iDeneb, iPC, Kalyway, Leo4ALL, iAtkos.