Instalador de programas
Publicado por Luciano Hanzo (última atualização em 26/11/2024)
[ Hits: 1.181 ]
Homepage: :(
Esse script ajuda na instalação inicial do sistema linux.
Lembre-se de colocar os programas dentro dos vetores ou criar um vetor novo e chamar no final do script.
Execute com :
sudo bash inicial_bash.sh ou sudo chmod +x inicial_bash.sh ; ./script.sh
Espero que esse script ajude a comunidade.
Farei mudanças futuras pelo github.
https://github.com/lucianohanzo/inicial_bash
#!/bin/bash
# Instalação de programas iniciais.
# Criador : LUCIANO PEREIRA DE SOUZA
# REVISOR : LUCIANO PEREIRA DE SOUZA
# OBS : Esse programa instala vários programas de uma vez, através de vetores.
# Verifica se o usuário é root.
USUARIO=$(whoami)
if [ $USUARIO = "root" ];then
echo "Bem vindo root!" ; echo
else
echo "Somente root!"
echo "Tente \"sudo -i\" ou \"sudo $0\""
exit 1
fi
# Verifica se tem internet.
internet () {
ping $1 -c2 > /dev/null 2>&1
if [ $? != 0 ]; then
return 100
fi
}
# Verifica o gerenciador de pacotes.
if [ -f /usr/bin/rpm ]; then
Pacote="yum"
elif [ -f /usr/bin/dpkg ]; then
Pacote="apt"
else
echo "Gerenciador de pacotes não encontrado!" ; exit 1
fi
# Cria o arquivo de log caso não exista.
ArquivoLog=/var/log/instalador.log
[ -f $ArquivoLog ] || \
sudo echo "> Data e Hora <| Situação | > Pacote" \
> $ArquivoLog
# Lista de programas.
# Os programas aqui estão armazenados em vetores.
Gedit=("gedit" "gedit-plugins" "gedit-plugin-text-size")
Windows=("wine" "q4wine")
Navegadores=("falkon")
Utilitarios=("vlc" "qbittorrent" "vim" "gparted" "thunderbird" "nautilus" \
"nemo" "gnome-font-viewer" "gnome-tweaks" "gdebi" "evince" \
"libreoffice")
Edicao=("gimp" "inkscape" "audacity" "shotcut" "obs-studio")
Idiomas=("libreoffice-l10n-pt-br" \
"thunderbird-l10n-pt-br" \
"firefox-esr-l10n-pt-br")
# Limpador de log.
# Deixa o arquivo de log com máximo de 1000 linhas.
limpa_logs () {
[ -f $ArquivoLog ] && \
Linhas=$(wc -l $ArquivoLog | cut -d" " -f1) && \
while [ $Linhas -gt 1000 ]; do
sed -i "2d" $ArquivoLog > /dev/null
Linhas=$(wc -l $ArquivoLog | cut -d" " -f1)
done
}
# Função Principal
insta_programas () {
Vetor=("$@")
for p in ${Vetor[@]}; do
echo "Instalando : $p"
internet www.google.com
if [ $? = 100 ]; then
echo -e "\nPacote $p não foi instalado."
echo ">>> Sem acesso a internet ou sem DNS configurado. <<<"
limpa_logs
exit 2
fi
sudo $Pacote install -y $p > /dev/null 2>&1
Status=$? ; Data=$(date "+%d-%m-%Y %H:%M:%S")
if [ $Status = 0 ]; then
echo "$Data | Instalado | > $p" >> $ArquivoLog
else
echo "$Data | Erro | > $p" >> $ArquivoLog
fi
done
}
mostra_log () {
echo -e "\n\nFinal do arquivo de log em $ArquivoLog"
tail -n 100 $ArquivoLog
}
# Chamada de funções
insta_programas ${Gedit[@]}
insta_programas ${Windows[@]}
insta_programas ${Navegadores[@]}
insta_programas ${Utilitarios[@]}
insta_programas ${Edicao[@]}
insta_programas ${Idiomas[*]}
limpa_logs
mostra_log
Script para Ler código de barras serial e jogar no buffer do teclado
FindBackdoor - Detectar possíveis backdoors em arquivos PHP (WordPress)
Mudar senha de usuário automaticamente
Script Administração SquidFacil Ubuntu 11.10
Papagaiando o XFCE com temas e recursos
WhatsApp com Chamadas no Linux via Waydroid
XFCE - quase um Gnome ou Plasma mas muito mais leve
LXQT - funcional para máquinas pererecas e usuários menos exigentes
Como cortar as partes de um vídeo com passagens de áudio em branco
Tiling automático no KDE Plasma
SNMP Scan no OCS Inventory só funciona com HTTPS corretamente configurado
Links importantes de usuários do vol (4)
GOG confirma suporte oficial ao sistema Linux: "o trabalho começo... (2)
Para os fãs de DOOM, um vídeo do Romero (com dublagem em pt-br disponí... (2)









