Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha


Dica

Permissão de acesso ao servidor X (Slackware 13+)
Linux user
Publicado por Sergio Mira em 26/09/2011

Login: shbmira, 9288 pontos
[ Hits: 1242 ]

Permissão de acesso ao servidor X (Slackware 13+)

Olá, pessoal!

Sempre que reinstalo meu Slackware, após criar meu usuário e realizar as configurações básicas, surge um pequeno problema chato que pode ser resolvido de maneira simples. Quando faço login no meu usuário e abro o terminal como root, não consigo abrir aplicações gráficas como root, gerando a mensagem abaixo:

# mousepad arquivo.txt
    No protocol specified
    (mousepad:4800): Gtk-WARNING **: cannot open display: :0.0

Isso significa que o usuário root não tem permissão de acesso ao servidor gráfico X, pois este está sob uso do meu usuário. Para resolver este problema, deve-se dar permissão ao servidor X para os demais usuários, fazendo com que o mesmo deixe de ser de uso exclusivo, executando o comando abaixo:

$ xhost +

Quando voltar para o modo root e tentar executar qualquer aplicação gráfica, a aplicação abrirá.

Mas ficar fazendo isso a cada logon é desconfortável. Portanto, vamos criar um script básico que se iniciará com o sistema.

Logado como root, crie um script na pasta "/usr/bin/" (só para ficar organizado, indicando que este arquivo é um executável do usuário):

# nano habilitar_xhost.sh

Insira o conteúdo:

#!/bin/bash /usr/bin/xhost +

Salve o arquivo (no nano, apenas aperte CTRL+O, dê um ENTER e, após, CTRL+X para sair, se quiser pode usar outro editor de sua preferência).

Agora dê permissão de execução ao arquivo:

# chmod a+x habilitar_xhost.sh

Pronto, seu arquivo está criado.

Agora só falta colocá-lo para executar a cada logon.

Eu uso XFCE, cuja configuração de inicialização é facilmente configurada através do Menu -> Configurações -> Sessão e Inicialização.

Entre nesta configuração e vá até a aba "Início automático de aplicativo". Clique em "Adicionar". Dê um nome, coloque em "Comando" o caminho onde você criou o script (aqui no exemplo é "/usr/bin/habilitar_xhost.sh") e se quiser pode dar uma descrição em razão da organização.

Agora a permissão ao servidor gráfico X está configurada automatizadamente.

Sempre que precisar de um script para início automático que dependa apenas de comandos, pode-se utilizar esta configuração no XFCE, que é muito prática e nada mais faz do que adicionar seu script no arquivo de serviço que inicializa o sistema.

Até a próxima!


Outras dicas deste autor

Leitura recomendada
   Dica Linux recomendada Anjuta 1.2.4 e Ubuntu Edgy: Sim, é possível
   Dica Linux recomendada Dansguardian + Sarg
   Dica Linux recomendada KDE4: Plasma fecha com Signal 11 SIGSEGV
   Dica Linux recomendada Como liberar o telnet no CL 8.0
   Dica Linux recomendada Usando udev alternativo no Slackware 11

Comentários
[1] Comentário enviado por Fellype em 26/09/2011 - 15:54h:

Muito boa a dica! Eu costumava usar Alt+F2 -> kdesu aplicativo quando precisava abrir algum aplicativo gráfico como root. Mas quando estamos trabalhando com linha de comando, o ideal é abrir tudo a partir dali mesmo.

[2] Comentário enviado por mposser em 28/09/2011 - 13:55h:

Sergio, baittaa dica
Eu mero mortal que pouco sei, (mesmo assim uso Sackware)... por nao saber disso,
aprendi a usar o "CP" , o "PICO" o "NMAP" e mais um monte de soluçoes nao graficas :o)
assim atendo ao que eu precisava.
vlw por compartilhar
abraço!

[3] Comentário enviado por shbmira em 30/09/2011 - 23:01h:

Opa!
Valeu, galera!

Realmente, com edição de textos (que foi o exemplo que eu dei), você pode se virar muito bem com os editores clássicos.
Porém, há outros casos, por exemplo vamos supor que você queira atualizar o firefox ou o thunderbird pelo canal ao qual esteja conectado (da mozilla) diretamente, sem precisar ir ao site e fazer download. Basta você logar-se como root e abrir o firefox como processo-filho de um terminal e atualizá-lo. Sem esse dica, você teria que deslogar do seu usuário, logar como root, atualizar, para depois voltar ao seu usuário.
O processo é bem mais demorado!

A dica é mais para esses casos, e outros (que não seja editar textos), rs!

Abraços!


Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.