Hi Dirk On Fri, Sep 28, 2001 at 10:53:56PM +0200, Dirk Försterling wrote:
Naja, ich hatte das Ganze eigentlich zweimal relativ ausführlich gemailt.
ich wollt mir das auch nicht geben, die waren nicht so das man vernünftig drauf antworten konnte, sorry is so.
Hier ein kleinstes skript, das mit SuSE-Linux 6.2 bis 7.0 funktioniert aber nicht mehr mit 7.2. Versionsstand des Zielrechners ist hierbei irrelevant.
#!/bin/bash /usr/bin/ssh -l user zielrechner /bin/cp /tmp/old /tmp/new > /dev/null
In der crontab aufrufen mit
0 12 * * * user /pfad/zum/skript
Es wurde dafür gesorgt, daß ein Paßwortloses login möglich ist. Wenn ich bei diesem einfachen skript eine Umleitung < /dev/null auch noch hinten dran hänge, läuft es, ansonsten bleibt es einfach hängen. Prozeß "Schläft".
das bedeutet imho das dieser Aufruf etwas ausgibt und zwar vermutlich in stderr das sollte zu sehen sein wenn du es auf der kommandozeile aufrufst oder das er eine interaktion verlangt. Wenn man da nix sieht oder die meldung zum vergessen ist (weil auf der anderen seite nen altes ssh werkelt) dann hilft dir ein 2>&1 hinter der Ausgabeumleitung. Möglicherweise ist das aber auch die Frage die genau einmal kommt ob der gegenerische Host in die liste der known hosts eingetragen werden soll ... Wenn das alles nicht zutrifft schreib statt /dev/null ne richtige datei hin damit du mal siehst was schief läuft. cronjobs zu debuggen ist immer interessant und lustig, möglicherweise fehlt dem cp auch nur einfach sowas wie -f.
Wird statt ssh jedoch ein weiteres skritp oder ein Java-Programm aufgerufen das selbst wieder andere Programme aufruft (tar) dann gibt's ne I/O-Exception (illegal ioctl for this device). Wie gesagt: Erst mit 7.2 nicht mit 7.0. Von der Konsole oder aus einem xterm heraus funktioniert das Skript jedoch wunderbar.
es geht nicht nur darum ob es funktioniert, es geht auch darum ob es irgend eine Form der interaktion von dir verlangt. Ausserdem ist das Environment von cron /etwas/ spartanischer als von einem regulären user daher ist dieser Aufruf nicht in jedem Fall einfach so gleichzusetzen. Besagte Interaktion kann sich durchaus durch das eingeschränkte environment ergeben. Der richtige Weg sowas zu debuggen ist zuerst am userpromt zu testen bis es geht und dann entsprechende logfiles zu definieren und das spiel unter kontrolle von cron zu wiederholen - der Schluss 'es geht am userprompt also muss es auch beim cron gehen' ist grundfalsch.
Bei smbprint ("Drucker über Samba ansteuern) ist das anders gelagert, da hier cron nicht beteiligt ist.
gut wenn wir hier schonmal von den gleichen vorr. ausgehen. :-)
Wenn ich smbprint richtig verstanden habe leitet es die zu druckenden Daten via Pipe in smbclient. Zuvor werden noch Befehle in die Pipe geschrieben. Das funktioniert aber anscheinend nicht richtig. Smbprint ruft zwar den smbclient noch auf, aber dieser bleibt tatenlos aber mit 100% CPU-Last stehen ohne fortzuschreiten. Hier habe ich keine Ahnung wie ich drumrumarbeiten soll.
es haben sich irgendwann mal ein paar Parameter des smbclient geändert - in der form das mehr spezifiziert werden sollte bei dessen aufruf, smbprint will/wollte bisher sich ja auch nur als Beispiel verstanden wissen, daher solltest du einfach mal den aufruf von smbclient von Hand zusammen bauen und die Ausgaben interpretieren, das ist dein job als Admin das nimmt dir SuSE nicht ab. Es sollte mich nicht wundern wenn dem yast2 an dieser Stelle Tribut gezollt wurde damit das per yast2 administrierbar wird.
Das mit dem PATH ist klar. Das mit dem Terminal im allgemeinen auch. Bisher bedeutete das, daß Ausgaben ggf. Verloren sind und Programme bei Verlangen von Eingaben nicht weiterlaufen.
ebend
Meinst du damit, daß der ganze Sermon, den ich in "Diverse Probleme...." am 26.09. schrieb nicht genug ist? Ich weiß ja nicht mal, wo ich anfangen soll, nach der Problemursache zu suchen, daher wollte ich hier nicht mein ganzes /etc/ sowie alle Skripten senden, die davon betroffen sind.
nein es war so geschrieben das keiner incl. me Lust hatte auf sowas schwammiges zu Antworten, das war exact mein Eindruck. Nicht der umfang eines postings entscheidet darüber ob ich Lust habe es zu beantworten sondern ob ich die Frage ohne grosses suchen extrahieren kann und ob die dazu erforderlichen Angaben vorhanden sind und als solche zu erkennen. Auf Postings wie 'wein halbes System geht nicht, sagt mir mal was ich alles machen muss' antworte ich nicht. PS: wer ein update macht muss meistens damit rechnen selbstgeschriebenes anzupassen, das ist völlig normal und nicht pauschal ein Grund um auf SuSE zu schimpfen, obwohl im einen oder anderen Fall durchaus berechtigt aber erst wenn klar ist wo genau das Problem liegt. -- MfG. Falk