Criar Script automatizado de atualização e instalação de programas

Iniciado por carlosadriano, 24 de Fevereiro de 2016, 16:36

tópico anterior - próximo tópico

carlosadriano

Saudações,

Sou iniciante no linux, e gostaria de criar um script/programa (não sei ao certo a nomeclatura) que automatize tarefas de instalação e atualização de programas e do sistema após a formatação do Ubuntu por exemplo.

Vou postar abaixo o script que configurei com o gedit bem como os comandos que usei, e é óbvio, com os programas que desejo que fiquem instalados no ubuntu.

sudo su
gedit ubuntu-programas &

Segue abaixo como está meu arquivo "ubuntu-programas"

#!/bin/bash
apt-get update
apt-get upgrade
apt-get install crunch -y
apt-get install aircrack-ng -y
apt-get install librecad -y
apt-get install virtualbox -y
apt-get install freecad -y
apt-get install deluge -y
apt-get install compizconfig-settings-manager -y
apt-get install openshot -y
apt-get install wireshark -y
apt-get install inkscape -y
apt-get install audacious -y
apt-get install alarm-clock -y
apt-get install avidemux -y
apt-get install wine -y
apt-get install devede -y
apt-get install  gimp -y
apt-get install k3b -y
apt-get install winetricks -y
apt-get install firefox -y
apt-get install vlc -y
apt-get install usb-creator-kde -y
apt-get install usb-creator-gtk -y
apt-get install libreoffice -y
apt-get install supertux -y
apt-get install supertuxkart -y
apt-get install frogatto -y
apt-get install playonlinux -y
apt-get install armagetronad -y
apt-get install frozen-bubble -y
apt-get install totem -y
apt-get install brasero -y
apt-get install ubuntu-restricted-extras -y
apt-get install gnome-multi-writer -y
apt-get install gparted -y
apt-get install amarok -y
apt-get install pv -y
apt-get install xmoto -y
apt-get install torcs -y
apt-get install sauerbraten -y
apt-get install neverball -y
apt-get install extremetuxracer -y
apt-get install billard-gl -y
apt-get install gnome-chess -y
apt-get install openbve -y
apt-get install stellarium -y
apt-get install gufw

clear

echo Repositorio Atualizado.
echo Sistema Atualizado.
echo Programas instalados.
echo .
echo ..
echo ...
echo Pressione Enter para Continuar
read #pausa

exit

Após salvar o arquivo e sair eu uso o comando abaixo para permitir que o arquivo seja executado.

chmod +x ubuntu-programas

e depois para executa-lo

./ubuntu-programas


Daí como sou iniciante nestes procedimentos, gostaria de saber, se neste arquivo existe algum erro no meu arquivo, ou se posso ter algum problema executando este programa para atualizar o sistema e instalar estes programas.

Pois me pareceu bem mais prático realizar uma automatização desta ao invés de ficar instalando programa por programa no terminal ou na central de programas do ubuntu.

De qualquer forma, agradeço a todos.

Tota

Olá

O apt  aceita concatenação de pacotes.

Assim eu julgo que seria muito mais fácil para você usar sudo apt-get install -y pacote1 pacote2 pacote3 etc

Você gravaria o comando num arquivo texto puro e deixaria num pendrive por exemplo.

Ao reinstalar o Ubuntu,  bastaria plugar o pendrive, abrir o arquivo texto, copiar o comando e colar no terminal.

Muito mais simples.

Agora se deseja aprender a criar um script é outra coisa.

Exemplo usando o gksudo, não sendo necessário abrir um terminal. Ou troque gksudo por sudo para terminal.


#!/bin/bash
gksudo apt-get update
gksudo apt-get upgrade
gksudo apt-get install -y crunch aircrack-ng librecad virtualbox freecad deluge (e todos os outros mais)



carlosadriano

#2
Saudações,

Citação de: Tota online 24 de Fevereiro de 2016, 17:23
Olá

O apt  aceita concatenação de pacotes.

Assim eu julgo que seria muito mais fácil para você usar sudo apt-get install -y pacote1 pacote2 pacote3 etc

Você gravaria o comando num arquivo texto puro e deixaria num pendrive por exemplo.

Ao reinstalar o Ubuntu,  bastaria plugar o pendrive, abrir o arquivo texto, copiar o comando e colar no terminal.

Muito mais simples.

Agora se deseja aprender a criar um script é outra coisa.

Exemplo usando o gksudo, não sendo necessário abrir um terminal. Ou troque gksudo por sudo para terminal.


#!/bin/bash
gksudo apt-get update
gksudo apt-get upgrade
gksudo apt-get install -y crunch aircrack-ng librecad virtualbox freecad deluge (e todos os outros mais)


seria muito mais fácil para você usar sudo apt-get install -y pacote1 pacote2 pacote3 etc
Eu havia lido e visto esta concatenação de pacotes, e estava entusiasmado na hora de criar o script, e me esqueci, mas realmente é muito mais fácil mesmo.
Mas no meu caso, eu até prefiro usar script, pra fazer o trabalho todo desde atualizar o sistema até instalar os programas com um único comando sem ter que monitorar.

Mas eu fico em dúvida, se eu posso usar o comando "apt-get upgrade" e atualizar todo o sistema, e logo após, sair instalando todos os outros programas da lista sem antes reiniciar o computador, já que na atualização padrão do sistema, a reinicialização é solicitada.

Exemplo usando o gksudo, não sendo necessário abrir um terminal. Ou troque gksudo por sudo para terminal.
No meu ubuntu 15.10 o gksudo não funciona, tentei agora no terminal, e aparece a mensagem:

root@carlos-System-Product-Name:/home/carlos# gksudo apt-get update
O programa 'gksudo' não está instalado no momento. Você pode instalá-lo digitando:
apt-get install gksu

tentei instalar este gksudo e o apt não encontra ele no repositório.


Agora se deseja aprender a criar um script é outra coisa.

Recentemente comecei ler algumas coisas sobre Shell Script, estou com várias apostilas aqui, vou começar ler elas ainda.
Mas pretendo aprender sim, este script foi só um ponta pé inicial mesmo, pois ainda pretendo aprender mais.


Valeu pela força.

Tota

Citarjá que na atualização padrão do sistema, a reinicialização é

Não exatamente.

O sistema só irá pedir para reiniciar em caso de atualização do kernel.

Se sua máquina não é um servidor, mas uma máquina doméstica ou de trabalho, não é necessária a reinicialização imediata. É possível se continuar a trabalhar e desligar no final da jornada.

Ao ligar a máquina no dia seguinte.o novo kernel será inserido e carregado.

paulobenedito

Apenas um adendo a concatenação de pacotes em um comando:

1º - Você pode separar também vários comandos com ; ou &&
sudo apt clean ; sudo apt update ; sudo apt dist-upgrade ; sudo apt install clementine

2º - você também pode esquecer o GET no comando do APT, por exemplo digitar assim:
sudo apt update

Irá funcionar da mesma forma que se fosse digitado: sudo apt-get update, isso apenas diminui a digitação mas não influi em nenhuma diferença o APT executa da mesma forma.

T+

carlosadriano

Citação de: paulobenedito online 25 de Fevereiro de 2016, 09:26
Apenas um adendo a concatenação de pacotes em um comando:

1º - Você pode separar também vários comandos com ; ou &&
sudo apt clean ; sudo apt update ; sudo apt dist-upgrade ; sudo apt install clementine

2º - você também pode esquecer o GET no comando do APT, por exemplo digitar assim:
sudo apt update

Irá funcionar da mesma forma que se fosse digitado: sudo apt-get update, isso apenas diminui a digitação mas não influi em nenhuma diferença o APT executa da mesma forma.

T+

Interessante, eu não sabia que podia usar o apt-get só com apt

Deixa eu ver se eu entendi, eu posso separar comandos assim,

apt update; apt upgrade; apt install gimp; apt install firefox;

ou

apt update && apt  upgrade && apt install gimp


Bacana, valeu.

paulobenedito

Sim e não, mas nesse caso de atualização, instalação há sempre um espaço depois do comando e o ponto e virgula e novamente outro espaço depois do ponto e virgula para outro comando, ou seja:

apt update ; apt dist-upgrade ; apt install clementine

Ou

apt update && apt dist-upgrade

Espaço depois do comando e ; outro espaço depois do ponto e virgula mais um comando

Espero ter sido útil de alguma forma ao seu tópico.

T+

carlosadriano

Atualmente este meu arquivo está um pouco mudado...

#!/bin/bash

apt-get update
apt-get upgrade -y
apt-get install cinnamon -y

apt-get install crunch -y
apt-get install wireshark -y
apt-get install reaver -y
apt-get install hydra -y
apt-get install nmap  -y
apt-get install sqlmap -y
apt-get install rarcrack -y
apt-get install kismet  -y
apt-get install aircrack-ng -y
apt-get install librecad -y
apt-get install virtualbox -y
apt-get install freecad -y
apt-get install deluge -y
apt-get install compizconfig-settings-manager -y
apt-get install openshot -y
apt-get install inkscape -y
apt-get install audacious -y
apt-get install alarm-clock -y
apt-get install avidemux -y
apt-get install wine -y
apt-get install devede -y
apt-get install gimp -y
apt-get install k3b -y
apt-get install winetricks -y
apt-get install firefox -y
apt-get install vlc -y
apt-get install usb-creator-kde -y
apt-get install usb-creator-gtk -y
apt-get install libreoffice -y
apt-get install supertux -y
apt-get install supertuxkart -y
apt-get install frogatto -y
apt-get install playonlinux -y
apt-get install armagetronad -y
apt-get install frozen-bubble -y
apt-get install totem -y
apt-get install brasero -y
apt-get install ubuntu-restricted-extras -y
apt-get install gnome-multi-writer -y
apt-get install gparted -y
apt-get install amarok -y
apt-get install pv -y
apt-get install xmoto -y
apt-get install torcs -y
apt-get install sauerbraten -y
apt-get install neverball -y
apt-get install extremetuxracer -y
apt-get install billard-gl -y
apt-get install gnome-chess -y
apt-get install openbve -y
apt-get install stellarium -y
apt-get install gufw -y
apt-get install rar -y
apt-get install ufw -y
apt-get install 0ad -y
apt-get install glchess -y
apt-get install kcheckers -y
apt-get install flightgear -y
apt-get install freetennis -y
apt-get install openarena -y
apt-get install nexuiz -y
apt-get install redeclipse -y

ufw enable

clear
echo Repositorio Atualizado.
echo Sistema Atualizado.
echo Programas instalados.
echo .
echo ..
echo ...
echo Pressione Enter para Continuar
read #pausa

exit




Rodei este script no Debian, que acabei de instalar em minha máquina, e isso me economizou mais de 4 horas de tempo, e o processo não demorou nem 30 minutos, e eu nem precisei ficar assistindo nada das instalações, muito bacana!

Valeu companheiros !