killproc und pidofproc unter Linux

7

Ich habe ein Skript, das die Befehle killproc und procopid verwendet und auf einer 64bit-suse gut ausführt. Aber als ich das Skript auf 32bit redhat ausgeführt habe, habe ich festgestellt, dass die obigen Befehle nicht existieren.

Ich habe keine 32bit Suse und 64bit redhat Maschinen, um mein Skript zu testen.

Ist meine Vermutung richtig, dass auf 64bit redhat die obigen Befehle verfügbar sein sollten? Oder sind die obigen Befehle spezifisch für Suse und redhat?

Danke

    
hits_lucky 10.06.2010, 11:21
quelle

6 Antworten

4

Die Befehle sind wahrscheinlich nicht tragbar. Das ist das erste Mal, dass ich von ihnen höre - aber ich denke, dein Problem ist es, mit dem Prozess mit dem Namen zu arbeiten, nicht mit pid.

Überprüfen Sie die man pgrep oder man pkill - sie sind etwas tragbarer. Sie sind Teil von procps package (wobei ps und top herkommen) und sollten für alle Linux-Varianten verfügbar sein. Sie sind auch unter Solaris verfügbar.

    
Dummy00001 10.06.2010, 18:41
quelle
8

killproc befindet sich in redhat enterprise linux 5.4 als Teil von /etc/init.d/functions

Wenn Sie es brauchen, tun Sie

. /etc/init.d/functions

in Ihrem Skript, um die Shell-Funktionen zu laden, ist es wahrscheinlich in anderen Versionen von redhat, aber das ist das einzige, das ich im Moment

übergeben muss     
RusHughes 26.07.2011 16:57
quelle
6

Diese Befehle sind als definiert die Linux Standards Base (LSB), wie von @AndreKR angegeben.

Bei einigen Systemen wie Redhat (und wahrscheinlich SUSE) sind diese Funktionen jedoch abhängig von den installierten Paketen möglicherweise nicht an dem vom LSB angegebenen Speicherort definiert, der /lib/lsb/init-functions ist. Sie sind vielmehr in /etc/init.d/functions definiert. Außerdem fehlt in einigen Red Hat Versionen von /etc/init.d/functions die LSB-definierte Funktion start_daemon . Wenn Sie das folgende Snippet an den Anfang Ihres Skripts hinzufügen, sollte es in den meisten Distributionen / Installationen portierbar sein:

%Vor%     
Raman 01.03.2014 17:53
quelle
2

Die in Ubuntu verwendeten sind Teil der Spezifikation " Linux Standard Base " und sind dokumentiert hier .

    
AndreKR 26.11.2012 00:29
quelle
0

Ich denke, diese Befehle sind Spezifika: Ich habe sie noch nie zuvor gesehen. Killproc sollte eine Art Tötung sein, aber was soll Procopwid tun?

In dem Titel, den Sie über pidofproc sprechen, finden Sie diesen Befehl unter den meisten Linux-Boxen unter pidof.

    
Aif 10.06.2010 11:24
quelle
-1

Ich hatte das gleiche Problem wie Sie, es gab die Warnung:

  

pidof: ungültige Optionen in der Befehlszeile!

Ich habe das

geändert %Vor%

bis

%Vor%     
vinian 26.07.2011 10:07
quelle

Tags und Links