ubuntuusers.de

Problem: at-jobs laufen nicht

Status: Gelöst | Ubuntu-Version: Ubuntu
Antworten |

sb

Anmeldungsdatum:
6. Juli 2006

Beiträge: Zähle...

Hallo,

ich habe ein Problem, von dem ich glaube, daß es erfahrene User recht schnell lösen können. ☺

Es geht um den at-Befehl und darum, daß ich ihn wahrscheinlich nicht richtig bedienen kann. Folgendes funktioniert bei mir auf zwei verschiedenen Rechnern (mit unterschiedlichen Distributionen - Breezy 5.10 und ein Debian) nicht:

cd ~ <ENTER>
at +1min <ENTER>
touch ein_test.asc<ENTER>
<ENTER>
<CTRL-D>

Nach einer Minute zeigt atq an:
20 2007-01-13 11:49 = grisu
20 2007-01-13 11:49 a grisu

und das bleibt auch so bis in alle Ewigkeit. Keine Datei namens ein_test.asc ist entstanden. Als User stehe ich natürlich nicht in der /etc/at.deny. Eine /etc/at.allow existiert nicht, was nach man-Page auch völlig in Ordnung geht.

Ein at -c 20 liefert mir ein Script, daß völlig ok aussieht. Ich kann es auch mit
at -c 20 > mach_mal.sh
und anschließenden chmod u+x mach_mal.sh ausführen lassen - es funktioniert.

Alternative Zeitangaben (wie z.B. at 11:30 13.01.2007) machen keinen Unterschied, d.h. die Sache läuft auch damit nicht.
Alternatives Ansetzen der Jobs macht auch keinen Unterschied aus (also z.b. echo "touch ein_test.asc" | at +1min)
An Schreibrechten für touch scheint es auch nicht zu liegen, denn dann würde ich eine Fehlermeldung erwarten, aber nicht, daß der Job bis in alle Ewigkeit in der Queue bleibt. (Daneben: ein touch /tmp/ein_test.asc tuts als at-job auch nicht)

Übrigens kommen keine Fehlermeldungen in /var/log/messages bezüglich atd rein. atd is up and running - habe ich natürlich geprüft.

Hat jemand von euch eine Idee, wo hier das Problem liegen könnte? Über hilfreiche Hinweise würde ich mich sehr freuen! ☺

haraldkl

Avatar von haraldkl

Anmeldungsdatum:
21. Juli 2005

Beiträge: 1903

Wohnort: Würselen

Hi,
müsste es nicht

at now + 1min


heißen?
Bei mir funktioniert es damit.
Vielleicht wäre es besser einen absoluten Pfad zu verwenden? Bei mir funktioniert es zwar auch mit dem relativen Pfad, aber sicher ist sicher. 😉

sb

(Themenstarter)

Anmeldungsdatum:
6. Juli 2006

Beiträge: 8

Hallo,

ich habe Deinen Vorschlag ausprobiert

Wenn das Schlüsselwort now nicht angegeben wird, setzt es at bei einer Angabe von "+ Zeitangabe" automatisch voraus, d.h.

at now + 1min
entspricht
at +1min

Ich habe dennoch zum Test mal diese alternative Zeitangabe ausprobiert, ebenso wie die Angabe des absoluten Pfades - beide Male ohne Erfolg, d.h. die Jobs werden nicht ausgeführt. Interessant ist ja auch, daß atq später anzeigt, daß die Jobs gerade ausgeführt werden. Sie verlassen aber die Queue nicht mehr, d.h. werden auf ewig als gerade ausgeführt durch atq angezeigt.

Hat jemand eine Idee, wie man dieses Problem systematisch angehen kann? Irgendwelche Protokollierungsmöglichkeiten? (nach /var/log/messages kommen leider keine Meldungen, siehe mein erstes Posting).

user_unknown

Avatar von user_unknown

Anmeldungsdatum:
10. August 2005

Beiträge: 17622

Wohnort: Berlin

asux:~ > at +1min
syntax error. Last token seen: +
Garbled time
asux:~ > at now +1min
warning: commands will be executed using /bin/sh
at> touch test.asc
at> <EOT>
job 1 at Sat Jan 13 15:53:00 2007
asux:~ > atq
1       Sat Jan 13 15:53:00 2007 a stefan
asux:~ > atq
asux:~ > l test.asc
-rw-r--r-- 1 stefan stefan 0 2007-01-13 15:53 test.asc
asux:~ >


Seltsam.
Zum einen, daß es bei mir funktioniert, zum anderen, daß ich auch now verwenden muß.
Welches at benutzt Du denn?

at -V
at version 3.1.9

(xubuntu 6.06)

sb

(Themenstarter)

Anmeldungsdatum:
6. Juli 2006

Beiträge: 8

Hallo,

@user-unknown: Du hast völlig recht. Ich habe eben mal "at" mit der edgy-live cd ausprobiert, und da hat alles funktioniert.

at -V
liefert bei mir auf meiner Maschine (unter Breezy):

at -V <ENTER>
at version 3.1.8


also nicht Version 3.1.9 - hier konnte ich problemlos das Schlüsselwort "now" weglassen.

Zum eigentlichen Problem:
Ich bin eben auf einen Bugreport gestoßen, der das Rätsel um das geheimnisvolle Nichtfunktionieren von at auf meinen beiden Maschinen klärt: Wenn ich mich als User anmelde mit einem Username, der unter 8 Zeichen lang ist, funktioniert alles einwandfrei, wie ich eben herausgefunden habe! ☺

Der Bug wird für User mit Namenlänge von 8 und mehr Zeichen aktiv, siehe

https://launchpad.net/ubuntu/breezy/+source/at/+bug/30498
sowie
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=115295

Vielen Dank für alle, die mitgegrübelt haben! ☺

(PS: Wäre schön gewesen, wenn der Fix mit der Updatefunktion von Breezy eingespielt worden wäre...)

Antworten |