Problemas com o login no Ubuntu 20.04 lts

Olá, eu acabei de me tornar membro e infelizmente não tenho uma boa história para contar.

Estou começando a migrar gradualmente do Windows para o Linux, ainda tenho dual boot por aqui. Meu problema começou hoje quando eu estava vendo Netflix pelo Firefox e percebi que tinha alguns tearings na tela. Pesquisei e assisti alguns vídeos do canal no YouTube e cheguei a conclusão que eram os drivers. Na minha busca o Google me jogou neste vídeo:

Neste vídeo o criador de conteúdo até cita um post do blog na descrição e recomenda um comando para atualizar os drivers de vídeo. Eu fui inocente e dei o comando no terminal (não dei o comando do post, mas dei o comando do vídeo). O tearing de fato desapareceu, mas quando reiniciei o Ubuntu não consegui mais fazer login.

O que está temporariamente me permitindo acessar o Ubuntu é na versão Wayland que está logando sem nenhum problema, porém a versão normal não loga, eu digito a senha correta e ele retorna pra tela de login. O máximo que da pra fazer é entrar em modo console, mas não consigo fazer nada porque ainda sou iniciante na plataforma. Procurei na internet inúmeras soluções para o problema e nada parece funcionar. Sempre recebo a informação de que não existe arquivo ou diretório para o Xauthority.

Peço a ajuda de vocês aqui porque do mesmo jeito que eu fui vítima, nos comentários do referido vídeo tem muitos outros mais…

1 Curtida

Olá, @joao_estumano, bem vindo ao fórum!

Sinto muito que as suas primeiras experiências foram ruins.

Na verdade você não foi vítima de nenhum golpe, apenas usou uma solução errada. Infelizmente isso é algo comum nesse mundo Linux, todos apresentam comandos mirabolantes que até podem resolver um problema, mas têm o potencial de criar muitos outros.

No comando que você executou têm duas coisas que não são recomendadas de fazer:

  1. Adicionar um PPA totalmente desnecessário. PPAs são repositórios adicionais de softwares, que fornecem versões diferentes ou pacotes que não existem nos repositórios oficiais da distribuição. O problema é que essas novas versões podem não ser compatíveis com outros pacotes do sistema, e isso acaba criando muitos problemas.

  2. Mexer em configurações críticas do sistema. No caso o comando adiciona algumas linhas ao arquivo /etc/X11/xorg.conf.d/20-intel.conf, que define as configurações do driver de vídeo da Intel. O problema é que essas configurações normalmente não são muito testadas, e podem funcionar apenas em alguns poucos casos.

Fazendo uma analogia com o Windows, seria como se recomendassem você alterar várias coisas do registro e instalar um driver baixado de um lugar desconhecido. Pode funcionar, mas também pode dar muito problema. Não é como se tivessem te passado um vírus ou algo do tipo.

Como no Linux é mais fácil de fazer isso, porque se tem um controle total do sistema, acaba sendo normal achar esse tipo de solução. Felizmente, normalmente não é tão complicado de reverter as modificações, ainda mais sabendo exatamente o que foi feito, como no seu caso:

# Move o arquivo de configuração criado para um Backup, desabilitando-o
sudo mv /etc/X11/xorg.conf.d/20-intel.conf /etc/X11/xorg.conf.d/20-intel.BACKUP

# Remove o PPA adicionado:
sudo add-apt-repository --remove ppa:oibaf/graphics-drivers -y

# Atualiza o cache dos pacotes
sudo apt update

# Reinstala os pacotes, usando as versões originais do sistema.
# Se acontecer algum erro durante esse comando, avise, porque pode ser algum conflito de versões.
sudo apt install --reinstall libegl1-mesa libgl1-mesa-dri libgl1-mesa-dri:i386 libgl1-mesa-glx libgl1-mesa-glx:i386 libglapi-mesa libglapi-mesa:i386 libgles2-mesa mesa-utils libassimp4 beignet-opencl-icd xserver-xorg-video-intel

E pra finalizar, a minha dica é não executar esses comandos sem saber o que fazem, e seguir as dicas de sites confiáveis, como o Diolinux. No comando contido no site, por exemplo, não tem a parte que adiciona o PPA, que é a parte realmente crítica, e é explicado o que o comando faz. Caso o comando do site der errado a solução é simplesmente apagar o arquivo recém criado que tudo volta ao normal.

Gostei @brunonzanette não sabia que tinha como reverter assim só que isso não resolve o problema de tearing do usuário.
@joao_estumano Você pode decidir ou não seguir a resolução do @brunonzanette só que ela não resolve o tearing.

Para corrigir o tearing sem fazer o passo do @brunonzanette use o comando a seguir
Eu recomendo você usar o passo do @brunonzanette e apos usar direto o segundo comando sem usar esse:
$ sudo dpkg --add-architecture i386 && sudo add-apt-repository ppa:oibaf/graphics-drivers -y && sudo apt update && sudo apt dist-upgrade -y && sudo apt install libegl1-mesa libgl1-mesa-dri libgl1-mesa-dri:i386 libgl1-mesa-glx libgl1-mesa-glx:i386 libglapi-mesa libglapi-mesa:i386 libgles2-mesa mesa-utils beignet-opencl-icd xserver-xorg-video-intel -y && sudo mkdir /etc/X11/xorg.conf.d/ && echo -e 'Section "Device"\n Identifier "Intel Graphics"\n Driver "Intel"\n Option "AccelMethod" "sna"\n Option "TearFree" "true"\nEndSection' | sudo tee /etc/X11/xorg.conf.d/20-intel.conf

Esse é o segundo comando recomendado apos fazer os passos do @brunonzanette:
$ sudo apt install libegl1-mesa libgl1-mesa-dri libgl1-mesa-dri:i386 libgl1-mesa-glx libgl1-mesa-glx:i386 libglapi-mesa libglapi-mesa:i386 libgles2-mesa mesa-utils beignet-opencl-icd xserver-xorg-video-intel -y && sudo mkdir /etc/X11/xorg.conf.d/ && echo -e 'Section "Device"\n Identifier "Intel Graphics"\n Driver "Intel"\n Option "AccelMethod" "sna"\n Option "TearFree" "true"\nEndSection' | sudo tee /etc/X11/xorg.conf.d/20-intel.conf

Para desfazer o que esses comando faz seguir o passo do @brunonzanette.
Você foi vitima de sua falta de atenção que ao invés de copiar da descrição copio no olho do video e erro em alguma coisa qualquer letra ou . ou \ / ou " ou qualquer coisa que tenha deixado faltando causo o erro.
Deu ate preguiça quando eu vi o tamanho do comando para fazer debug mais eu tava sem nada para fazer e depois de ver o video animei.

Me desculpe, mas não é nada legal dizer para um usuário novato que o erro foi dele, por desatenção. Foi justamente o que eu tentei explicar no texto. O problema não é o usuário executar o comando, e sim a recomendação de comandos sem a mínima explicação do que eles fazem. Por exemplo, eu acabei de ver o vídeo todo e em nenhum momento o cara diz que no comando dele foi adicionado um “add-apt-repository”, que adiciona um PPA. O usuário executa isso, passa a ter problemas e não faz ideia de que tem um monte de pacotes instalados que não são oficiais do sistemas. Já no site, abaixo do comando está uma explicação bem mais clara:

Basicamente o que ele faz é instalar o Mesa Utils, um utilitário para configurações do Mesa, e criar um arquivo dentro da pasta X11 chamado “xorg.conf.d” e adicionar informações nele com o parâmetro especial “TearFree” que fará com que o Tearing pare de acontecer.

Eu mesmo disse para ele seguir os passos do site, que são mais corretos e possuem uma explicação, mas o que mais importa é explicar o que aconteceu para que o usuário não fique perdido.

1 Curtida

Pelo menos esse usuário detalho bem o que ele fez e o porque ele fez tem usuário que simplesmente faz agente ter que usar uma bola de cristal para adivinhar o que esta acontecendo ai simplesmente ninguém responde porque não tem nem como responder.

No caso se eu quiser recuperar meu login eu devo fazer o passo do @brunozanette e depois para reparar o problema do tearing eu devo usar o segundo comando que você passou @aguamole ?

Você não perdeu o seu login você destruiu foi o Xorg ou xserver
Para corrigir o xserver fazer o que o @brunonzanette passo já para corrigir o tearing fazer o passo que eu passei.
É melhor você fazer os 2 o do @brunonzanette e apos o segundo comando que eu passei sem usar o primeiro.
Apos as mudança é preciso reiniciar.

Executei ambos aqui e aparentemente deu certo.

O motivo do Wayland funcionar é que ele faz o mesmo que o Xserver faz um substituí o outro.

Depois que eu reiniciei, quando voltei ao Netflix, o tearing estava lá outra vez.

Firefox ou Chromium?

O tearing no navegador permanece por configuração do navegador…
É diferente de um reproduor de video

Option "TearFree" "true"

Muitas das vezes só funciona no reprodutor de vídeo

Para Firefox

Digite about:config no campo de endereço
E confirma o risco “Eu aceito o risco”

No campo de pesquisar digite

layers.acceleration.force-enabled

Mude de false para true.

Para Chrome ou Chromium