Execute xhost +local:
em um terminal sem ser superusuário para corrigir o problema. Abaixo os detalhes.
O problema é que o xterm não funciona por padrão quando autenticado como superusuário (Mininet deve ser executado como superusuário), por motivos de segurança.
Você pode verificar se esse é o seu problema executando xterm
e sudo xterm
em um terminal quando estiver logado como de costume (se você fez algo como sudo su
antes que essa verificação seja inútil).
Se xterm
abrir, mas sudo xterm
não, então você precisa executar
xhost +local:
sudo xterm
deve funcionar agora, bem como h1 xterm
dentro do Mininet.
Isso porque, com esse comando, você forneceu acesso ao servidor gráfico a aplicativos em execução como sudo
ou su
.
A configuração não persiste entre as reinicializações e pode ser revertida com xhost -
.
Por favor note que, ao fazer isso, você está dando a qualquer usuário no sistema ou à rede acesso ao seu $ DISPLAY sem autenticação ( link ).