2016-05-18 11 views
-1

Ich lerne gearman und fand, dass es zwei Möglichkeiten, um die gearman zu starten:Was ist der Unterschied zwischen den Befehlen 'sudo gearmand -d' und 'sudo service gearman-job-server start'?

  • sudo gearmand -d

  • sudo Service gearman-job-Server

    starten

Was ist der Unterschied?

Wann man jedes von ihnen benutzt?

Vielen Dank für eine Rückmeldung!

+1

Ohne zu wissen, was im 'initman-job-server'-Init-Skript steht, kann dies nicht beantwortet werden. Wenn Sie * dieses * Skript haben, dann sollten Sie in der Lage sein, dies leicht selbst zu beantworten, indem Sie es betrachten. –

+0

Danke! Ich denke, ich werde nachsehen und versuchen zu verstehen, was im Drehbuch steht. –

Antwort

1

Nun, dies ist nicht spezifisch für die Übertragung, aber es gilt für fast alle Linux-Daemons/Dienste.

Das Programm/der Dienst kann auf verschiedene Arten aufgerufen werden. Direkt vom Terminal über Skripte in/etc und anderen Mitteln. Ich nehme an, Sie wissen, was Sudo tut.

# gearmand -d

Sie sind direkt gearmand ausführbar aufrufen. Die Shell weiß, wo sich die ausführbare Datei befindet, da PATH festgelegt ist. Sie können seinen Standort suchen, indem Sie "whereis gearmand" verwenden oder mit find suchen. Dies ist der direkte Weg zum Aufruf der Anwendung/des Dienstes.

"Daemon" ist ein Hintergrundprozess. Das Argument "-d" für gearman startet es im Daemon-Modus (im Hintergrund).

Vorteil/s:

  1. Wenn Sie mehrere Version des Dienstes auf der gleichen Maschine, in diesem Fall „gearman“ kompilieren, können Sie sie einzeln aufrufen, ohne die Installation/Neuinstallation.
  2. Manchmal wird die Installation nicht funktioniert oder der Dienst nicht Startup-Skripten usw.

Nachteil/s unterstützen könnten:

  1. Kann nicht geben eine einheitliche Ausgabe wie Standard-Skripte/Befehle.
  2. Möglicherweise müssen Sie den Speicherort der Datei wissen.

# service gearman-job-Server Start

ruft das Skript Service die in der Regel das Verzeichnis "/etc/init.d" untersucht. Wenn Sie herausfinden möchten, wo der Dienst die Dienste in Ihrer Linux-Distribution sucht, können Sie nachsehen. "-f2 |

den Standort von Dienstskript "whereis Service" Sucht es dann durch "weniger path_to_service" oder direkt mit einem "cut -d whereis Service" | in weniger öffnen xargs" weniger die Servicedatei zu sehen.

Die Service-Skript-Art standardisiert die Art, wie Skripte in Linux in diesen Tagen aufgerufen werden.

$ service service_name starten

service_name begann service_name

$ service

service_name beginnen bereits läuft

$ service service_name

stoppen

Dienstname gestoppt.

$ service service_name stoppen

service_name läuft nicht.

Dies bietet eine einheitliche Möglichkeit, alle Dienste zu starten oder zu stoppen.

+0

danke für die umfassende antwort! –