Kann der Befehl 'at' weiterarbeiten, nachdem die ssh-Verbindung unterbrochen wurde?

686
Zen

Ich verwende ssh, um eine Verbindung zu einem Remote-Server herzustellen. Und ich führe aus

at 03:13Jun12 -f t.sh 

würde der entfernte Host diese 't.sh' um 03:13 Jun 12 ausführen, selbst wenn ich diese SSH-Verbindung unterbrochen habe? (Angenommen, der Remote-Host läuft weiter.)

1

1 Antwort auf die Frage

1
mtak

Ja es würde. Der Befehl at platziert das Skript in einer Datei /var/spool/cron/atjobs, die regelmäßig vom atdDämon überprüft wird .

Wenn dieser Befehl Superuser-Berechtigung benötigt. Hat es Wirkung, wenn ich am Anfang von at command einen Sudo hinzufüge? Zen vor 9 Jahren 0
Der `at`-Befehl hat ein [setuid] (http://en.wikipedia.org/wiki/Setuid) -Bit gesetzt. Wenn Sie es als normaler Benutzer ausführen, wird es als Benutzer` daemon` (unter Debian) ausgeführt: `- rwsr-sr-x 1 Daemon Daemon 46556 9. Juni 2012 / usr / bin / at `. Das Verzeichnis `/ var / spool / cron / atjobs` gehört ebenfalls dem Benutzer` daemon`. mtak vor 9 Jahren 0
Das heißt, was auch immer ich einen normalen Benutzer oder Root-Benutzer verwende, um einen 'at'-Befehl auszuführen, das System wird es zu einer bestimmten Zeit ausführen. Zen vor 9 Jahren 0
Ja, aber es wird als der Benutzer ausgeführt, der den at-Job erstellt hat. mtak vor 9 Jahren 0
Ich sah es. Ich lasse es als root laufen. Übrigens wird es auf dem exakten Dateipfad ausgeführt, in dem ich den 'at'-Befehl ausführt. Zen vor 9 Jahren 0
Das hängt von deiner Distribution ab. Debian `at` fügt vor dem Befehl automatisch eine` cd` hinzu. Überprüfen Sie die in `/ var / spool / cron / atjobs` erstellte Datei oder das Handbuch Ihrer Distribution. mtak vor 9 Jahren 0