İçinde bir hata var. postinstall senaryo. İlk satır yalnızca bir karma (#) içermelidir:
#!/usr/bin/env bash
Eğer .pkg ile çalışır installer ve Installer.app , o zaman doğru bir pakettir. Diğer tüm araçlar üçüncü şahıslar tarafından yapılır ve en son sürümü desteklemeyebilir. pkg biçimleri ve özellikleri.
Eksik İzni?
kullanma sudo Paket komut dosyanızda, komut dosyasının sonsuza kadar duraklatılmasına veya anında başarısız olmasına neden olabilir. Nasıl olacak sudo süper kullanıcı kimlik bilgilerini almak için kullanıcıyla etkileşimde bulunma komutu?
Kaldır sudo ve betiğini yaz izin testi devam etmeden önce yüklemek için, aksi halde bir hata yazdırın ve çıkın:
if [[ $EUID -ne 0 ]]; then
echo "You must be a root to run this script" 2>&1
exit 1
fi
Bu sorumluluğundadır installer Uygun yetki haklarını kazanmak ve paketin komut dosyalarını bu hakları kullanarak çalıştırmak. Paketinizde, bunun gerçekleşmesi için yönetici haklarına ihtiyacı olduğunu belirtin.
Günlükler ve Hatalar
Kullan verbose ile bayrak installer yükleme işleminin her adımını görmek ve hataları görmek için:
sudo installer -verbose -pkg /Library/Virtualbox.pkg -target /
Apple Paket Araçları
OS X üzerindeki yükleyici paketleri genellikle araçlarla birlikte oluşturulur pkgbuild ve productbuild. Bu iki Apple aracı, öncesi ve sonrası komut dosyalarını destekler; görmek --scripts bayrağı.
AutoPkg
Mac sistem yöneticileri genellikle açık kaynağı kullanır autopkg paket oluşturma aracı:
AutoPkg, OS X yazılım paketleme ve dağıtımı için, yönetilen istemcilere toplu dağıtım için üçüncü taraf yazılımı hazırlamak için normalde manuel olarak gerçekleştireceği görevlere yönelik bir otomasyon çerçevesidir.
AutoPkg'ın yeni Mac kurulumunu kolaylaştırmak için daha iyi bir yaklaşım olduğunu görebilirsiniz.
-verboseile bayrakinstaller? Deneyinsudo installer -verbose -pkg /Library/Virtualbox.pkg -target /