Итак, я запускаю Debian 9 с KDE, и поскольку Spotify не поддерживает автономный режим, я просто создал новое пространство имен (ip netns add jail) и просто запускаю Spotify в этом ns (ip netns exec jail su user -c spotify), но когда я делаю это, клавиши мультимедиа не работают (воспроизведение, затем и т. д.).
Любые идеи приветствуются

1 ответ1

0

Вот небольшой скрипт bash для создания нового пространства имен, установки пары veth и запуска xterm в этом пространстве имен:

#!/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=${1:-ns0}
DEV=${2:-veth0}
DEV_A=${DEV}a
DEV_B=${DEV}b
ADDR=${3-:10.0.0}
ADDR_A=${ADDR}.254
ADDR_B=${ADDR}.1
MASK=${5:-24}
COL=${4:-yellow}

# 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 ${DEV}a up
ip netns exec $NS ip addr add $ADDR_B/$MASK dev $DEV_B
ip netns exec $NS ip link set ${DEV}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

Замените your_userid в последней строке своим идентификатором пользователя, чтобы su мог изменить его. Используйте ip addr и ip route как в этом xterm и в каком-то другом терминале, чтобы понять конфигурацию сети.

Теперь запустите xev из нового xterm и убедитесь, что медиа-ключи работают (на самом деле нет причин, по которым они не должны этого делать, сами ключи совершенно не связаны с сетевыми пространствами имен).

Пространство имен сети действует как отдельный маленький компьютер внутри вашего компьютера, поэтому вам все равно нужно, чтобы ваш "настоящий" компьютер (основное пространство имен) каким-то образом подключил его к маршрутизатору, например, с помощью NAT на veth0a (google для учебников: вам нужно включить переадресация и маскировка правил iptables ).

Проверьте, что новое пространство имен успешно подключено к вашему маршрутизатору с помощью ping google.com (или любого другого).

Наконец, попробуйте запустить spotify из нового xterm . Если все вышеперечисленные тесты пройдены успешно, это должно сработать.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .