Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.

Perl System() Postmap per Cron funzt nicht.

Alles rund um die verschiedenen Konsolen und shells sowie die Programmierung unter Linux

Moderator: Moderatoren

Antworten
Blut
Newbie
Newbie
Beiträge: 24
Registriert: 29. Apr 2004, 13:59
Wohnort: Köln
Kontaktdaten:

Perl System() Postmap per Cron funzt nicht.

Beitrag von Blut »

Hallo,

Ich habe ein kleines Prob.

In meinen Script habe diesen Befehl eingetragen :

system ('postmap', $virt);

Wenn ich das Script auf der Shell per perl scriptname.pl ausführe funktioniert das ...
Der User Root per Crontab führt das Script aus und funkt, bis auf diesen Befehl ...

system ('postmap', $virt);

Weiß einer warum ?

Danke ...
taki
Advanced Hacker
Advanced Hacker
Beiträge: 974
Registriert: 30. Apr 2004, 17:40
Wohnort: Berlin

Beitrag von taki »

Der Thread ist zwar schon etwas verstaubt, aber da nie jemand geantwortet hat und die Frage an sich nicht uninteressant ist, will ichs mal klären.

Hier liegt der häufigste Fehler im Umgang mit cron vor. Wird ein Befehl von cron ausgeführt, ist der Pfad nicht gesetzt. Das gilt dann auch für den im Perlscript angegebenen System-Aufruf.

Also muss nicht nur das Script mit dem vollständigen Pfad in die crontab eingetragen werden, sondern auch beim System-Aufruf im Perlscript der Pfad vor den Befehl gestellt werden. Wenn postmap unter /usr/sbin liegt, muss der Aufruf also folgender Maßen lauten, damit er auch mit cron funktioniert:
system ('/usr/sbin/postmap', $virt);
SuSE 12.3 kernel 3.7.10-1.16-desktop, K Desktop Environment Version 4.10.5 r1 - Medion Titanium Aldi v. 03/2009
Antworten