Zum Inhalt springen

Cronjob läuft nicht bis zum Ende


Bosi

Empfohlene Beiträge

Hi,

ich eine seltsame Kuriosität auf meinem Suse Linux 8.2 System.

Ich habe folgendes Perlscript mir geschrieben:

#! /usr/bin/perl -w

#rcp -r x.x.x.x:/u/Daten/* /usr/Daten/archiv/

use Net::Telnet ();

my $user = "user1";

my $passw= "pass1";

my $tn = new Net::Telnet (

Timeout => 10800,

Prompt => '/user1>$/',

);

$tn->open("x.x.x.x");

$tn->waitfor('/login[: ]*$/');

$tn->print($user);

$tn->waitfor('/Password[: ]*$/');

$tn->print($passw);

$tn->print("\n");

$tn->waitfor('/user1>$/');

$tn->cmd("rcp -r /u/Daten/ x.x.x.x:/usr/Daten/archiv/");

exit;

Mit diesem Script hole ich mir verschiedene Daten von Rechner 1 zum Rechner2 im lokalen Netz (daher reicht rcp zu). Nachdem ich direkt von Rechner2 rcp ausgeführt hatte (ging eine Zeit lang) wollter das system nach einer weile ein Passwort haben trotz der Datei .rhosts (wie gesagt eine Weile ging das). Nachdem ich mehrere Versuche gemacht habe welche alle scheiterten habe ich mi für diese Script dann entschieden also erst per telnet mi an rechner 1 anzumelden. wenn ich dieses Script per Hand aufrufe läuft es ohne probleme. Ich habe dies als cronjob verwendet: * 1 * * * daten

dies läuft genau eine Stunde und dann hört er auf ohne Fehlermeldung obwohl er noch nicht alles kopiert hat. Einen Teil kopiert er aber nach einer stunde ist es vorbei.

Jetzt ist die Frage warum er das macht? Habe ich etwas falsch konfiguriert?

bin für jede Hilfe dankbar.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

ich denke, es liegt an der Zeile:


$tn->waitfor('/Password[: ]*$/');

Die Methode waitfor sucht nach dem Ausdruck '/Password[: ]*$/' aus dem Stream. Soweit ich weis, sollte der Anfangsbuchstabe klein geschrieben sein, also '/password[: ]*$/'.

Sehr wahrscheinlich liegt es daran, dass '/Password[: ]*$/' nicht gefunden wird, und Telnet läuft dann in den Timeout.

Gruß

xmurrix

Link zu diesem Kommentar
Auf anderen Seiten teilen

Nee leider kanns daran nicht liegen. Also wenn i mich per hand einlogge dann steht dort Password, zumal wenn i das script normal ausführe es auch wunderbar läuft. ist nur das problem das cronjob irgendwann abbricht. der macht ja was aber nur eine stunde lang. wenn die zeit um ist hört er auf zu kopieren und somit bekomme ich nur die hälfte der Daten statt alle.

Habe den Timeout auch extra hoch gesetzt, da ich dachte, dass er den rcp befehl zwar ausführt aber dann gleich die zeit zählt bis diese mit dem timeout übereinnimmt und dann auffhört obwohl der befehl eigentlich weiter ausgeführt wird.

aber auch das hat nix gebracht leider.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...