OS X'te başlatma sırasında bir komut çalıştırmak için kullanmanız gerekir launchd
.
Lingon kullanmak istemiyorsanız , bir launchd
Emlak Listesi oluşturmanız gerekir . Bu bir XML dosyasıdır, bu nedenle en sevdiğiniz metin düzenleyicinizle yapabilir veya alternatif olarak Mac OS X Dev Tools ile birlikte yüklenen Özellik Listesi Düzenleyicisini kullanabilirsiniz. Aşağıdakileri oluşturun:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>some.meaningful.name</string> <!-- org.mongodb.mongodb perhaps? -->
<key>OnDemand</key>
<false/>
<key>UserName</key>
<string>anAppropriateUser</string>
<key>GroupName</key>
<string>anAppropriateGroup</string>
<key>ProgramArguments</key>
<array>
<string>/Applications/MongoDB/bin/mongod</string>
<string>--dbpath</string>
<string>/usr/local/mongo/data</string>
<string>--fork</string>
<string>--logpath</string>
<string>/usr/local/mongo/log</string>
</array>
</dict>
</plist>
Bunu kaydedin /Library/LaunchAgents/some.meaningful.name.plist
(bir yönetici hesabına ve / veya ihtiyacınız olacak sudo
), ardından bir terminal açın ve şunları yapın:
sudo launchctl load /Library/LaunchAgents/some.meaningful.name.plist
Bu, fırlatma işleminin MongoDB'yi açılışta başlatmasına neden olacak öğeyi yüklemesine neden olacaktır. Bir bonus olarak, launchd
onu izleyecek ve herhangi bir nedenle çıkarsa, yeniden başlatılacaktır. Öğeden kurtulmak için, yukarıdaki komuttaki yükü boşaltma ile değiştirmeniz yeterlidir.
/etc
komutum dosyalardan birine eklenirse açılışta çalıştırılmalı mı? İçinde ne olduğu önemli mi?