Xmessage: Unterschied zwischen den Versionen

Aus SchnallIchNet
Wechseln zu: Navigation, Suche
(Die Seite wurde neu angelegt: ===sende aus der shell eine nachricht auf einen X-Server=== ich benoetige das zum beispiel um einen gemounteten, verschluesselten container zu UN-mounten.<br/> ich pru...)
 
 
(3 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
===sende aus der shell eine nachricht auf einen X-Server===
+
==sende aus der shell eine nachricht auf einen X-Server==
  
 
ich benoetige das zum beispiel um einen gemounteten, verschluesselten container zu UN-mounten.<br/>
 
ich benoetige das zum beispiel um einen gemounteten, verschluesselten container zu UN-mounten.<br/>
Zeile 21: Zeile 21:
 
diese returncode stehen nach der betaetigung der buttons in der bash zur verfuegung...<br/>
 
diese returncode stehen nach der betaetigung der buttons in der bash zur verfuegung...<br/>
 
nach dem timeout von 120 sekunden beendet sich das fenster ebenfalls mit einem returncode von 0
 
nach dem timeout von 120 sekunden beendet sich das fenster ebenfalls mit einem returncode von 0
 +
 +
{{Achtung|Damit der spass als cronjob funktioniert muss man den user, der den cronjob ausfuehr fuer den X-server freigeben
 +
und zwar als der user der den X-server gestartet hat!!}}
 +
/usr/bin/xhost +si:localuser:root
 +
das ganze ist natuerlich unnoetig wenn der cronjob-user mit dem X-user identisch ist... ;-)<br/>
 +
ausserdem ist es natuerlich unschoen seinen X-server fuer root freizugeben!!!<br/>
 +
um das zu vermeiden koennte man auch einfach ein '''su''' verwenden
 +
su MyUserName -c xmessage -nearmouse -buttons "(J)etzt nicht":255,"(N)a klar":0 -timeout 120 -file /etc/cryptmount.xmessage
 +
so kann man sich die freigabe des X-server ueber xhosts sparen!<br/>
 +
wichtig ist nur, dass '''MyUserName''' der user ist, der sich am X-server anmeldet
 +
 +
 +
[[Kategorie:X11]]

Aktuelle Version vom 16. Dezember 2009, 16:13 Uhr

sende aus der shell eine nachricht auf einen X-Server

ich benoetige das zum beispiel um einen gemounteten, verschluesselten container zu UN-mounten.
ich pruefe also im script, ob der container entschluesselt und gemountet ist und sende VOR dem umount eine X-Message auf den Bildschirm.
wird diese nachricht nicht bestaetigt wird der umount durchgefuehrt...

xmessage -nearmouse -buttons "(J)etzt nicht":255,"(N)a klar":0 -timeout 120 -file /etc/cryptmount.xmessage

mit -file gebe ich den datei-pfad/-namen an, der als text angezeigt werden soll.
in meinem fall:

Verschluesselter Container ist gemounted!!!!!
Ich werde diesen in 120 sec. UN-mounten!!

Druecke "Jetzt nicht" um den Vorgang abzubrechen
oder "Na klar" um sofort einen UN-mount durchzufuehren.

unterhalb des textes werden 2 buttons angezeigt:

  1. (J)etzt nicht --> mit einem returncode von 255
  2. Na klar --> mit einem returncode von 0

diese returncode stehen nach der betaetigung der buttons in der bash zur verfuegung...
nach dem timeout von 120 sekunden beendet sich das fenster ebenfalls mit einem returncode von 0

Achtung.jpeg Damit der spass als cronjob funktioniert muss man den user, der den cronjob ausfuehr fuer den X-server freigeben

und zwar als der user der den X-server gestartet hat!!

/usr/bin/xhost +si:localuser:root

das ganze ist natuerlich unnoetig wenn der cronjob-user mit dem X-user identisch ist... ;-)
ausserdem ist es natuerlich unschoen seinen X-server fuer root freizugeben!!!
um das zu vermeiden koennte man auch einfach ein su verwenden

su MyUserName -c xmessage -nearmouse -buttons "(J)etzt nicht":255,"(N)a klar":0 -timeout 120 -file /etc/cryptmount.xmessage

so kann man sich die freigabe des X-server ueber xhosts sparen!
wichtig ist nur, dass MyUserName der user ist, der sich am X-server anmeldet