Verwenden von Medienschlüsseln in ip netns

388
ImGunther

Ich habe also Debian 9 mit KDE ausgeführt, und da Spotify den Offline-Modus nicht unterstützt, habe ich gerade einen neuen Namespace erstellt ( ip netns add jail ) und einfach Spotify in diesem ns ausführen ( ip netns exec jail su user -c spotify ). Aber wenn ich das tue, funktionieren die Medientasten nicht (Play, Next usw.).
Irgendwelche Ideen werden geschätzt

0
Sie haben ein veth-Paar hinzugefügt, um mit dem Hauptnamensraum zu kommunizieren? Ihr Hauptnamensraum macht Routing / NAT, was ist erforderlich? dirkt vor 6 Jahren 1
Ich habe es jetzt mehrere Tage versucht, konnte es aber nicht schaffen, könnten Sie mir helfen? Ich habe versucht zu suchen, aber ich glaube, ich bin zu schwach. ImGunther vor 6 Jahren 0

1 Antwort auf die Frage

0
dirkt

Hier ist ein kleines Bash-Skript, um einen neuen Namespace zu erstellen, ein veth-pair einzurichten und ein xtermin diesem Namespace zu starten :

#!/bin/bash  # Setup network namespace with veth pair, start xterm in it  # nsterm ns0 veth0 10.0.0 yellow 24  if [[ $EUID -ne 0 ]]; then echo "This script must be run as root" 1>&2 exit 1 fi  NS=$ DEV=$ DEV_A=$a DEV_B=$b ADDR=$ ADDR_A=$.254 ADDR_B=$.1 MASK=$ COL=$  # echo ns=$NS dev=$DEV col=$COL mask=$MASK  ip netns add $NS ip link add $DEV_A type veth peer name $DEV_B netns $NS ip addr add $ADDR_A/$MASK dev $DEV_A ip link set $a up ip netns exec $NS ip addr add $ADDR_B/$MASK dev $DEV_B ip netns exec $NS ip link set $b up ip netns exec $NS ip route add default via $ADDR_A dev $DEV_B ip netns exec $NS su -c "xterm -bg $COL &" your_userid 

Ersetzen Sie your_useridin der letzten Zeile Ihre Benutzer-ID, damit susich dies ändern kann. Verwenden Sie ip addrund ip routesowohl in diesem xtermals auch in einem anderen Terminal, um die Netzwerkkonfiguration zu verstehen.

Führen Sie nun xevden neuen xtermBefehl aus, und überprüfen Sie, ob die Medienschlüssel funktionieren (es gibt wirklich keinen Grund, warum dies nicht der Fall sein sollte. Die Schlüssel selbst haben nichts mit Netzwerk-Namespaces zu tun).

Der Netzwerk-Namensraum verhält sich wie ein separater kleiner Computer in Ihrem Computer, so dass Sie ihn von Ihrem "echten" Computer (Haupt-Namensraum) irgendwie mit Ihrem Router verbinden müssen, z. B. durch Verwendung von NAT on veth0a(google for tutorials: Sie müssen die Weiterleitung aktivieren und Maskeradenregeln iptables).

Testen Sie, ob der neue Namespace erfolgreich mit Ihrem Router verbunden ist ping google.com(oder was auch immer).

Versuchen Sie schließlich, spotify vom neuen zu starten xterm. Wenn die obigen Tests alle erfolgreich sind, sollte es funktionieren.

Vielen Dank für diese gut gemachte Anleitung! Leider funktioniert es immer noch nicht ganz gut. Ip addr zeigt, dass das script funktioniert, ip route in xterm gibt jedoch nichts aus. Xev zeigt, dass die Tastatureingaben registriert sind, dies hat jedoch keine Auswirkungen auf spotify. Ich schätze Ihre Hilfe jedoch sehr, wenn ich es irgendwie schaffe, sie irgendwie zum Laufen zu bringen, werde ich sie hier posten ImGunther vor 6 Jahren 0