uma das características fantásticas dos sistemas Linux é a capacidade de ajustar e configurá-lo a seu gosto. O utilitário de linha de comando, comumente referido como o Terminal, permite que os usuários passem comandos para o kernel e executem tarefas cruciais. É uma das muitas características que trazem a diferença entre Linux e outros sistemas operacionais.
neste post, vamos explorar uma das funcionalidades poderosas do Linux: a capacidade de executar scripts / comandos e aplicações automaticamente no arranque. Este processo é feito para alcançar várias coisas. Ele pode variar desde a tarefa divertida e direta, como mudar o papel de parede para coisas complicadas, como backup de dados ou criptografia de arquivos.
executando Scripts Linux no arranque
vamos começar e olhar para os diferentes métodos que podemos usar para automatizar scripts e comandos de arranque do Linux.
Método 1: usar a aplicação GUI ‘Startup’
a maioria dos métodos que iremos analisar requerem a linha de comandos. No entanto, as distribuições baseadas no GNOME têm um utilitário gráfico simples que você pode usar. As ‘ Aplicações Iniciais.’Ele vem pré-instalado e é uma ferramenta confiável para usuários que não gostam de sujar as mãos no Terminal.1. Lançar as ‘aplicações iniciais’ do menu Aplicações.
2. Na janela principal das ‘aplicações de arranque’, irá ver três opções à direita; Adicionar, Remover e editar. Para criar o nosso primeiro script automatizado, clique no botão’ Adicionar’.
3. Abre-se uma janela. Indique o nome do seu programa ou programa de arranque. Na secção de comandos, indique o comando que deseja executar – diga ‘sudo mkdir /home/tuts/Desktop/My-Test-Script.’Em alternativa, poderá indicar a localização completa do seu programa bash ou do comando do sistema executável nas várias pastas ‘bin’.
O comando acima irá sempre dar-me uma notificação na tela para atualizar o meu sistema após cada inicialização. Este é apenas um exemplo simples. Você pode escrever scripts bash avançados para executar várias tarefas. Se você está apenas começando com bash-scripting, veja alguns exemplos de Bash para Loop aqui.
Método 2: Usar Cron Job
Cron é um servidor Linux que executa tarefas editadas pelo Usuário, conforme especificado pelo Usuário. Estas tarefas agendadas estão escritas no ficheiro crontab. Diz ao Cron quais os postos de trabalho a executar em que altura e sob que circunstâncias.
O formato básico de um ficheiro crontab é:
.
no entanto, para executar scripts no arranque, vamos usar o parâmetro @reboot. Se todos estes sons novos para você, por favor leia o nosso artigo sobre o Crontab no Linux explicado com exemplos.
para iniciar, adicione uma nova tarefa de cron, execute o comando abaixo no Terminal.
$ crontab -e
Se nunca tiver feito isto antes, irá ver uma opção para escolher o seu editor por omissão, como mostrado abaixo. Eu recomendaria nano uma vez que é muito simples e direto. No meu caso, vou entrar em ‘ 1.’
Vamos escrever um script simples que irá criar uma nova pasta na área de Trabalho na inicialização.
SHELL=/bin/bash@reboot sleep 30 && DISPLAY=:0 My-Test-Directory
o Método 3: Usar o /rc.local
outro método para executar scripts e comandos no arranque é usar o /rc.ficheiro local. Para começar, execute o comando abaixo no Terminal.
sudo nano /etc/rc.local
Este comando irá abrir o rc.ficheiro local do editor nano. Se não estivesse presente, criaria um. Digite seus comandos entre o #! /bin / bash and exit 0 lines. Você também pode dar o caminho completo para o seu script bash aqui.
#! /bin/bash//path-to-your-bash-scriptexit 0
Agora, precisamos de fazer o /rc.executável de ficheiros locais. Execute o comando abaixo:
sudo chmod +x /etc/rc.local
Uma vez feito, reinicie o seu PC e veja as alterações a fazer efeito.
Método 4: Systemd
Systemd é um pacote de software que contém vários utilitários para gerenciar os serviços do sistema e os processos. O systemd inicia serviços e processos no arranque.
Podemos usar o Systemd para automatizar os nossos scripts e comandos no arranque. Vamos criar e automatizar um programa para nos notificar para atualizar o sistema usando Systemd.
para começar, vamos a pasta e arquivo necessários onde vamos escrever os nossos comandos. Execute os comandos abaixo:
$ mkdir -p ~/.config/systemd/user$ nano ~/.config/systemd/user/update-notifier.service
Após o segundo comando, o editor nano será aberta, cole os comandos abaixo.
Description=Reminder to Update SystemPartOf=graphical-session-targetExecStart=bash -c 'sleep 10; notify-send "Please, Update your System Now"Type=oneshotWantedBy=graphical-session.target
Estes comandos são bastante simples. O sistema irá enviar a “actualização-lembrete” 10 segundos após a sessão gráfica ter sido carregada após o arranque.
agora para garantir que o script é carregado após cada startup, precisamos torná-lo executável. Execute os comandos abaixo.
$ chmod 644 ~/.config/systemd/user/update-notifier.service$ systemctl --user enable update-notifier.service$ systemctl --user daemon-reload$ reboot
isto é uma simples maneira de como podemos automatizar scripts com o Systemd na inicialização. O método acima executa scripts que não requerem acesso root. Se quiser criar um programa que precise de acesso ao root, crie um serviço systemd na pasta “/etc/systemd/system” em vez de “~/.pasta de configuração/systemd / utilizador. Além disso, você precisará omitir a palavra ‘usuário’ incluída no comando acima.
conclusão
estes são quatro métodos que você pode usar para executar automaticamente Scripts e comandos de arranque do Linux no arranque. Se estiver a criar programas simples que não exijam permissões elevadas para executar, recomendo usar a aplicação GUI ‘Startup Application’ ou uma tarefa simples de cron. Se seus scripts precisam de acesso root, então considere criar um serviço Systemd.