Xorg (Português) - ArchWiki

Jump to content

# Xorg (Português)

From ArchWiki
Status de tradução: Este artigo é uma tradução de Xorg. Data da última tradução: 2020-07-15. Você pode ajudar a sincronizar a tradução, se houver alterações na versão em inglês.

Artigos relacionados

- Inicialização automática
- Gerenciador de exibição
- Gerenciador de janela
- Configuração de fontes
- Temas de cursor
- Ambiente de desktop
- Wayland
- xinit
- xrandr

Da https://www.x.org/wiki/:

  O projeto X.Org oferece uma implementação de código aberto do Sistema de janelas X. O desenvolvimento é realizado em conjunto com a comunidade freedesktop.org. X.org é uma corporação educacional sem fins lucrativos, liderada pelo conselho e membros do projeto.

Xorg (normalmente chamado de X) é o servidor de exibição mais popular entre os usuários do Linux. Sua onipresença lhe fez um pré-requisito para programas GUI, Isto resultou em uma massiva adoção na maioria das distribuições Linux. Veja a página do Wikipédia Xorg ou visite o site do Xorg para mais informações.

## Instalação

Xorg pode ser instalado com o pacote xorg-server.

Alguns pacotes do grupo xorg-apps são necessários para certas tarefas de configuração, eles serão destacados nas seções relevantes.

O grupo xorg também é uma opção, ele oferece pacotes do servidor Xorg, pacotes do grupo xorg-apps e fontes.

Dica Você irá normalmente instalar um gerenciador de janelas ou um ambiente desktop para suplementar o X.

### Instalação de driver

O kernel Linux inclui drivers de vídeo de código aberto e suporta aceleração de hardware para framebuffers. No entanto, é necessário suporte para OpenGL e aceleração 2D no X11.

Primeiro, identifique sua placa:

    $ lspci | grep -e VGA -e 3D

Então, instale o driver apropriado. Você pode procurar por uma lista completa de drivers de vídeo com:

    $ pacman -Ss xf86-video

Xorg procura por drivers de vídeo instalados automaticamente:

- Se ele não achar o driver específico instalado (listados abaixo), ele primeiro procura por fbdev (xf86-video-fbdev).
- Se não for achado, ele procura por vesa (xf86-video-vesa), o driver genérico, que manuseia um grande número de chipsets mas não inclui nenhuma aceleração 2D e 3D.
- Se vesa não é encontrado, Xorg irá fazer uso do kernel mode setting, que inclui aceleração GLAMOR (veja modesetting(4)).

Para aceleração de vídeo funcionar, e geralmente para usar todos os modos configuráveis da GPU, é necessário o driver apropriado:

Marca | Tipo | Driver | OpenGL | OpenGL (multilib) | Documentação
--- | --- | --- | --- | --- | ---
AMD / ATI | Código aberto | xf86-video-amdgpu | mesa | lib32-mesa | AMDGPU
xf86-video-ati | ATI
Intel | Código aberto | xf86-video-intel | mesa | lib32-mesa | Gráficos Intel
NVIDIA | Código aberto | xf86-video-nouveau | mesa | lib32-mesa | Nouveau
Proprietário | nvidia[link quebrado: package not found] | nvidia-utils | lib32-nvidia-utils | NVIDIA
nvidia-390xx-dkmsAUR | nvidia-390xx-utilsAUR | lib32-nvidia-390xx-utilsAUR

Nota

- Para habilitar NVIDIA Optimus que usa uma placa de vídeo integrada com uma placa GPU dedicada, Veja NVIDIA Optimus.
- Para gráficos Intel da quarta geração e posterior, veja Intel graphics#Installation para drivers disponíveis.

Outros drivers de vídeo podem ser encontrados no grupo xorg-drivers.

Xorg deve rodar suavemente sem drivers de código fechado, que são tipicamente necessários somente para características avançadas como rápida renderização 3D para jogos. As exceções para esta regra são GPUs recentes (especialmente GPUs da NVIDIA), que não são suportadas por drivers de código aberto.

### AMD

Arquitetura da GPU | Placas Radeon | Driver de código aberto | Driver proprietário
--- | --- | --- | ---
GCN 4 e recentes | vários | AMDGPU | não disponível
GCN 3 | AMDGPU | não disponível
GCN 2 | AMDGPU* / ATI | não disponível
GCN 1 | AMDGPU* / ATI | não disponível
TeraScale 2&3 | HD 5000 - HD 6000 | ATI | não disponível
TeraScale 1 | HD 2000 - HD 4000 | não disponível
Mais antigo | X1000 e antigo | não disponível

  *: Experimental

## Iniciando

O comando Xorg(1) não é normalmente iniciado diretamente, ao invés disso o servidor X é iniciado por um gerenciador de exibição ou xinit.

## Configuração

Nota Arch supre os arquivos de configuração padrão em `/usr/share/X11/xorg.conf.d/`, nenhuma configuração extra é necessária para a maioria dos casos.

Xorg usa o arquivo de configuração `xorg.conf` e arquivos terminando com o sufixo `.conf` para sua inicialização: a lista completa das pastas onde estes arquivos são procurados podem ser encontrados em xorg.conf(5), juntamente com explicações detalhadas de todas as opções disponíveis.

### Usando arquivos .conf

O diretório `/etc/X11/xorg.conf.d/` guarda configurações específicas do usuário. Você é livre para adicionar arquivos de configuração, mas eles deve ter o sufixo `.conf`: os arquivos são lidos na ordem ASCII, e por convenção seus nomes começam com `XX-` (dois dígitos e um hífen, e por exemplo, 10 é lido antes de 20). Estes arquivos são analisados pelo servidor X e são tratados como parte do arquivo de configuração tradicional `xorg.conf`. Note que em caso de configuração conflitante, o arquivo lido por último será processado. Por esta razão os arquivos de configuração genéricos devem ser ordenados primeiro por nome. As configurações no arquivo `xorg.conf` são processadas no final.

Para opções de configuração, veja também a página da wiki do Fedora.

### Usando xorg.conf

Xorg pode ser configurado modificando `/etc/X11/xorg.conf` ou `/etc/xorg.conf`. Você também pode gerar um esqueleto do para `xorg.conf` com:

    # Xorg :0 -configure

Isto deve criar um arquivo `xorg.conf.new` em `/root/` que você pode copiar para `/etc/X11/xorg.conf`.

Dica Se você já está rodando um servidor X, use uma exibição (display) diferente. Por exemplo, `Xorg :2 -configure`.

Alternativamente, seu driver proprietário pode vir com uma ferramenta para automaticamente configurar o Xorg: veja o artigo do seu driver de vídeo, NVIDIA, para mais detalhes.

Nota Palavras-chave de arquivo de configuração não diferenciam maiúsculas/minúsculas, e caracteres "_" são ignorados. A maioria das palavras (incluindo nomes de opções) também não diferenciam maiúsculas/minúsculas, o mesmo acontece com os caracteres de espaço e "_".

## Dispositivos de entrada

Para dispositivos de entrada o servidor X usa o driver libinput (xf86-input-libinput), mas xf86-input-evdev e drivers relacionados estão disponíveis como alternativa.[1]

Udev, oferecido como dependência do systemd, irá detectar o hardware e ambos os drivers irão agir dinamicamente como driver de entrada para quase todos dispositivos, como definido nos arquivos de configuração padrão `10-quirks.conf` e `40-libinput.conf` no diretório `/usr/share/X11/xorg.conf.d/`.

Depois de iniciar o servidor X, o arquivo de log irá mostrar que driver foi selecionado para dado dispositivo (note que o nome do arquivo de log mais recente pode variar):

    $ grep -e "Using input driver " Xorg.0.log

Se ambos não suportam um dispositivo particular, instale o driver necessário do grupo xorg-drivers. O mesmo se aplica, se você quiser usar outro driver.

Para influenciar a troca dinâmica entre os drivers, Veja #Configuração.

Para instruções específicas, veja também o artigo libinput, as seguintes páginas abaixo, ou a wiki do Fedora para mais exemplos.

### Identificação de entrada

Veja Keyboard input#Identifying keycodes in Xorg.

### Aceleração do mouse

Veja Mouse acceleration.

### Botões adicionais do mouse

Veja Mouse buttons.

### Touchpad

Veja libinput or Synaptics.

### Toque de tela

Veja Touchscreen.

### Configurações do teclado

Veja Keyboard configuration in Xorg.

## Configurações do monitor

### Configuração manual

Nota

- Novas versões do Xorg são automaticamente configuráveis, então configurações manuais não devem ser necessárias.
- Se Xorg não é capaz de detectar qualquer monitor ou para evitar automaticamente configuração, um arquivo de configuração pode ser usado. Um exemplo de uso, é em um servidor, que liga sem um monitor e inicia o Xorg automaticamente, com console virtual no login, ou por um gerenciador de exibição

Para configuração headless o driver xf86-video-dummy é necessário; instale e crie um arquivo de configuração, como o seguinte:

    /etc/X11/xorg.conf.d/10-headless.conf

    Section "Monitor"
            Identifier "dummy_monitor"
            HorizSync 28.0-80.0
            VertRefresh 48.0-75.0
            Modeline "1920x1080" 172.80 1920 2040 2248 2576 1080 1081 1084 1118
    EndSection

    Section "Device"
            Identifier "dummy_card"
            VideoRam 256000
            Driver "dummy"
    EndSection

    Section "Screen"
            Identifier "dummy_screen"
            Device "dummy_card"
            Monitor "dummy_monitor"
            SubSection "Display"
            EndSubSection
    EndSection

### Múltiplos monitores

Veja o artigo Múltiplos monitores para informações gerais.

Veja também as instruções específicas da GPU:

- NVIDIA#Múltiplos monitores
- ATI#Configuração múltiplos monitores

#### Mais de uma placa de vídeo

Você deve definir o driver correto a ser usado e botar o bus ID de sua placa de vídeo (em notação decimal).

    Section "Device"
        Identifier             "Screen0"
        Driver                 "intel"
        BusID                  "PCI:0:2:0"
    EndSection

    Section "Device"
        Identifier             "Screen1"
        Driver                 "nouveau"
        BusID                  "PCI:1:0:0"
    EndSection

Para descobrir os bus IDs (em hexadecimal):

    $ lspci | grep -e VGA -e 3D

    00:02.0 VGA compatible controller: Intel Corporation HD Graphics 630 (rev 04)
    01:00.0 3D controller: NVIDIA Corporation GP107M [GeForce GTX 1050 Mobile] (rev a1)

Os bus IDs desse exemplo são 0:2:0 e 1:0:0.

### Tamanho da tela e DPI

The factual accuracy of this article or section is disputed.

Reason: Xorg sempre configura DPI para 96. Veja isto, isto e também isto. (Discuss in Talk:Xorg (Português))

O DPI do servidor X é determinado da seguinte maneira:

1. A opção da linha de comando `-dpi` tem a maior prioridade.
2. Se ela não é usada, a configuração `DisplaySize` no arquivo de configuração do X é usada para entregar o DPI, dado o tamanho de resolução da tela.
3. Se nenhum `DisplaySize` é dado, os valores de tamanho do monitor da DDC são usados para definir o DPI, dado a resolução de tela.
4. Se DDC não especifica um tamanho, é usado por padrão 75 DPI.

Para conseguir pontos por polegada (DPI) correto, o tamanho da tela deve ser reconhecido ou configurado. Ter o DPI correto é um requisito quando detalhes finos são necessários (como renderização de fontes). Antigamente, fabricantes tentaram criar um padrão para 96 DPI (um monitor de 10.3" deveria ser 800X600, um monitor de 13.2" deveria ser 1024X768). Atualmente, DPIs variam e podem não ser iguais horizontalmente e verticalmente. Por exemplo, uma tela panorâmica LCD de 19" 1440X900 poderia ter um DPI de 89X87. Para configurar o DPI, o servidor Xorg tenta a auto detecção do tamanho de tela físico através da placa gráfica com DDC. Quando o servidor Xorg sabe o tamanho físico da tela, ele será capaz de configurar o DPI corretamente baseado no tamanho da resolução.

Para ver se o tamanho da sua tela e DPI são detectados/calculados corretamente:

    $ xdpyinfo | grep -B2 resolution

Verifique se as dimensões correspondem ao tamanho da sua tela. Se o servidor Xorg não é capaz de corretamente calcular o tamanho de tela, o DPI será definido como 75X75 e você terá que calcular isto você mesmo.

Se você tem especificações do tamanho físico da tela, pode colocá-los no arquivo de configuração do Xorg para então o DPI apropriado ser calculado (ajuste o Identifier de acordo com a saída do `xrandr`):

    Section "Monitor"
        Identifier             "DVI-D-0"
        DisplaySize             286 179    # Em milímetros
    EndSection

Se você somente quer colocar sua especificação de monitor sem criar um novo arquivo xorg.conf. Por exemplo (`/etc/X11/xorg.conf.d/90-monitor.conf`):

    Section "Monitor"
        Identifier             "<monitor padrão>"
        DisplaySize            286 179    # Em milímetros
    EndSection

Se você não tem as especificações físicas de altura e largura da tela, (a maioria das especificações atualmente somente listam o tamanho diagonal) você pode usar a nativa resolução do monitor (ou aspecto de proporção) e comprimento diagonal para calcular a dimensão horizontal e vertical física. Usando o Teorema de Pitágoras em uma tela diagonal de 13.3" com uma resolução nativa de 1280X800 (ou aspecto de proporção 16:10):

    $ echo 'scale=5;sqrt(1280^2+800^2)' | bc  # 1509.43698

Isto dará o comprimento do pixel diagonal e com este valor você pode descobrir o comprimento horizontal e vertical físico (e converter eles para milímetros):

    $ echo 'scale=5;(13.3/1509)*1280*25.4' | bc  # 286.43072
    $ echo 'scale=5;(13.3/1509)*800*25.4'  | bc  # 179.01920

Nota Este cálculo funciona para monitores com pixels quadrados; no entanto, raramente um monitor pode comprimir o aspecto de proporção (exemplo aspecto de resolução 16:10 para um 16:9). Se este for o caso, você deve mensurar o tamanho de sua tela manualmente.

#### Definindo o DPI manualmente

Nota Embora você possa definir qualquer dpi que desejar e os aplicativos que usam Qt e GTK serão redimensionados de acordo, é recomendável defini-lo como 96, 120 (25% a mais), 144 (50% a mais), 168 (75% a mais), 192 (100% a mais) etc., para reduzir dimensionamento de artefatos à GUI que usam bitmaps. Reduzi-lo abaixo de 96 dpi pode não reduzir o tamanho dos elementos gráficos da GUI, pois normalmente o dpi mais baixo para o qual os ícones são criados é 96.

Para drivers compatíveis com RandR (por exemplo, o driver ATI de código aberto), você pode configurá-lo da seguinte maneira:

    $ xrandr --dpi 144

Nota Os aplicativos que estão em conformidade com a configuração não serão alterados imediatamente. Você precisa iniciá-los novamente.

Para torná-lo permanente, consulte Inicialização automática#Na inicialização de Xorg.

##### Driver proprietário NVIDIA

O DPI pode ser configurado manualmente se você deseja usar somente uma resolução (calculadora de DPI):

    Section "Monitor"
        Identifier             "Monitor0"
        Option                 "DPI" "96 x 96"
    EndSection

Você pode configurar manualmente o DPI adicionando as opções abaixo no arquivo `/etc/X11/xorg.conf.d/20-nvidia.conf` (dentro da seção Device):

    Option              "UseEdidDpi" "False"
    Option              "DPI" "96 x 96"

##### Correção manual do DPI

GTK frequentemente sobrescreve o DPI do servidor com o Xresource opcional `Xft.dpi`. Para descobrir se isto está acontecendo com você, verifique:

    $ xrdb -query | grep dpi

A partir da versão 3.16 do GTK quando esta variável não é explicitamente definida, GTK define como 96. Para os programas GTK obedecerem o DPI do servidor você deve explicitamente definir Xft.dpi. O recurso Xft.dpi é o metodo pelo qual alguns ambientes desktop opcionalmente forçam o DPI para um valor específico. Dentre estes KDE e TDE.

### Gerenciamento de energia do monitor

DPMS (Gerenciamento de energia do monitor baseado em sinalização) é uma tecnologia que habilita o modo de economia de energia para monitores quando o computador não está em uso. Isto permite que os monitores vão para o modo standby automaticamente depois de determinado período de tempo.

## Composição

A extensão de Composição para X gera uma completa subárvore hierárquica de janelas a serem renderizadas para um buffer off-screen (renderização fora da tela). Programas então pegam o conteúdo desse buffer e fazem o que quiser com ele. O buffer off-screen pode ser automaticamente fundido com a janela pai ou com programas externos, chamados gerenciadores de composição. Veja o seguinte artigo para mais informações: gerenciador de janelas compositor

Alguns gerenciadores de janela (por exemplo: compiz, Enlightenment, KWin, Marco, Metacity, Muffin, Mutter, Xfwm) fazem composição. Para outros gerenciadores de janela, um gerenciador de composição pode ser usado.

### Lista de gerenciadores de composição

- Picom — Compositor (um fork do Compton)

  https://github.com/yshui/picom || picom

- Xcompmgr — Gerenciador de efeitos de janela de composição

  https://gitlab.freedesktop.org/xorg/app/xcompmgr/ || xcompmgr

- Unagi — Um modular gerenciador de composição escrito em C baseado no XCB

  https://projects.mini-dweeb.org/projects/unagi[link inativo 2025-01-22 ⓘ] || unagiAUR[link quebrado: package not found]

## Dicas e truques

This article or section needs expansion.

Reason: Mencionar xorg-xkill. (Discuss in Talk:Xorg (Português))

### Automação

Esta seção lista utilitários para automatizar a entrada do teclado ou mouse e operações de janela (como mover, redimensionar e iniciar).

Ferramenta | Pacote | Manual | Entrada Keysym | Operações de janela | Nota
--- | --- | --- | --- | --- | ---
xautomation | xautomation | xte(1) | Sim | Não | Também contém ferramentas de screen scraping. Não pode simular F13+.
xdo | xdo | xdo(1) | Não | Sim | Pequena ferramenta do X para ações elementárias em janelas.
xdotool | xdotool | xdotool(1) | Sim | Sim | Muitos bugs e não está em desenvolvimento ativo, exemplo: tem parseamento da linha de comando quebrado.[2][3]
xvkbd | xvkbdAUR | xvkbd(1) | Sim | Não | Teclado virtual para Xorg, também tem a opção `-text` para envio de caracteres.

Veja também Clipboard#Tools e uma visão geral de ferramentas de automação do X (em inglês).

### Sessão X aninhada

Para executar uma sessão aninhada de outro ambiente de desktop:

    $ /usr/bin/Xnest :1 -geometry 1024x768+0+0 -ac -name Windowmaker & wmaker -display :1

Isso vai iniciar uma sessão de Window Maker em uma janela 1024 por 768 dentro de sua sessão X atual.

Isso precisa do pacote xorg-server-xnest para ser instalado.

### Iniciando programas GUI remotamente

Veja o artigo principal: OpenSSH#X11 forwarding.

### Habilitando e desabilitando em demanda dispositivos de entrada

Com a ajuda de xinput você pode temporariamente desabilitar ou habilitar dispositivos de entrada. Isto pode ser útil, por exemplo, em sistemas que tem mais de um mouse, como os ThinkPads, e você prefere usar somente um para evitar clicks indesejados.

Instale o pacote xorg-xinput.

Encontre o nome ou ID do dispositivo que você quer desabilitar:

    $ xinput

Por exemplo, em um Lenovo ThinkPad T500, a saída parece com isto:

    $ xinput

    ⎡ Virtual core pointer                          id=2    [master pointer  (3)]
    ⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
    ⎜   ↳ TPPS/2 IBM TrackPoint                     id=11   [slave  pointer  (2)]
    ⎜   ↳ SynPS/2 Synaptics TouchPad                id=10   [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)]
        ↳ Video Bus                                 id=7    [slave  keyboard (3)]
        ↳ Sleep Button                              id=8    [slave  keyboard (3)]
        ↳ AT Translated Set 2 keyboard              id=9    [slave  keyboard (3)]
        ↳ ThinkPad Extra Buttons                    id=12   [slave  keyboard (3)]

Desabilite o dispositivo com `xinput --disable dispositivo`, onde o dispositivo é o ID ou nome do dispositivo que você quer desabilitar. Neste exemplo nós iremos desabilitar o Synaptics Touchpad, com o ID 10:

    $ xinput --disable 10

Para habilitar novamente o dispositivo, execute o comando:

    $ xinput --enable 10

Alternatively using the device name, the command to disable the touchpad would be:

Alternativamente, usando o nome do dispositivo, o comando para desabilitar o touchpad seria:

    $ xinput --disable "SynPS/2 Synaptics TouchPad"

### Atalho para matar um programa

Faça um atalho com o seguinte script:

    #!/bin/sh
    windowFocus=$(xdotool getwindowfocus);
    pid=$(xprop -id "$windowFocus" | grep PID);
    kill -9 "$pid"

Dependências: xorg-xprop, xdotool.

### Impeça acesso ao TTY

This article or section needs expansion.

Reason: Por que você deveria querer fazer isso? (Discuss in Talk:Xorg (Português))

Para impedir o acesso ao TTY no X, adicione no xorg.conf:

    Section "ServerFlags"
        Option "DontVTSwitch" "True"
    EndSection

### Impeça um usuário de matar o X

Para prevenir um usuário de matar uma sessão X quando ela está rodando, adicione o seguinte no xorg.conf:

    Section "ServerFlags"
        Option "DontZap"      "True"
    EndSection

### Xorg sem root

Xorg pode ser executado com privilégios de usuário comum ao invês do root (conhecido em inglês como "rootless" Xorg). É uma melhora significativa na segurança quando comparado com executar como root. Note que a maioria dos gerenciadores de login não suportam Xorg sem root.

Você pode verificar que usuário está executando o Xorg com `ps -o user $(pgrep Xorg)`.

Veja também Xorg.wrap(1), systemd-logind(8), Systemd/User#Xorg as a systemd user service, [4] e FS#41257.

#### Usando xinitrc

Para configurar Xorg sem root usando xinitrc:

- Executar startx como um subpprocesso do shell de login; executar `startx` diretamente e não usar`exec startx`.
- Se usa certos drivers de vídeo proprietários, a detecção automática do kernel mode setting vai falhar. Em tais casos, você deve definir `needs_root_rights = no` em `/etc/X11/Xwrapper.config`.

#### Usando GDM

GDM vai executar o Xorg sem privilégios root por padrão quando o kernel mode setting é usado.

#### Redirecionamento do log da sessão

Quando Xorg é executado sem privilégios root, os logs do xorg são armazenados em `~/.local/share/xorg/Xorg.log`. No entanto, as saídas stdout e stderr da sessão Xorg não são redirecionadas para este arquivo. Para habilitar o redirecionamento, inicie o Xorg com a opção `-keeptty` e redirecione a saída stdout e stderr para um arquivo:

    startx -- -keeptty &> ~/.xorg.log

Ou copie `/etc/X11/xinit/xserverrc` para `~/.xserverrc`, e adicione `-keeptty`. Veja [5].

## Solução de problemas

### Geral

Se um problema acontecer, veja o log armazenado em `/var/log/` ou, se executa o servidor X como usuário comum (possível desde v1.16), em `~/.local/share/xorg/`. Usuários do GDM devem verificar os registros do systemd. [6]

Os arquivos de log estão na forma de `Xorg.n.log` com `n` sendo o número de exibição(`$DISPLAY`). Para uma maquina de único usuário com configuração padrão, o arquivo de log é frequentemente `Xorg.0.log`, mas isto pode variar. Para ter certeza de qual é o arquivo certo você pode olhar o log da inicialização da sessão X e de qual console ele foi iniciado. Por exemplo:

    $ grep -e Log -e tty Xorg.0.log

    [    40.623] (==) Log file: "/home/archuser/.local/share/xorg/Xorg.0.log", Time: Thu Aug 28 12:36:44 2014
    [    40.704] (--) controlling tty is VT number 1, auto-enabling KeepTty

- No arquivo de log você pode procurar por qualquer linhas começando com `(EE)`, que representam erros, e também `(WW)`, que são avisos que podem indicar outros problemas.
- Se o arquivo `xinitrc` estiver vazio em seu `$HOME`, exclua ou edite ele para o X iniciar apropriadamente. Se você não fizer isto X irá mostrar uma tela vazio sem erros aparentes no seu `Xorg.0.log`. Ao exclui-lo a próxima vez que for iniciado o X será executado com o ambiente X padrão.
- Se a tela ficar preta, você pode ainda tentar trocar para um diferente console virtual (por exemplo, `Ctrl+Alt+F6`), e entrar como root. Você pode fazer isto ao digitar `root` (pressionando `Enter` depois) e entrar com a senha do usuário root (denovo, pressione `Enter` depois).

  Você pode querer matar o servidor X com:

      # pkill -x X

  Se isto não funcionar, pode reiniciar cegamente com:

      # reboot

- Veja páginas específicas na Categoria:Dispositivos de entrada se você tiver problemas com o teclado, mouse, Touchpad e etc, considere verificar a pagina em inglês se não achar o que procura.
- Procure por problemas comuns nos artigos da AMDGPU, Intel e NVIDIA.

### Tela preta, nenhum protocolo especificado.., recurso temporariamente não disponível para todos ou alguns usuários

X cria configuração e arquivos temporários no diretório do usuário ($HOME). Tenha certeza que existe espaço de disco disponível na partição utilizada. Infelizmente, o servidor X não informa isso de maneira óbvia.

### DRI com placas Matrox parou de funcionar

Se você usa um cartão Matrox e DRI parou de funcionar depois de atualizar o Xorg, tente adicionar a seguinte linha:

    Option "OldDmaInit" "On"

Na seção `Device` que referência a placa de vídeo em `xorg.conf`.

### Problemas no modo renderizador de quadros (framebuffer mode)

Se X falha para iniciar com a seguinte messagem de log:

    (WW) Falling back to old probe method for fbdev
    (II) Loading sub module "fbdevhw"
    (II) LoadModule: "fbdevhw"
    (II) Loading /usr/lib/xorg/modules/linux//libfbdevhw.so
    (II) Module fbdevhw: vendor="X.Org Foundation"
           compiled for 1.6.1, module version=0.0.2
           ABI class: X.Org Video Driver, version 5.0
    (II) FBDEV(1): using default device

    Fatal server error:
    Cannot run in framebuffer mode. Please specify busIDs for all framebuffer devices

Desinstale o pacote xf86-video-fbdev.

### Programa requer "font '(null)'"

Messagem de erro: `unable to load font `(null)'`.

Alguns programas somente funcionam com fontes bitmap. Os dois maiores pacotes com fontes bipmap disponíveis são xorg-fonts-75dpi e xorg-fonts-100dpi. Você não precisa de ambos, um deve ser o bastante. Para descobrir qual o mais apropriado para sua situação, tente `xdpyinfo`, do pacote xorg-xdpyinfo, desse jeito:

    $ xdpyinfo | grep resolution

Use o que for mais próximo do valor mostrado.

### Recuperação: Desabilitar o Xorg antes do login GUI

Se o Xorg está configurado para iniciar automaticamente e por alguma razão você precisa evitar isto antes de iniciar o login/gerenciador de exibição Aparecerem (e o sistema está mal configurado e o Xorg não reconhece o mouse ou teclado, por exemplo), você pode fazer isto com dois métodos.

- Mude o alvo padrão para rescue.target. Veja Systemd#Alterar target padrão para inicializar.
- Se você além de ter um sistema com falhas que fazem o Xorg não usável, tem o menu do GRUB sem tempo de espera, e não pode usar o GRUB para prevenir o Xorg de iniciar. Você pode usar um live CD do Arch Linux. Veja no guia de instalação sobre como montar e chroot o sistema Arch Linux instalado.Você também pode tentar trocar para outro tty com `Ctrl+Alt` + a tecla de função (normalmente do `F1` para `F7`, use um que não está sendo usado pelo X), logue como root e siga os passos abaixo.

Dependendo da configuração, você vai precisar fazer um ou mais desses passos:

- Desabilite o gerenciador de exibição.
- Desabilite o Inicio automático do X no login.
- Renomeie o `~/.xinitrc` ou comente a linha que contém `exec` dentro dele.

### Cliente X começando com falha "su"

Se você está ecebendo "Client is not authorized to connect to server", tente adicionar essa linha:

    session        optional        pam_xauth.so

Em `/etc/pam.d/su` e `/etc/pam.d/su-l`. `pam_xauth` irá então apropriadamente definir as variáveis de ambiente e cuidar das chaves `xauth`.

### X falhou para iniciar: Inicialização do teclado falhou

Se o sistema de arquivos, especificamente se `/tmp` está cheio, `startx` irá falhar. `/var/log/Xorg.0.log` irá terminar com:

    (EE) Error compiling keymap (server-0)
    (EE) XKB: Could not compile keymap
    (EE) XKB: Failed to load keymap. Loading default keymap instead.
    (EE) Error compiling keymap (server-0)
    (EE) XKB: Could not compile keymap
    XKB: Failed to compile keymap
    Keyboard initialization failed. This could be a missing or incorrect setup of xkeyboard-config.
    Fatal server error:
    Failed to activate core devices.
    Please consult the The X.Org Foundation support at http://wiki.x.org
    for help.
    Please also check the log file at "/var/log/Xorg.0.log" for additional information.
    (II) AIGLX: Suspending AIGLX clients for VT switch

Libere espaço no sistema de arquivos e X irá iniciar.

### Tela verde toda vez que tenta ver um vídeo

Sua profundidade de cor está errada. Pode ser 24 ao invés de 16, por exemplo.

### Erro SocketCreateListener

Se X termina com a mensagem de erro "SocketCreateListener() failed", você pode precisar deletar os arquivos de socket em `/tmp/.X11-unix`. Isto pode acontecer se você antes tenha rodado o Xorg como superusuário (Por exemplo, para gerar uma `xorg.conf`).

### Chave inválida MIT-MAGIC-COOKIE-1 enquanto tenta executar um programa como root

Este erro significa que somente o atual usuário tem acesso ao servidor X. Para resolver, dê acesso ao superusuário:

    $ xhost +si:localuser:root

Esta linha também pode dar acesso a outros usuários.

### Xorg-server Fatal server error: (EE) AddScreen/ScreenInit

Se o servidor do Xorg estiver apresentando um problema intermitente e no log do Xorg você vê:

    systemd-logind: failed to take device /dev/dri/card0: Operation not permitted
    ...
    AddScreen/ScreenInit failed for driver 0

Então este problema pode ser causado pelo issue 13943 do systemd. Configure um início antecipado de KMS.

## Veja também

- Xplain - Explicação detalhada do sistema de janelas X.
- Xorg(1) - Página manual do Xorg.
- Gentoo/Xorg#Configuration - Página de configuração do Xorg da Wiki do Gentoo.

Category:

- X server (Português)

Hidden categories:

- Pages with broken package links
- Pages or sections flagged with Template:Accuracy
- Pages with dead links
- Pages or sections flagged with Template:Expansion

Xorg (Português)
Add topic