services
เป็นคำสั่ง "ซ่อน" ใน Homebrew มีกลุ่มของพวกเขาที่ไม่ได้อยู่ในbrew help
ผลลัพธ์ มันมีคำสั่งที่ไม่มีเอกสารจะไม่ทำหายไปในพื้นที่เก็บข้อมูลอย่างเป็นทางการและได้กลายเป็น "คำสั่งภายนอก " ที่เก็บรักษาไว้ในที่เก็บโปรแกรมเสริมอื่น (ในกรณีนี้เป็นส่วนสำคัญที่ง่าย
คุณสามารถติดตั้งได้ในการตั้งค่า Homebrew ของคุณโดยเรียกใช้:
> curl -o /usr/local/bin/brew-services.rb https://gist.githubusercontent.com/lwe/766293/raw/75a7907004bbff0eb3b072d1d951be2cfe7e5020/brew-services.rb
> chmod +x /usr/local/bin/brew-services.rb
> brew services help
usage: [sudo] brew services [--help] <command> [<formula>]
Small wrapper around `launchctl` for supported formulas, commands available:
cleanup Get rid of stale services and unused plists
list List all services managed by `brew services`
restart Gracefully restart selected service
start Start selected service
stop Stop selected service
Options, sudo and paths:
sudo When run as root, operates on /Library/LaunchDaemons (run at boot!)
Run at boot: /Library/LaunchDaemons
Run at login: /Users/ian/Library/LaunchAgents
หรือคุณสามารถข้ามservices
และสร้างไฟล์ plist ได้ ตัวอย่างเช่นสร้าง~/Library/LaunchAgents/org.mongodb.mongod.plist
ด้วย:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>org.mongodb.mongod</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/Cellar/mongodb/2.6.4/bin/mongod</string>
<string>run</string>
<string>--config</string>
<string>/usr/local/Cellar/mongodb/2.6.4/mongod.conf</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>KeepAlive</key>
<false/>
<key>UserName</key>
<string>{your_username}</string>
<key>WorkingDirectory</key>
<string>/usr/local</string>
<key>StandardErrorPath</key>
<string>/usr/local/var/log/mongodb/output.log</string>
<key>StandardOutPath</key>
<string>/usr/local/var/log/mongodb/output.log</string>
</dict>
</plist>
เพียงเปลี่ยน{your_username}
ชื่อผู้ใช้จริงของคุณจากนั้นเรียกใช้:
launchctl load ~/Library/LaunchAgents/org.mongodb.mongod.plist
เพื่อลงทะเบียน plist ด้วย launchd ตอนนี้คุณสามารถเริ่มและหยุด MongoDB ด้วย:
launchctl start org.mongodb.mongod
launchctl stop org.mongodb.mongod
หมายเหตุการแก้ปัญหา plist ข้างต้นถูกนำมาจากที่ยอดเยี่ยมคำตอบกองมากเกินนี้