Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: GentooForum.de. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

16.10.2013, 21:53

Script läuft nicht als Cronjob

Hallo,
ich habe ein Script:

Quellcode

1
2
3
4
5
6
7
#!/bin/bash
source /etc/profile
if ping -c1 192.168.1.58 >/dev/null 2>&1; then 
        notify-send ".. ist erreichbar"
else    notify-send ".. ist nicht erreichbar"
        mplayer /usr/lib/libreoffice/share/gallery/sounds/drama.wav
fi

Im Terminal unter Gnome funktioniert es perfekt, mit und ohne Erreichbarkeit.
Als Cronjob wird per Mail diese Ausgabe gesendet (wenn ich >/dev/null 2>&1 weglasse!):

Quellcode

1
2
3
4
5
6
PING 192.168.1.58 (192.168.1.58) 56(84) bytes of data.
64 bytes from 192.168.1.58: icmp_seq=1 ttl=64 time=27.3 ms

--- 192.168.1.58 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 27.345/27.345/27.345/0.000 ms

Aber "notify-send" wird nicht abgearbeitet.
Wo liegt mein Denkfehler?
Danke!
Jörg
VDR-Server:
AMD Sempron 2200 - 512 MB - DVB-C 2 x Mystique CaBiX-C2
3.5.?-gentoo - MythTV 0.27 (UPnP-Clients BD-Player Sony und Philips TV)

VirtualBox-Host headless:
AMD Athlon 2-Kern - 4GB Ram VMware-Server 2 - mehrere virt. Maschinen mit Gentoo bzw. WinXP/Win7

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »joerg99« (27.10.2013, 13:40)


2

16.10.2013, 23:11

Hallo joerg99,

ich gehe davon aus das dass Programm notify-send nicht gefunden wird.
Man könnte jetzt im Script PATH erweitern oder Absolute Pfade verwenden.
Dies sollte auch für mplayer gelten.

Gruß
knasan

- Bug oder Feature, das darf man sich hier aussuchen. -

3

17.10.2013, 21:14

Zitat

oder Absolute Pfade verwenden.

Bringt nichts. Geht auch damit nicht.
Jörg
VDR-Server:
AMD Sempron 2200 - 512 MB - DVB-C 2 x Mystique CaBiX-C2
3.5.?-gentoo - MythTV 0.27 (UPnP-Clients BD-Player Sony und Philips TV)

VirtualBox-Host headless:
AMD Athlon 2-Kern - 4GB Ram VMware-Server 2 - mehrere virt. Maschinen mit Gentoo bzw. WinXP/Win7

4

18.10.2013, 11:59

mach doch mal ein Zeile

Quellcode

1
date >> /var/log/myscript.run
als 2. Zeile damit du siehst ob a) dein Script grundsätzlich aufgerufen wird oder es b) an einem Kommando im Script scheitert.
http://www.dyle.org
IM-Account (Jabber!) sind auf meiner HP ...
There is no place like /home

http://www.gentooforum.de
http://www.gentoofreunde.org

<div>how to annoy a web developer?</span>

5

19.10.2013, 21:32

Das Script selber läuft.

Quellcode

1
date >> /var/log/myscript.run

macht genau das, was es soll.

Zitat

Sa 19. Okt 21:00:01 CEST 2013
Sa 19. Okt 21:01:01 CEST 2013

Dann ist es wohl ein Problem mit dem notify-send.
Die Hilfe dazu gibt auch nicht viel zum debuggen her.
Jörg
VDR-Server:
AMD Sempron 2200 - 512 MB - DVB-C 2 x Mystique CaBiX-C2
3.5.?-gentoo - MythTV 0.27 (UPnP-Clients BD-Player Sony und Philips TV)

VirtualBox-Host headless:
AMD Athlon 2-Kern - 4GB Ram VMware-Server 2 - mehrere virt. Maschinen mit Gentoo bzw. WinXP/Win7

6

20.10.2013, 13:03

Hallo joerg99,
Dann ist es wohl ein Problem mit dem notify-send.
Die Hilfe dazu gibt auch nicht viel zum debuggen her.
ich hab mir das mal etwas genauer angesehen und getestet.
notify-send benötigt eine DISPLAY Variable auf diese die Nachricht verschickt werden soll.
Wenn nur ein X Server läuft, sollte 0.0 dein Display sein.

Quellcode

1
2
smk@turanga ~ $ echo $DISPLAY 
:0.0


Mein Cronjob (fcron)

Quellcode

1
2
3
4
DISPLAY=":0.0"

* 	*  	* 	*	*     	date >>/tmp/$USER.log
* 	*  	* 	*	*     	/usr/bin/notify-send "$USER hat gesendet" >>/tmp/$USER.log

Was ich nicht herausgefunden habe und auch nicht weiter verfolgt, warum notify-send als root wenn außerhalb von X (also TTY oder Cronjob) nicht funktioniert (macht übrigens /usr/bin/wall auch so.).
Läuft der Cronjob als Benutzer der auch eingeloggt ist, funktioniert das.

Debuggen könnte man das so
als Cronjob (bei mir fcron)

Quellcode

1
* 	*  	* 	*	*     	/usr/bin/strace /usr/bin/notify-send "$USER hat gesendet" >>/tmp/$USER.log


Wenn man ein Postfix am laufen hat bekommt man eine mail, wenn nicht wird das in ein dead.letter gespeichert.

Hoffe das hilft etwas.

Gruß Sandy
knasan

- Bug oder Feature, das darf man sich hier aussuchen. -

7

20.10.2013, 22:47

Wenn ich

Quellcode

1
/usr/bin/notify-send "$USER hat gesendet" >>/tmp/$USER.log
einbaue, werden zwar die Logs angelegt, aber die sind leer.
Die DISPLAY-Variable habe ich auch gesetzt.
Bringt alles nichts.
VDR-Server:
AMD Sempron 2200 - 512 MB - DVB-C 2 x Mystique CaBiX-C2
3.5.?-gentoo - MythTV 0.27 (UPnP-Clients BD-Player Sony und Philips TV)

VirtualBox-Host headless:
AMD Athlon 2-Kern - 4GB Ram VMware-Server 2 - mehrere virt. Maschinen mit Gentoo bzw. WinXP/Win7

8

21.10.2013, 07:52

Morgen,

notify-send macht keine Ausgaben, daher auch kein log.
Deswegen habe ich auch strace verwendet, dann stet auf jedem Fall drin was das Programm macht.
Strace hängt man sich im Programm rein und man sieht die System calls und Signale.

1. Läuft der Cron unter "root" oder deinem User?
2. was sagt den strace?

Sandy
knasan

- Bug oder Feature, das darf man sich hier aussuchen. -

9

21.10.2013, 22:17

So, es ist als ROOT gelaufen. Als normaler Nutzer, da finde ich nicht, wo die Ausgaben landen. Jedenfalls nicht in dead.letter des Nutzers.

Quellcode

1
* 	*  	* 	*	*     	/usr/bin/notify-send "$USER hat gesendet" >>/tmp/$USER.log

liefert an Auffälligkeiten:

Quellcode

1
2
3
4
5
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)

futex(0x7fff5b9aa98c, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 1, NULL, 7f43829eb700) = -1 EAGAIN (Resource temporarily unavailable)

open("/usr/lib64/charset.alias", O_RDONLY) = -1 ENOENT (No such file or directory)


Und hier nochmal die gesamte Ausgabe

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
execve("/usr/bin/notify-send", ["/usr/bin/notify-send", "root hat gesendet"], [/* 8 vars */]) = 0
brk(0)                                  = 0x1997000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f4382a24000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=205049, ...}) = 0
mmap(NULL, 205049, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f43829f1000
close(3)                                = 0
open("/usr/lib64/libnotify.so.4", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20,\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=31208, ...}) = 0
mmap(NULL, 2126584, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f43825fc000
mprotect(0x7f4382603000, 2093056, PROT_NONE) = 0
mmap(0x7f4382802000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x7f4382802000
close(3)                                = 0
open("/usr/lib64/libgobject-2.0.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p\310\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=326584, ...}) = 0
mmap(NULL, 2424600, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f43823ac000
mprotect(0x7f43823fa000, 2097152, PROT_NONE) = 0
mmap(0x7f43825fa000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4e000) = 0x7f43825fa000
close(3)                                = 0
open("/usr/lib64/libglib-2.0.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\340\306\1\0\0\0\0\0"..., 832) = 832
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f43829f0000
fstat(3, {st_mode=S_IFREG|0755, st_size=1192888, ...}) = 0
mmap(NULL, 3290256, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f4382088000
mprotect(0x7f43821a9000, 2097152, PROT_NONE) = 0
mmap(0x7f43823a9000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x121000) = 0x7f43823a9000
mmap(0x7f43823ab000, 1168, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f43823ab000
close(3)                                = 0
open("/lib64/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320%\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1732824, ...}) = 0
mmap(NULL, 3845408, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f4381cdd000
mprotect(0x7f4381e7e000, 2097152, PROT_NONE) = 0
mmap(0x7f438207e000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1a1000) = 0x7f438207e000
mmap(0x7f4382084000, 15648, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f4382084000
close(3)                                = 0
open("/usr/lib64/libgdk_pixbuf-2.0.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 c\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=134208, ...}) = 0
mmap(NULL, 2229760, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f4381abc000
mprotect(0x7f4381adc000, 2093056, PROT_NONE) = 0
mmap(0x7f4381cdb000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1f000) = 0x7f4381cdb000
close(3)                                = 0
open("/usr/lib64/libgio-2.0.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0000\37\3\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1372296, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f43829ef000
mmap(NULL, 3472864, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f438176c000
mprotect(0x7f43818b5000, 2097152, PROT_NONE) = 0
mmap(0x7f4381ab5000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x149000) = 0x7f4381ab5000
mmap(0x7f4381abb000, 3552, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f4381abb000
close(3)                                = 0
open("/usr/lib64/libffi.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\300\32\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=30880, ...}) = 0
mmap(NULL, 2127360, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f4381564000
mprotect(0x7f438156b000, 2093056, PROT_NONE) = 0
mmap(0x7f438176a000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x7f438176a000
close(3)                                = 0
open("/lib64/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320l\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=135076, ...}) = 0
mmap(NULL, 2212784, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f4381347000
mprotect(0x7f438135f000, 2093056, PROT_NONE) = 0
mmap(0x7f438155e000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x17000) = 0x7f438155e000
mmap(0x7f4381560000, 13232, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f4381560000
close(3)                                = 0
open("/lib64/librt.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\200(\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=35656, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f43829ee000
mmap(NULL, 2133016, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f438113e000
mprotect(0x7f4381146000, 2093056, PROT_NONE) = 0
mmap(0x7f4381345000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x7f4381345000
close(3)                                = 0
open("/usr/lib64/libgmodule-2.0.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220\22\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=14400, ...}) = 0
mmap(NULL, 2109824, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f4380f3a000
mprotect(0x7f4380f3d000, 2093056, PROT_NONE) = 0
mmap(0x7f438113c000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f438113c000
close(3)                                = 0
open("/lib64/libz.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220&\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=88440, ...}) = 0
mmap(NULL, 2183664, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f4380d24000
mprotect(0x7f4380d38000, 2097152, PROT_NONE) = 0
mmap(0x7f4380f38000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14000) = 0x7f4380f38000
close(3)                                = 0
open("/lib64/libresolv.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260@\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=84624, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f43829ed000
mmap(NULL, 2189960, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f4380b0d000
mprotect(0x7f4380b20000, 2097152, PROT_NONE) = 0
mmap(0x7f4380d20000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x13000) = 0x7f4380d20000
mmap(0x7f4380d22000, 6792, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f4380d22000
close(3)                                = 0
open("/lib64/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220\17\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=14592, ...}) = 0
mmap(NULL, 2109704, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f4380909000
mprotect(0x7f438090b000, 2097152, PROT_NONE) = 0
mmap(0x7f4380b0b000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f4380b0b000
close(3)                                = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f43829ec000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f43829eb000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f43829ea000
arch_prctl(ARCH_SET_FS, 0x7f43829eb700) = 0
mprotect(0x7f438207e000, 16384, PROT_READ) = 0
mprotect(0x7f4380b0b000, 4096, PROT_READ) = 0
mprotect(0x7f4380d20000, 4096, PROT_READ) = 0
mprotect(0x7f4380f38000, 4096, PROT_READ) = 0
mprotect(0x7f438155e000, 4096, PROT_READ) = 0
mprotect(0x7f4381345000, 4096, PROT_READ) = 0
mprotect(0x7f43823a9000, 4096, PROT_READ) = 0
mprotect(0x7f438113c000, 4096, PROT_READ) = 0
mprotect(0x7f438176a000, 4096, PROT_READ) = 0
mprotect(0x7f43825fa000, 4096, PROT_READ) = 0
mprotect(0x7f4381ab5000, 16384, PROT_READ) = 0
mprotect(0x7f4381cdb000, 4096, PROT_READ) = 0
mprotect(0x7f4382802000, 4096, PROT_READ) = 0
mprotect(0x602000, 4096, PROT_READ)     = 0
mprotect(0x7f4382a25000, 4096, PROT_READ) = 0
munmap(0x7f43829f1000, 205049)          = 0
set_tid_address(0x7f43829eb9d0)         = 7411
set_robust_list(0x7f43829eb9e0, 24)     = 0
futex(0x7fff5b9aa98c, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7fff5b9aa98c, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 1, NULL, 7f43829eb700) = -1 EAGAIN (Resource temporarily unavailable)
rt_sigaction(SIGRTMIN, {0x7f438134d730, [], SA_RESTORER|SA_SIGINFO, 0x7f4381357460}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {0x7f438134d7c0, [], SA_RESTORER|SA_RESTART|SA_SIGINFO, 0x7f4381357460}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
brk(0)                                  = 0x1997000
brk(0x19b8000)                          = 0x19b8000
getresuid([0], [0], [0])                = 0
getresgid([0], [0], [0])                = 0
open("/usr/lib64/charset.alias", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/var/lib/dbus/machine-id", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=33, ...}) = 0
read(3, "2b20b94621116fd5ecae6dfe507f16d4"..., 33) = 33
close(3)                                = 0
pipe([3, 4])                            = 0
pipe([5, 6])                            = 0
pipe([7, 8])                            = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f43829eb9d0) = 7413
close(4)                                = 0
close(6)                                = 0
close(8)                                = 0
read(3, "", 8)                          = 0
close(3)                                = 0
select(8, [5 7], NULL, NULL, NULL)      = 1 (in [7])
read(7, "Autolaunch error: X11 initializa"..., 4096) = 45
select(8, [5 7], NULL, NULL, NULL)      = 2 (in [5 7])
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=7413, si_status=1, si_utime=0, si_stime=0} ---
read(5, "", 4096)                       = 0
close(5)                                = 0
read(7, "", 4096)                       = 0
close(7)                                = 0
wait4(7413, [{WIFEXITED(s) && WEXITSTATUS(s) == 1}], 0, NULL) = 7413
open("/var/lib/dbus/machine-id", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=33, ...}) = 0
read(3, "2b20b94621116fd5ecae6dfe507f16d4"..., 33) = 33
close(3)                                = 0
pipe([3, 4])                            = 0
pipe([5, 6])                            = 0
pipe([7, 8])                            = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f43829eb9d0) = 7414
close(4)                                = 0
close(6)                                = 0
close(8)                                = 0
read(3, "", 8)                          = 0
close(3)                                = 0
select(8, [5 7], NULL, NULL, NULL)      = 1 (in [7])
read(7, "Autolaunch error: X11 initializa"..., 4096) = 45
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=7414, si_status=1, si_utime=0, si_stime=0} ---
select(8, [5 7], NULL, NULL, NULL)      = 2 (in [5 7])
read(5, "", 4096)                       = 0
close(5)                                = 0
read(7, "", 4096)                       = 0
close(7)                                = 0
wait4(7414, [{WIFEXITED(s) && WEXITSTATUS(s) == 1}], 0, NULL) = 7414
exit_group(0)                           = ?
+++ exited with 0 +++
VDR-Server:
AMD Sempron 2200 - 512 MB - DVB-C 2 x Mystique CaBiX-C2
3.5.?-gentoo - MythTV 0.27 (UPnP-Clients BD-Player Sony und Philips TV)

VirtualBox-Host headless:
AMD Athlon 2-Kern - 4GB Ram VMware-Server 2 - mehrere virt. Maschinen mit Gentoo bzw. WinXP/Win7

10

27.10.2013, 10:11

Hallo,

es gibt ein Programm namens "sw-notify-send" (sw = Systemwide), damit kann man ein Cronjob als "root" einrichten und die Nachrichten kommt auch beim User an.
Die Variable DISPLAY muss nicht gesetzt sein.

(meine fcron)

Quellcode

1
2
* * * * * date >>/tmp/$USER.log
* * * * * /usr/bin/sw-notify-send "hallo welt from $USER" >>/tmp/$USER.log


Das gleiche Thema gab es mal im ArchLinux Forum, daraufhin wurde sw-notify-send ins leben gerufen https://bbs.archlinux.org/viewtopic.php?id=114969

knasan
knasan

- Bug oder Feature, das darf man sich hier aussuchen. -

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »knasan« (27.10.2013, 10:17)


11

27.10.2013, 13:40

Zitat

es gibt ein Programm namens "sw-notify-send"

:thumbsup:
Das war's.
Es funktioniert. Und macht genau das, was es soll.
Danke!
Jörg
VDR-Server:
AMD Sempron 2200 - 512 MB - DVB-C 2 x Mystique CaBiX-C2
3.5.?-gentoo - MythTV 0.27 (UPnP-Clients BD-Player Sony und Philips TV)

VirtualBox-Host headless:
AMD Athlon 2-Kern - 4GB Ram VMware-Server 2 - mehrere virt. Maschinen mit Gentoo bzw. WinXP/Win7