9 votes

Besoin d'aide pour utiliser la commande 'Services' de Homebrew

J'ai installé MongoDB en utilisant homebrew récemment. Quelques articles sur le web conseillent de démarrer mongo en utilisant la commande suivante,

brew services start mongo

Mais lorsque j'utilise cette commande, j'obtiens le message suivant,

Error: Unknown command: services

J'ai essayé de faire des recherches en ligne sur ce problème. Mais sans succès jusqu'à présent. Quel pourrait être le problème ? J'ai installé homebrew comme il était spécifié sur leur site web. Pourquoi cette fonctionnalité ne fonctionne-t-elle pas pour moi ?

Et la page de manuel ne contient aucune information concernant la commande 'services'.

8voto

shsteimer Points 8749

services était une commande "cachée" dans Homebrew. Il y en avait un paquet qui n'étaient pas présentes dans la version brew help sortie. Comme les commandes non documentées ont l'habitude de le faire, elle a disparu du dépôt officiel et est devenue une " commande externe " maintenu dans un autre dépôt de modules complémentaires (dans ce cas, un résumé, car c'est très simple).

Vous pouvez l'installer dans votre configuration Homebrew en exécutant :

> 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

Vous pouvez également ignorer services et juste faire un fichier plist pour ça. Par exemple, créez ~/Library/LaunchAgents/org.mongodb.mongod.plist avec :

<?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>

Changez juste {your_username} à votre nom d'utilisateur actuel puis exécutez :

launchctl load ~/Library/LaunchAgents/org.mongodb.mongod.plist 

pour enregistrer le plist avec launchd. Vous pouvez maintenant démarrer et arrêter MongoDB avec :

launchctl start org.mongodb.mongod
launchctl stop org.mongodb.mongod

Note, la solution plist ci-dessus a été prise à partir de cette excellente réponse de Stack Overflow .

2voto

kbrock Points 121

C'est externe maintenant :

brew tap homebrew/services

brew services install , brew services install fonctionne maintenant.

0voto

Pink Sweetener Points 6079

Il existe une interface graphique utile sur le site web de MongoDB, si vous ne souhaitez pas modifier manuellement les fichiers.

http://blog.mongodb.org/post/28925264384/macosx-preferences-pane-for-mongodb

Le volet des préférences MacOSX pour MongoDB vise à fournir une interface utilisateur simple et efficace pour contrôler l'état d'un serveur MongoDB local, tout comme le volet des préférences MySQL.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X