Passei algum tempo ajustando minhas configurações para vários monitores, e isso está funcionando bem quando estou conectado, mas não está certo na tela de login ou em outros usuários.
Como faço para definir as configurações de exibição globalmente para todos os usuários e a tela de login?
sudo cp ~/.config/monitors.xml /var/lib/lightdm/.config/
como sugerido anteriormente, + a solução abaixo, você terá sua configuração para todos os usuários (incluindo novos usuários) exatamente como você descreve.Respostas:
Dependendo da maneira como você configurou seu sistema, pode ser tão fácil quanto copiar o
monitors.xml
arquivo do usuário configurado corretamente para todos os usuários:Para testar isso para um usuário:
faça logoff do TestUser se já estiver conectado , faça logon novamente e verifique se está tudo correto.
O comando para todos os usuários:
O comando para a tela de login:
O comando para todos os usuários futuros ¹:
Nota¹: todos os usuários que você criará no futuro
fonte
/etc/xdg
parece ser o único truque que faz isso também para novos usuários.Para definir a configuração da tela para todos os usuários que efetuam login (isso não altera a configuração na tela de login), você pode criar um
.desktop
arquivo em/etc/xdg/autostart
Como fazer isso
descubra o nome da tela que você deseja girar executando
xrandr
. Ele produzirá várias linhas, dentre as quais algumas parecem:Isso fornece informações sobre os nomes das telas conectadas.
VGA-0
Crie um iniciador com (por exemplo)
gedit
:Cole o texto abaixo no arquivo:
substituir na linha:
A sequência:
VGA-0
pelo nome da tela (girada).Anotações importantes
Na linha
Eu incluí um
sleep 10
. Isso ocorre porque, às vezes, osxrandr
comandos são interrompidos se executados muito cedo, antes que a área de trabalho seja "concluída". Possivelmente, você precisa aumentar o intervalo ou tentar deixar de fora. No comando, como é, a tela gira após 10 segundos após o login de qualquer usuário.O comando:
gira a tela para a esquerda, não há necessidade de dizer que se você gostaria de outro tipo de rotação, você pode escolher qualquer um
left
,right
,normal
,inverted
(ver também aqui) .Explicação
Você pode executar comandos na inicialização (na verdade, faça login) colocando um
.desktop
arquivo (iniciador)~/.config/autostart
. Isso executará apenas o iniciador para um único usuário. Se você fizer o mesmo, mas colocar o iniciador/etc/xdg/autostart
, o comando será executado sempre que um usuário efetuar login, a menos que um usuário específico desative o iniciador em Dash> Startup ApplicationsAlém disso , você pode simplesmente copiar seu
~/.config/monitors.xml
arquivo local/var/lib/lightdm/monitors.xml
para também fazer com que as configurações funcionem na tela de login.Imo a combinação disso e a solução acima (um iniciador
/etc/xdg
) é a solução mais fácil para obter exatamente o que você deseja para a tela de login e (qualquer) usuário. Além disso, a solução de um iniciador/etc/xdg
é (muito) facilmente revertida ou alterada, caso você precise fazer outra configuração, sem editar muitos arquivos no (cada) nível do usuário, pois as configurações do usuário e a tela de login são gerenciadas para todos os usuários de uma vez em dois arquivos simples.fonte
Só queria adicionar um comentário para qualquer um que tenha problemas com um problema semelhante. Eu estava com a resolução do meu monitor antigo (1280x1024) toda vez que fazia login, mas a tela de login e o login do usuário convidado usam o padrão correto 1680x1050.
Li várias postagens nos últimos quatro meses procurando uma resposta, lendo xorg.conf, monitors.xml, lightdm e xrandr e outras sugestões - mas algumas alterações de configuração são complicadas e correm o risco de interromper a exibição completamente, então acabei usando a GUI para alterar a configuração do monitor manualmente a cada login.
Hoje eu fiz um grep para a resolução antiga na minha pasta .config.
O primeiro resultado foi o arquivo ~ / .config / autostart / xrandr.desktop que contém isso,
então acabei de mudar o arquivo de lá. E bingo, eu entro e obtenho a resolução padrão de 1680x1050.
Demorei algumas horas para pesquisar e não consegui encontrar uma resposta suficientemente próxima, então publique aqui caso seja útil para alguém.
fonte
Você pode acrescentar algo a
/etc/lightdm/lightdm.conf
. Aqui, criamos um script que usa umxrandr
comando para configurar seus monitores. Você pode usar alguma ferramenta gráfica RandR para criar um comando para você, comoarandr
. No meu caso, o script ficaria assim:Você pode colocar esse script
/usr/share
ou onde quiser. Seu script pode parecer muito menos complexo, pois é para uma configuração complexa de monitor duplo. Em seguida, acrescente algo como:e:
Verifique se o arquivo é executável, portanto:
O
session-setup-script
irá definir a exibição para depois fazer o login através LightDM, edisplay-setup-script
vai mudar a exibição para tela de login.fonte
No meu sistema (Ubuntu 16.04), a tela de login simplesmente
cp
como root (usandosudo
) não funcionava. Você também pode precisar se certificar de que o proprietário / grupo de monitors.xml élightdm:lightdm
.fonte