Am 20.05.2022 bekommt das Forum ein neues Update. Ab ca. 12:00 ist das Forum nicht mehr erreichbar und wird spätestens am 21.05. wieder online sein. Alle bis dahin erstellten Daten bleiben natürlich erhalten.

Vielen Dank für euer Verständnis. Bei Rückfragen: webmaster@linux-club.de (Christian)

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