Por que meu script de inicialização para abrir um terminal não funciona?

-1

Apenas para brincar com a criação de scripts, eu fiz uma que (acredito?) deveria abrir um terminal na inicialização:

#!/bin/bash
#start terminal at startup
#/usr/bin/gnome-terminal

eu coloquei no diretório /etc/init.d, então executei

update-rc.d myscript defaults

mas absolutamente nada acontece quando eu reinicio meu computador. Por quê?

    
por thinksinbinary 07.09.2016 / 20:07

2 respostas

1

O erro principal em seu script é que na sua terceira declaração você realmente comentou o comando para abrir o terminal. Por favor, remova o " # " da terceira declaração. Enquanto isso, você pode simplesmente usar o gnome-terminal para ativá-lo, mas ele deve ser executado como o próprio usuário. Isso significa que adicioná-lo ao update-rc também não funcionará. Se você é mais magro para caminhos terminais, você pode adicionar seu script em crontab e adicioná-lo ao arquivo crontab do usuário com a restrição reboot . Isto irá executar o seu script no arranque. Então eu resumir da seguinte forma:
Seu arquivo chamado script.sh:

#!/bin/bash
#start terminal at startup
gnome-terminal

Torne o script executável pelo usuário usando o seguinte comando.

chmod u+x /path/to/script.sh

Agora abra o terminal e edite o crontab do usuário da seguinte forma:

crontab -e -u username

Adicione a seguinte declaração ao final do arquivo depois de fazer as alterações necessárias de acordo.

@reboot /path/to/script.sh

Agora reinicie. É isso.

    
por SAGAR Nair 07.09.2016 / 20:58
2

Resposta curta:

gnome-terminal é um aplicativo GUI. Portanto, só pode ser executado como usuário . No momento em que você está tentando executá-lo, nenhum usuário está logado (ainda). Coloque o script (comando para executar o-) nos aplicativos de inicialização.

Você não precisa de um script , mas pode adicionar o comando diretamente a Startup Applications.

Isso iniciará gnome-terminal quando você fizer login.

Além disso, seu comando para executar gnome-terminal não está correto. Deve ser /usr/bin/gnome-terminal (como mencionado por @steeldriver, obrigado) ou, como está em $PATH , simplesmente gnome-terminal .

    
por Jacob Vlijm 07.09.2016 / 20:12