¿Necesita ayuda para usar el comando 'Servicios' de Homebrew?

9

Instalé MongoDB usando homebrew recientemente. Algunos artículos en la web recomiendan iniciar Mongo usando el siguiente comando,

brew services start mongo

Pero cuando uso este comando, aparece el siguiente mensaje,

Error: Unknown command: services

Intenté buscar sobre este problema en línea. Pero no hay suerte hasta ahora. Cual podría ser el problema aquí? Instalé Homebrew como estaba especificado en su sitio web. ¿Por qué esta función no funciona para mí?

Y la página de manual no tiene información sobre el comando 'servicios'.

    
pregunta Ganz7 12.10.2014 - 20:14

3 respuestas

8

services was un comando "oculto" en Homebrew. Hubo un montón de ellos que no estaban presentes en la salida brew help . Ha desaparecido en el repositorio oficial y, como los comandos indocumentados no suelen hacer, se ha convertido en un " comando externo "se mantuvo en otro repositorio de complementos (en este caso, una idea general ya que es tan simple).

Puede instalarlo en la configuración de Homebrew ejecutando:

> 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

Alternativamente, puede omitir services y simplemente hacer un archivo plist para ello. Por ejemplo, cree ~/Library/LaunchAgents/org.mongodb.mongod.plist con:

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

Simplemente cambie {your_username} a su nombre de usuario real y luego ejecute:

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

para registrar el plist con launchd. Ahora puede iniciar y detener MongoDB con:

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

Tenga en cuenta que la solución anterior se tomó de esta excelente respuesta de desbordamiento de pila .

    
respondido por el Ian C. 12.10.2014 - 20:50
2

Es externo ahora:

brew tap homebrew/services

brew services install , brew services install ahora funciona.

    
respondido por el kbrock 15.05.2015 - 16:43
0

Hay una GUI útil en el sitio web de MongoDB, si no quieres modificar los archivos manualmente.

enlace

  

El panel de preferencias de MacOSX para MongoDB tiene como objetivo proporcionar una interfaz de usuario simple y eficiente para controlar el estado de un servidor MongoDB local, al igual que el panel de preferencias de MySQL.

    
respondido por el ninjaPixel 28.01.2015 - 22:12

Lea otras preguntas en las etiquetas