Executar script ao inicializar

1. Executar script ao inicializar

Guilherme Nonato de Sá Ribeiro
gnsribeiro

(usa Fedora)

Enviado em 03/05/2017 - 22:18h

Fiz um script em bash para desativar o touchpad do meu notebook, e quero que ele seja executado na inicialização do sistema. Coloquei ele no /etc/init.d, tornei-o executável com o chmod +x e criei um link para ele no /etc/rc.d (porque soube que o script não é executado caso não haja um link para ele nesse diretório). No entanto, ao inicializar o sistema, o touchpad continua ativado (como padrão), o que me leva a entender que o script não está sendo executado na inicialização do sistema. O que pode estar faltando?


  


2. Re: Executar script ao inicializar

Carlos APC
Carlos_Cunha

(usa Linux Mint)

Enviado em 04/05/2017 - 23:22h

gnsribeiro escreveu:

Fiz um script em bash para desativar o touchpad do meu notebook, e quero que ele seja executado na inicialização do sistema. Coloquei ele no /etc/init.d, tornei-o executável com o chmod +x e criei um link para ele no /etc/rc.d (porque soube que o script não é executado caso não haja um link para ele nesse diretório). No entanto, ao inicializar o sistema, o touchpad continua ativado (como padrão), o que me leva a entender que o script não está sendo executado na inicialização do sistema. O que pode estar faltando?


Adicione no /etc/rc.local


Abraço
#-------------------------------------------------------------------------------------#
Administrador de Redes Mistas Linux/Windows
LPI 101-102
LPI 201
Para consultas particulares acesse:
www.cunhatec.com.br

"Falar é fácil, me mostre o código." - Linus Torvalds


3. Re: Executar script ao inicializar

Guilherme Nonato de Sá Ribeiro
gnsribeiro

(usa Fedora)

Enviado em 05/05/2017 - 00:03h

Carlos_Cunha escreveu:
Adicione no /etc/rc.local

Não existe tal diretório aqui.




4. Re: Executar script ao inicializar

Carlos APC
Carlos_Cunha

(usa Linux Mint)

Enviado em 05/05/2017 - 00:06h

gnsribeiro escreveu:

Carlos_Cunha escreveu:
Adicione no /etc/rc.local

Não existe tal diretório aqui.




Qual sua distro e versão ?

Abraço
#-------------------------------------------------------------------------------------#
Administrador de Redes Mistas Linux/Windows
LPI 101-102
LPI 201
Para consultas particulares acesse:
www.cunhatec.com.br

"Falar é fácil, me mostre o código." - Linus Torvalds


5. Re: Executar script ao inicializar

Guilherme Nonato de Sá Ribeiro
gnsribeiro

(usa Fedora)

Enviado em 05/05/2017 - 00:11h

Carlos_Cunha escreveu:
Qual sua distro e versão ?

Fedora 25




6. Re: Executar script ao inicializar

Carlos APC
Carlos_Cunha

(usa Linux Mint)

Enviado em 05/05/2017 - 00:14h

gnsribeiro escreveu:

Carlos_Cunha escreveu:
Qual sua distro e versão ?

Fedora 25





Abraço
#-------------------------------------------------------------------------------------#
Administrador de Redes Mistas Linux/Windows
LPI 101-102
LPI 201
Para consultas particulares acesse:
www.cunhatec.com.br

"Falar é fácil, me mostre o código." - Linus Torvalds


7. Re: Executar script ao inicializar

Guilherme Nonato de Sá Ribeiro
gnsribeiro

(usa Fedora)

Enviado em 05/05/2017 - 02:09h


Há uma confusão nos posts: às vezes o rc.local se encontra somente no /etc, e em outras ele aparece dentro do subdiretório rc.d. Há alguma diferença entre colocar ele em um ou em outro? (Eu o deixei no /etc/rc.d, porque o próprio rc-local.service o referencia no /etc/rc.d)

Enfim, não funcionou. Não consegui ativar o rc-local.service:

$ sudo systemctl enable rc-local.service
The unit files have no installation config (WantedBy, RequiredBy, Also, Alias
settings in the [Install] section, and DefaultInstance for template units).
This means they are not meant to be enabled using systemctl.
Possible reasons for having this kind of units are:
1) A unit may be statically enabled by being symlinked from another unit's
.wants/ or .requires/ directory.
2) A unit's purpose may be to act as a helper for some other unit which has
a requirement dependency on it.
3) A unit may be started when needed via activation (socket, path, timer,
D-Bus, udev, scripted systemctl call, ...).
4) In case of template units, the unit is meant to be enabled with some
instance name specified.

Também não consegui inicializá-lo com systemctl start. Segue o seu status:

$ systemctl status rc-local.service
rc-local.service - /etc/rc.d/rc.local Compatibility
Loaded: loaded (/usr/lib/systemd/system/rc-local.service; static; vendor preset: disabled)
Active: failed (Result: exit-code) since sex 2017-05-05 01:37:26 -03; 10min ago

mai 05 01:37:26 localhost.localdomain rc.local[1202]: Unable to connect to X server
mai 05 01:37:27 localhost.localdomain rc.local[1202]: Unable to connect to X server
mai 05 01:37:25 localhost.localdomain systemd[1]: Starting /etc/rc.d/rc.local Compatibility...
mai 05 01:37:26 localhost.localdomain systemd[1]: rc-local.service: Control process exited, code=exited status=1
mai 05 01:37:26 localhost.localdomain systemd[1]: Failed to start /etc/rc.d/rc.local Compatibility.
mai 05 01:37:26 localhost.localdomain systemd[1]: rc-local.service: Unit entered failed state.
mai 05 01:37:26 localhost.localdomain systemd[1]: rc-local.service: Failed with result 'exit-code'.


Um usuário no post do primeiro link aparenta estar com o mesmo problema que eu, e outro o sugere que ele cheque as permissões do arquivo (acredito que ele se refira às de execução), mas aqui o arquivo possui tais permissões:

$ ls -l /etc/rc.d/rc.local
-rwxr-xr-x. 1 root root 59 mai 5 01:53 /etc/rc.d/rc.local







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts