Como executo o script na inicialização para corrigir o problema de orientação da tela? [duplicado]

-1

Eu estou procurando uma maneira de executar um script na inicialização, mas todos os tópicos antigos que eu encontrei sobre o assunto parecem estar antes do systemd entrar e nenhuma das respostas que eu encontrei parece funcionar mais. Sou novo em sistemas operacionais Linux e não tenho certeza onde procurar instruções sobre como fazer isso no systemd.

Para um pouco de história atrás eu recentemente substitui o Windows em um pequeno tablet / laptop com Ubuntu e descobri que no início a orientação da tela é a maneira errada, o que significa que toda vez que eu logar eu tenho que digitar xrandr -o right no terminal, o que é um pouco chato fazer todas as vezes.

Além disso, se alguém tiver algum recurso para iniciantes entrarem no Linux, eu adoraria vê-los! Eu estou atualmente em um diploma universitário e o lado de programação das coisas é tudo feito no Ubuntu, então seria ótimo se tornar mais hábil em usar o sistema.

Obrigado.

    
por exitpotato 28.05.2018 / 12:37

2 respostas

2

Eu tenho o mesmo problema no Ubuntu 16.04. Aparentemente, é um bug, alguma coisa salva o valor errado da orientação da exibição no arquivo ~/.config/monitors.xml . Portanto, se você executar xrandr -o right na inicialização, o valor de orientação será substituído quando você fizer login e o arquivo monitors.xml for preparado.

Para corrigir isso para um determinado usuário, basta adicionar o seguinte trabalho Cron - crontab -e :

@reboot sed -i 's#<rotation>.*</rotation>#<rotation>normal</rotation>#' "$HOME/.config/monitors.xml" >/dev/null 2>&1
  • Substitua normal pela sua orientação desejada.
  • Esse comando substituirá <rotation>something</rotation> por <rotation>desired value</rotation> no arquivo ~/.config/monitors.xml .

Infelizmente, essa solução resolverá o problema somente quando você iniciar ou reinicializar o sistema. Quando você faz logout e log-in, o problema pode aparecer novamente. Para corrigir isso, você pode adicionar seu comando xrandr nos Aplicativos de inicialização .

    
por pa4080 28.05.2018 / 13:38
3

Exemplo de script de inicialização:

  1. Primeiro crie um script de inicialização do systemd eg.disk-space-check.service no diretório /etc/systemd/system/ com o conteúdo:

    [Unit]
    After=mysql.service
    [Service]
    ExecStart=/usr/local/bin/disk-space-check.sh
    [Install]
    WantedBy=default.target
    
  2. Instale a unidade de serviço systemd e ative-a:

    chmod 664 /etc/systemd/system/disk-space-check.service
    systemctl daemon-reload
    systemctl enable disk-space-check.service
    

Mais explicações sobre você podem ler nos links:

por mariaczi 28.05.2018 / 12:56