von root auf kdesudo -u Problem

KDE, Gnome, Windowmanager, X11, Grafiktreiber und alles was dazu notwendig ist. Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
Benutzeravatar
fulltilt
Beiträge: 1157
Registriert: 03.12.2006 20:10:57

von root auf kdesudo -u Problem

Beitrag von fulltilt » 12.12.2016 12:18:25

Plasma 5 / Testing

ich verwende eine zweite Tastatur für Shortcuts die ich über actkbd als root ansteuern muss ...
http://users.softlab.ntua.gr/~thkala/projects/actkbd/

Das Problem dabei ist das die Shortcuts nun als Root ausgeführt werden
also hier z.b. ein Befehl als Shortcut:

Code: Alles auswählen

96:::sudo -u user DISPLAY=:0 dolphin
passiert auch wenn ich als root ausführe
kdesudo -u user dolphin
dann geht ein kaputtes Root Dolphin Fenster auf ohne Icons usw

Wie kann ich das Problem lösen bzw. ein als Root ausgeführter Befehl auf die User Oberfäche geben mit ganz normalen User Rechten?
Debian: Testing
Desktop: KDE Plasma 5

Benutzeravatar
fulltilt
Beiträge: 1157
Registriert: 03.12.2006 20:10:57

Re: von root auf kdesudo -u Problem

Beitrag von fulltilt » 12.12.2016 14:09:20

scheint nur zu funktionieren wenn das Gerät event5 (Keypad) dem User gehört ....
chown user.user /dev/input/event5

ist das so noch sicherheitsmässig OK wenn ich das Keypad dem User so zuordne ...
und gehen die User Rechte darauf nicht wieder verloren?
Debian: Testing
Desktop: KDE Plasma 5

uname
Beiträge: 12075
Registriert: 03.06.2008 09:33:02

Re: von root auf kdesudo -u Problem

Beitrag von uname » 12.12.2016 14:23:42

Was willst du mit sudo bzw. kdesudo. Sind wir hier bei Ubuntu? Versuche doch mal su oder kdesu . Von root auf einen anderen User mit "su - user" sollte auch nicht nach dem Passwort gefragt werden.

Benutzeravatar
fulltilt
Beiträge: 1157
Registriert: 03.12.2006 20:10:57

Re: von root auf kdesudo -u Problem

Beitrag von fulltilt » 12.12.2016 14:53:54

uname hat geschrieben:Was willst du mit sudo bzw. kdesudo. Sind wir hier bei Ubuntu? Versuche doch mal su oder kdesu . Von root auf einen anderen User mit "su - user" sollte auch nicht nach dem Passwort gefragt werden.
Danke, das Problem ist das dieses Script als Root läuft und das Gerät event5 root:input gehört ...
Ich muss jetzt nicht gleich den User in die Gruppe input setzen ... das chown als Startscript tut es auch für dieses eine Gerät
es gibt wahrscheinlich noch eine elegantere Lösung, aber ich denke so gehts auch für das Keypad
Debian: Testing
Desktop: KDE Plasma 5

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: von root auf kdesudo -u Problem

Beitrag von rendegast » 12.12.2016 15:21:54

Da könntest Du allein für das keypad mit xkb entsprechende, auf dem normalen keyboard nicht benutzte keycode setzen.
Per xbindkeys dann die gewünschten Funtionen/Skripte an diese keycode binden.



http://superuser.com/questions/760602/h ... board-only
Yes, it's possible using XKB. Unlike xmodmap, XKB can remap your keys for individual devices.

Note: Make sure you have xkbcomp > 1.2.0

First list your devices with:

Code: Alles auswählen

xinput list
You'll get something like this:

Code: Alles auswählen

⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Wacom Bamboo Pen Pen stylus               id=11   [slave  pointer  (2)]
⎜   ↳ Wacom Bamboo Pen Finger touch             id=12   [slave  pointer  (2)]
⎜   ↳ Logitech USB-PS/2 Optical Mouse           id=13   [slave  pointer  (2)]
⎜   ↳ Wacom Bamboo Pen Pen eraser               id=14   [slave  pointer  (2)]
⎜   ↳ Wacom Bamboo Pen Finger pad               id=15   [slave  pointer  (2)]
⎜   ↳ GASIA USB KB V11                          id=17   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Power Button                              id=7    [slave  keyboard (3)]
    ↳ G19 Gaming Keyboard                       id=8    [slave  keyboard (3)]
    ↳ G19 Gaming Keyboard                       id=9    [slave  keyboard (3)]
    ↳ Logitech G19 Gaming Keyboard              id=10   [slave  keyboard (3)]
    ↳ GASIA USB KB V11                          id=16   [slave  keyboard (3)]
Identify the string of your device and edit the following shell script, changing the sed line with one that fits your device's name. Then change the keys you need remapped.

Example: Load xev and press a key you want to remap. Suppose you find out it's keycode 84. Lookup 84 in https://gist.github.com/zoqaeski/3880640. The key name there is <KP5>. Then lookup the key you want it replaced by (in the same link, farther below) and copy what's inside the brackets. Repeat the process for all the keys you want.

Code: Alles auswählen

remote_id=$(
    xinput list |
    sed -n 's/.*GASIA.*id=\([0-9]*\).*keyboard.*/\1/p'
)
[ "$remote_id" ] || exit

# remap the following keys, only for my custom vintage atari joystick connected
# through an old USB keyboard:
#
# keypad 5 -> keypad 6
# . -> keypad 2
# [ -> keypad 8
# left shift -> left control

mkdir -p /tmp/xkb/symbols
cat >/tmp/xkb/symbols/custom <<\EOF
xkb_symbols "remote" {
    key <KP5>  { [ KP_Right, KP_6, U2192, U21D2 ]       };
    key <I129> { [ KP_Down, KP_2, U2193, U21D3 ]       };
    key <AD12> { [ KP_Up, KP_8, U2191, U21D1 ]  };
    key <LFSH> { [ Control_L ]        };
};
EOF

setxkbmap -device $remote_id -print | sed 's/\(xkb_symbols.*\)"/\1+custom(remote)"/' | xkbcomp -I/tmp/xkb -i $remote_id -synch - $DISPLAY 2>/dev/null
Then source it (you can add it to your .xinitrc). All done! Now pressing the keys should generate the desired output, only for the device you specified.

answered Jan 24 '15 at 23:55
Watcom
Zuletzt geändert von rendegast am 12.12.2016 15:32:00, insgesamt 1-mal geändert.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Benutzeravatar
fulltilt
Beiträge: 1157
Registriert: 03.12.2006 20:10:57

Re: von root auf kdesudo -u Problem

Beitrag von fulltilt » 12.12.2016 15:30:44

rendegast hat geschrieben:http://superuser.com/questions/760602/h ... board-only
Da könntest Du allein für das keypad mit xkb entsprechende, auf dem normalen keyboard nicht benutzte keycode setzen.
Per xbindkeys dann die gewünschten Funtionen/Skripte an diese keycode binden.
Danke,
genau das war mein Problem mit xbindkeys, das mein NumBlock der Standard Tastatur ebenfalls auf die Shortcuts vom Keypad reagiert hat ...
deshalb bin ich bei actkbd gelandet :mrgreen:
Na ja, momentan funktioniert alles so mit dem actkbd, es reagiert nur noch auf die Shortcuts, die eigentlichen Tasten habe ich deaktiviert:
xinput set-prop 10 "Device Enabled" 0

Hab jetzt mein Standard Keyboard mit funktionierendem NumBlock und daneben das Keypad für nur Shortcuts ...

das mit der xkbcomp Lösung teste ich aber am Wochenende nochmal
Debian: Testing
Desktop: KDE Plasma 5

Antworten