Skip to content

Instantly share code, notes, and snippets.

@carlosanders
Last active June 24, 2025 22:26
Show Gist options
  • Save carlosanders/3462ed9721b76c1c14bbe73b0e955853 to your computer and use it in GitHub Desktop.
Save carlosanders/3462ed9721b76c1c14bbe73b0e955853 to your computer and use it in GitHub Desktop.
#!/bin/bash
# Script para o Ubuntu 24
# Script Autor: Carlos Anders
ver_so=`lsb_release -d`
# arquivos do usuario logado na maquina que tera acesso via proxy
usuario_logado="anders"
#senha=marinha
# Rotina principal do script e chamada na ordem abaixo do arquivo
main() {
echo -e "\033[01;47;31m>>>>>>>> Servidor: ${ver_so} <<<<<<<<\033[00m"
install_eclipse_jee_fn
install_sts_fn
echo -e '\033[00;47;31m----- Provisionamento Concluído ----- \033[00m'
}
#sub-rotina
install_sts_fn() {
echo -e '\033[01;33m>>>>>>>> Configurando o bash do SO <<<<<<<<\033[00m'
wget https://cdn.spring.io/spring-tools/release/STS4/4.31.0.RELEASE/dist/e4.36/spring-tools-for-eclipse-4.31.0.RELEASE-e4.36.0-linux.gtk.x86_64.tar.gz
tar -xvf spring*
sudo mv sts-* /opt/sts/
sudo ln -sf /opt/sts/SpringToolSuite4 /usr/bin/sts
echo -e '[Desktop Entry]\n Version=1.0\n Name=STS\n Comment=Spring Tool for Eclipse IDE\nExec=/opt/sts/SpringToolSuite4\n Icon=/opt/sts/icon.xpm\n Type=Application\n Categories=Development;IDE;Java;' | sudo tee /usr/share/applications/sts.desktop
sudo chmod +x /usr/share/applications/sts.desktop
cp /usr/share/applications/sts.desktop ~/Desktop
# link
# https://sempreupdate.com.br/guia-passo-a-passo-para-instalar-a-ide-eclipse-no-linux/
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
install_eclipse_jee_fn() {
echo -e '\033[01;33m>>>>>>>> Configurando o bash do SO <<<<<<<<\033[00m'
wget https://mirror.kakao.com/eclipse/oomph/epp/downloads/release/2025-06/R/eclipse-jee-2025-06-R-linux-gtk-x86_64.tar.gz
tar -xvf eclipse-jee-2025-06-R-linux-gtk-x86_64.tar.gz
sudo mv eclipse/ /opt
sudo ln -sf /opt/eclipse/eclipse /usr/bin/eclipse
echo -e '[Desktop Entry]\n Version=1.0\n Name=Eclipse Java\n Comment=Eclipse IDE for Enterprise Java and Web Developers\nExec=/opt/eclipse/eclipse\n Icon=/opt/eclipse/icon.xpm\n Type=Application\n Categories=Development;IDE;Java;' | sudo tee /usr/share/applications/eclipse.desktop
sudo chmod +x /usr/share/applications/eclipse.desktop
cp /usr/share/applications/eclipse.desktop ~/Desktop
# link
# https://sempreupdate.com.br/guia-passo-a-passo-para-instalar-a-ide-eclipse-no-linux/
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
main
exit 0
#!/bin/bash
# Script para o Ubuntu 24
# Script Autor: Carlos Anders
ver_so=`lsb_release -d`
# arquivos do usuario logado na maquina que tera acesso via proxy
usuario_logado="user"
#user/senha proxy
user_proxy="user"
# Para senhas proxy com carcteres especias usar duplo %%
# systemctl uses doubles to escape special characters like % and $
# https://forums.docker.com/t/proxy-settings-do-not-work-for-either-etc-default-docker-or-systemd-drop-ins/68891/17
user_passwd="password"
url_proxy="proxy"
port_proxy="XXXX"
### cores ###
c_red_b_white="\033[01;47;31m"
c_amarelo="\033[01;33m"
c_azul="\033[00;36m"
c_fechamento="\033[00m"
#########################################################################
# Rotina principal
main() {
echo -e "${c_red_b_white}>>>>>>>> Servidor: ${ver_so} <<<<<<<<${c_fechamento}"
docker_go
docker_compose_go
#docker_config_proxy_go
echo -e "${c_red_b_white}----- Provisionamento Concluído ----- ${c_fechamento}"
}
docker_config_proxy_go(){
echo -e "${c_amarelo} >>>>>>>> Etapa 3: Docker Proxy <<<<<<<<${c_fechamento}"
sudo mkdir -p /etc/systemd/system/docker.service.d
file_proxy=/etc/systemd/system/docker.service.d/http-proxy.conf
sudo touch ${file_proxy}
sudo cat > ${file_proxy} <<EOF
[Service]
Environment="HTTP_PROXY=http://${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy}/"
Environment="HTTPS_PROXY=http://${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy}/"
Environment="NO_PROXY="localhost,127.0.0.1,::1"
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker.service
sudo systemctl show --property=Environment docker
echo -e "${c_azul}----- Concluído ----- ${c_fechamento}"
}
docker_go(){
echo -e "${c_amarelo} >>>>>>>> Etapa 1: Docker <<<<<<<<${c_fechamento}"
# link: https://gist.github.com/fredhsu/f3d927d765727181767b3b13a3a23704
sudo apt-get install -y \
apt-transport-https \
ca-certificates \
gnupg-agent \
curl \
software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo apt-key fingerprint 0EBFCD88
sudo add-apt-repository -y \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
sudo apt-get update
sudo apt-get install -y docker-ce
sudo docker run hello-world
# Linux post-install
sudo groupadd docker
sudo usermod -aG docker $USER
sudo usermod -aG docker $(whoami)
sudo gpasswd -a $USER docker
sudo systemctl enable docker
sudo systemctl status docker
sudo systemctl daemon-reload
sudo systemctl restart docker.service
#su - ${USER}
#id -nG
docker info
echo -e "${c_azul}----- Concluído ----- ${c_fechamento}"
}
docker_compose_go(){
echo -e "${c_amarelo} >>>>>>>> Etapa 2: Docker Compose <<<<<<<<${c_fechamento}"
# link: https://www.digitalocean.com/community/tutorials/how-to-install-docker-compose-on-ubuntu-18-04-pt
#sudo curl -L https://github.com/docker/compose/releases/download/2.37.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
mkdir -p ~/.docker/cli-plugins/
curl -SL https://github.com/docker/compose/releases/download/v2.37.1/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose
ls -lh ~/.docker/cli-plugins
chmod +x ~/.docker/cli-plugins/docker-compose
docker compose version
echo -e "${c_azul}----- Concluído ----- ${c_fechamento}"
}
main
exit 0
#!/bin/bash
# Script para o Ubuntu 24
# Script Autor: Carlos Anders
ver_so=`lsb_release -d`
# arquivos do usuario logado na maquina que tera acesso via proxy
usuario_logado="anders"
#senha=marinha
# Rotina principal do script e chamada na ordem abaixo do arquivo
main() {
echo -e "\033[01;47;31m>>>>>>>> Servidor: ${ver_so} <<<<<<<<\033[00m"
config_bash_go
user_to_sudoers_go
echo -e '\033[00;47;31m----- Provisionamento Concluído ----- \033[00m'
}
#sub-rotina de configuração no bash do ubuntu
config_bash_go() {
echo -e '\033[01;33m>>>>>>>> Configurando o bash do SO <<<<<<<<\033[00m'
profile_user1_file="/home/${usuario_logado}/.bashrc"
# apaga as ocorrencias
sudo sed -i '/TITLEPREFIX=/d' ${profile_user1_file}
PS1='\[\033]0;$TITLEPREFIX:${PWD//[^[:ascii:]]/?}\007\]\n\[\033[01;34m\][\D{%d.%m.%Y}] \[\033[32m\]\u@\h \[\033[35m\]$MSYSTEM\[\033[33m\]\w\[\033[36m \]\[\033[0m\]\n$ '
echo "$PS1"
sudo echo "export PS1='${PS1}'" >> ${profile_user1_file}
#alterando o historico para exibir a data do comando
#echo 'export HISTTIMEFORMAT="%d/%m/%y %T "' >> ~/.bash_profile
#echo 'export HISTTIMEFORMAT="%d.%m.%y %H:%M ""' >> ~/.bash_profile
#source ~/.bash_profile
source ${profile_user1_file}
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
#sub-rotina de configuração no bash do ubuntu
user_to_sudoers_go() {
echo -e '\033[01;33m>>>>>>>> Configurando User to Sudoers <<<<<<<<\033[00m'
# https://linuxize.com/post/how-to-add-user-to-sudoers-in-ubuntu/
sudo usermod -aG sudo ${usuario_logado}
sudo whoami
echo "${usuario_logado} ALL=(ALL) ALL" >> /etc/sudoers
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
main
exit 0
#!/bin/bash
# Script para o Ubuntu 22
# Script Autor: Carlos Anders
ver_so=`lsb_release -d`
# arquivos do usuario logado na maquina que tera acesso via proxy
usuario_logado="aluno"
usuario_path1="/home/${usuario_logado}"
#user/senha proxy
user_proxy="user1"
user_passwd="senha"
#url proxy
url_proxy="server"
port_proxy="porta"
# Rotina principal do script e chamada na ordem abaixo do arquivo
main() {
echo -e "\033[01;47;31m>>>>>>>> Servidor: ${ver_so} <<<<<<<<\033[00m"
alterar_repo_internet_go
#alterar_repo_intranet_go
#proxy_go
#tools_go
teste_proxy_go
config_bash_go
user_to_sudoers_go
echo -e '\033[00;47;31m----- Provisionamento Concluído ----- \033[00m'
}
#sub-rotina para alterar os repo para internet
alterar_repo_internet_go() {
echo -e '\033[01;33m>>>>>>>> Removendo os repositórios da intranet <<<<<<<<\033[00m'
repositorio_file="/etc/apt/sources.list"
sudo mv ${repositorio_file} ~/Downloads/sources-mb.list
sudo touch ${repositorio_file}
sudo cat << EOF >> ${repositorio_file}
# /etc/apt/sources.list
deb http://br.archive.ubuntu.com/ubuntu/ jammy main restricted
deb http://br.archive.ubuntu.com/ubuntu/ jammy-updates main restricted
deb http://br.archive.ubuntu.com/ubuntu/ jammy universe
deb http://br.archive.ubuntu.com/ubuntu/ jammy-updates universe
deb http://br.archive.ubuntu.com/ubuntu/ jammy multiverse
deb http://br.archive.ubuntu.com/ubuntu/ jammy-updates multiverse
deb http://br.archive.ubuntu.com/ubuntu/ jammy-backports main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu jammy-security main restricted
deb http://security.ubuntu.com/ubuntu jammy-security universe
deb http://security.ubuntu.com/ubuntu jammy-security multiverse
EOF
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
#sub-rotina para alterar os repo para internet
alterar_repo_intranet_go() {
echo -e '\033[01;33m>>>>>>>> Removendo os repositórios da intranet <<<<<<<<\033[00m'
repositorio_file="/etc/apt/sources.list"
sudo mv ${repositorio_file} ~/Downloads/sources-internet.list
sudo touch ${repositorio_file}
sudo cat << EOF >> ${repositorio_file}
# Repo da Intranet
deb ftp://ubuntu.ctim.mb/ubuntu/ jammy main restricted multiverse universe
deb ftp://ubuntu.ctim.mb/ubuntu/ jammy-updates main restricted multiverse universe
deb ftp://ubuntu.ctim.mb/ubuntu/ jammy-security main restricted multiverse universe
deb ftp://ubuntu.ctim.mb/mb/ jammy main
EOF
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
#sub-rotina que verifica se existe proxy no sistema
#se sim chama as outras sub-rotinas, evitando duplicidade de proxy no sistema
proxy_go() {
echo -e '\033[01;33m>>>>>>>> Verficando o proxy no Servidor <<<<<<<<\033[00m'
FILE="/etc/apt/apt.conf.d/00proxy"
if [ ! -f "$FILE" ]; then
echo -e '\033[00;36mO proxy não está presente! \033[00m'
insere_proxy_go
else
echo -e '\033[00;36mO proxy está presente! \033[00m'
#echo "$FILE does not exist."
deleta_proxy_go
insere_proxy_go
fi
echo -e '\033[00;36mVerificações de Proxy Concluídas \033[00m'
}
#sub-rotina chamada quando existe proxy no sistema
deleta_proxy_go() {
echo -e '\033[01;33m>>>>>>>> Removendo proxy do Servidor <<<<<<<<\033[00m'
FILE="/etc/apt/apt.conf.d/00proxy"
#apaga ocorrencias de proxy no arquivo
environment_file="/etc/environment"
sudo sed -i '/proxy/d' ${environment_file}
sudo sed -i '/Proxy/d' ${environment_file}
sudo sed -i '/{/d' ${environment_file}
sudo sed -i '/}/d' ${environment_file}
#apaga arquivo FILE
sudo rm -rf ${FILE}
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
#sud-rotina chamada para inserir proxy no sistema
insere_proxy_go(){
echo -e '\033[01;33m>>>>>>>> Inserindo o proxy no Servidor <<<<<<<<\033[00m'
FILE="/etc/apt/apt.conf.d/00proxy"
#Habilita apt.conf file
sudo touch ${FILE}
sudo cat << EOF > ${FILE}
Acquire::http::Proxy "http://${url_proxy}:${port_proxy}/";
Acquire::https::Proxy "http://${url_proxy}:${port_proxy}/";
Acquire::ftp::Proxy "ftp://${url_proxy}:${port_proxy}/";
Acquire::socks::Proxy "socks://${url_proxy}:${port_proxy}/";
EOF
environment_file="/etc/environment"
#Habilita enviroment file
sudo cat << EOF >> ${environment_file}
##Configurando o Proxy##
http_proxy="http://${url_proxy}:${port_proxy}"
ftp_proxy="ftp://${url_proxy}:${port_proxy}"
https_proxy="http://${url_proxy}:${port_proxy}"
socks_proxy="socks://${url_proxy}:${port_proxy}"
EOF
http_proxy="http://${url_proxy}:${port_proxy}"
ftp_proxy="ftp://${url_proxy}:${port_proxy}"
https_proxy="http://${url_proxy}:${port_proxy}"
socks_proxy="socks://${url_proxy}:${port_proxy}"
export http_proxy ftp_proxy https_proxy socks_proxy
echo $https_proxy
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
teste_proxy_go(){
echo -e '\033[01;33m>>>>>>>> Testes de comunicação proxy na Internet <<<<<<<<\033[00m'
# URL ativa
url="https://siscatbr-prod.eb.mil.br/api-siscatbr-singra-prod"
# recurso para teste na API
recurso="empresas/D9204"
# user/senha API:
autenticacao="Authorization: Basic YWRtaW46YXBhc3N3b3Jk"
curl --version
http_response=$(curl -k -x ${url_proxy}:${port_proxy} --proxy-user ${user_proxy}:${user_passwd} -s -o /dev/null -I -w "%{http_code}" -H "${autenticacao}" ${url}/${recurso})
echo $http_response
echo "Testando comunicação com site do github"
wget github.com
dir=$(PWD)
sudo rm -rf ${dir}/index.html
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
#sub-rotina de isntalação de pacotes básicos para o sistema
tools_go() {
# Install basic tools
echo -e '\033[01;33m>>>>>>>> Instalando pacotes úteis <<<<<<<<\033[00m'
sudo apt-get update
sudo apt-get -y install git curl software-properties-common vim
sudo apt install openssh-server -y
sudo systemctl status ssh
sudo ufw allow ssh
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
#sub-rotina de configuração no bash do ubuntu
config_bash_go() {
echo -e '\033[01;33m>>>>>>>> Configurando o bash do SO <<<<<<<<\033[00m'
profile_user1_file="${usuario_path1}/.bashrc"
# apaga as ocorrencias
sudo sed -i '/TITLEPREFIX=/d' ${profile_user1_file}
PS1='\[\033]0;$TITLEPREFIX:${PWD//[^[:ascii:]]/?}\007\]\n\[\033[01;34m\][\D{%d.%m.%Y}] \[\033[32m\]\u@\h \[\033[35m\]$MSYSTEM\[\033[33m\]\w\[\033[36m \]\[\033[0m\]\n$ '
echo "$PS1"
sudo echo "export PS1='${PS1}'" >> ${profile_user1_file}
#alterando o historico para exibir a data do comando
#echo 'export HISTTIMEFORMAT="%d/%m/%y %T "' >> ~/.bash_profile
#echo 'export HISTTIMEFORMAT="%d.%m.%y %H:%M ""' >> ~/.bash_profile
#source ~/.bash_profile
source ${profile_user1_file}
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
#sub-rotina de configuração no bash do ubuntu
user_to_sudoers_go() {
echo -e '\033[01;33m>>>>>>>> Configurando User to Sudoers <<<<<<<<\033[00m'
# https://linuxize.com/post/how-to-add-user-to-sudoers-in-ubuntu/
sudo usermod -aG sudo ${usuario_logado}
sudo whoami
echo "${usuario_logado} ALL=(ALL) ALL" >> /etc/sudoers
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
main
exit 0
#!/bin/bash
# Script para o Ubuntu 18
# Script Autor: Carlos Anders
ver_so=`lsb_release -d`
#coloque o mesmo ip que foi setado no arquivo Vagranfile em private_network
#para qaundo debugar as aplicações com o VM esteja configurado corretamente
host_xdebug_file="localhost"
### cores ###
c_red_b_white="\033[01;47;31m"
c_amarelo="\033[01;33m"
c_azul="\033[00;36m"
c_fechamento="\033[00m"
#########################################################################
# Rotina principal
main() {
echo -e "${c_red_b_white}>>>>>>>> Servidor: ${ver_so} <<<<<<<<${c_fechamento}"
docker_change_go
config_xdebug_go
config_phpINI_go
echo -e "${c_red_b_white}----- Provisionamento Concluído ----- ${c_fechamento}"
}
docker_change_go(){
echo -e "${c_amarelo} >>>>>>>> Etapa 2: Change Docker <<<<<<<<${c_fechamento}"
# bizu:
# http://devfuria.com.br/linux/instalando-xdebug/
PS1_ROOT='\[\033]0;$TITLEPREFIX:${PWD//[^[:ascii:]]/?}\007\]\n\[\033[01;34m\][container] \[\033[32m\]\u@\h \[\033[35m\]$MSYSTEM\[\033[33m\]\w\[\033[36m \]\[\033[0m\]\n# '
profile_root_file="/root/.bashrc"
echo "$PS1"
echo "export PS1='${PS1_ROOT}'" >> ${profile_root_file}
source ${profile_root_file}
rm -rf /etc/apt/sources.list.d/ondrej-php5-oldstable-precise.list
apt-get update
apt-get install -y python-software-properties wget software-properties-common vim
add-apt-repository -y ppa:rahul286/php54
apt-get update
apt-get -y install gcc make autoconf libc-dev pkg-config
# https://xdebug.org/download/historical
wget https://xdebug.org/files/xdebug-2.4.1.tgz -O /root/xdebug-2.4.1.tgz
(cd /root; chmod 777 xdebug-2.4.1.tgz)
(cd /root; tar -xvzf xdebug-2.4.1.tgz)
#(cd /root/xdebug-2.4.1; tar -xvzf xdebug-2.4.1.tgz)
apt-get install -y php5-dev
(cd /root/xdebug-2.4.1; phpize)
#phpize
(cd /root/xdebug-2.4.1; ./configure)
#./configure
(cd /root/xdebug-2.4.1; make)
#make
cp /root/xdebug-2.4.1/modules/xdebug.so /usr/lib/php5/20100525
ls -lh /usr/lib/php5/20100525
echo "zend_extension = /usr/lib/php5/20100525/xdebug.so" >> /etc/php5/apache2/php.ini
echo "zend_extension = /usr/lib/php5/20100525/xdebug.so" >> /etc/php5/cli/php.ini
echo -e "${c_azul}----- Concluído ----- ${c_fechamento}"
}
#sub-rotina do Xdebug
config_xdebug_go(){
echo -e '\033[01;33m>>>>>>>> Configuração do Xdebug... <<<<<<<<\033[00m'
xdebug_config_file="/etc/php5/mods-available/xdebug.ini"
#add o xdebug no php ini
if [ ! -f "${xdebug_config_file}" ]; then
cat << EOF > ${xdebug_config_file}
zend_extension=xdebug.so
xdebug.remote_enable=1
xdebug.remote_connect_back=1
xdebug.remote_port=9000
xdebug.remote_host=${host_xdebug_file}
EOF
fi
#/etc/init.d/apache2 restart
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
#sub-rotina do Xdebug
config_phpINI_go(){
echo -e '\033[01;33m>>>>>>>> Configuração do Xdebug... <<<<<<<<\033[00m'
php_config_file=/etc/php5/apache2/php.ini
#Alterando dados no php.ini
sed -i "s/display_startup_errors = Off/display_startup_errors = On/g" ${php_config_file}
sed -i "s/display_errors = Off/display_errors = On/g" ${php_config_file}
sed -i "s/short_open_tag = Off/short_open_tag = On/g" ${php_config_file}
sed -i "s/max_execution_time = 30/max_execution_time = -1/g" ${php_config_file}
sed -i "s/max_input_time = 60/max_input_time = -1/g" ${php_config_file}
sed -i "s/track_errors = Off/track_errors = On/g" ${php_config_file}
sed -i "s/error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT/error_reporting = E_ALL/g" ${php_config_file}
sed -i "s/upload_max_filesize = 2M/upload_max_filesize = 100M/g" ${php_config_file}
#se estiver config a lib ZF no arquivo Vagrantfile entao eh so descomentar essa linha
#sed -i 's/;include_path = ".:/php/includes"/include_path = ".:/vagrant/libs"/g' ${php_config_file}
#sudo echo -e '\ninclude_path = ".:/vagrant_libs"\n' >> ${php_config_file}
cat << EOF >> ${php_config_file}
[Date]
date.timezone=America/Sao_Paulo
EOF
#service apache2 reload
#/etc/init.d/apache2 restart
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
main
exit 0
#!/bin/bash
# Script para o Ubuntu Server 16.04
# Script Autor: Carlos Anders
###########################################################################
###########################################################################
################## ARQUIVOS QUE NÃO PODEM MEXER ###########################
#default_apache_index="/var/www/html/index.html"
# files the proxy
apt_config_file="/etc/apt/apt.conf"
profile_config_file="/etc/profile"
wgetrc_config_file="/etc/wgetrc"
environment_file="/etc/environment"
###########################################################################
#user/senha proxy
user_proxy="usuario"
user_passwd="senha"
#url proxy
url_proxy="proxy.local"
port_proxy="6090"
ver_so=`cat /etc/os-release | grep PRETTY_NAME= | cut -d\= -f2-`
# Rotina principal do script e chamada na ordem abaixo do arquivo
main() {
echo -e "\033[01;47;31m>>>>>>>> Provisionando Servidor: ${ver_so} <<<<<<<<\033[00m"
proxy_go
echo -e '\033[00;47;31m----- Provisionamento Concluído ----- \033[00m'
}
#sub-rotina que verifica se existe proxy no sistema
#se sim chama as outras sub-rotinas, evitando duplicidade de proxy no sistema
proxy_go() {
echo -e '\033[01;33m>>>>>>>> Verficando o proxy no Servidor <<<<<<<<\033[00m'
if ! grep -in "proxy" ${environment_file}; then
echo -e '\033[00;36mO proxy não está presente! \033[00m'
insere_proxy_go
else
echo -e '\033[00;36mO proxy está presente! \033[00m'
deleta_proxy_go
insere_proxy_go
fi
echo -e '\033[00;36mVerificações de Proxy Concluídas \033[00m'
}
#sub-rotina chamada quando existe proxy no sistema
deleta_proxy_go() {
echo -e '\033[01;33m>>>>>>>> Atualizando o proxy no Servidor <<<<<<<<\033[00m'
#apaga ocorrencias de proxy no arquivo
sudo sed -i '/proxy/d' ${environment_file}
sudo sed -i '/{/d' ${environment_file}
sudo sed -i '/}/d' ${environment_file}
#apaga arquivo apt.conf
sudo rm -rf ${apt_config_file}
#apaga ocorrencias de proxy no arquivo /etc/profile
sudo sed -i '/proxy/d' ${wgetrc_config_file}
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
#sud-rotina chamada para inserir proxy no sistema
insere_proxy_go(){
echo -e '\033[01;33m>>>>>>>> Inserindo o proxy no Servidor <<<<<<<<\033[00m'
#Habilita enviroment file
sudo cat << EOF >> ${environment_file}
##Configurando o Proxy##
http_proxy="http://${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy}"
ftp_proxy="ftp://${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy}"
https_proxy="http://${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy}"
socks_proxy="socks://${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy}"
Acquire{
HTTP::Proxy ${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy};
HTTPS::Proxy ${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy};
FTP::Proxy ${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy};
}
alias wget="wget --proxy-user=${user_proxy} --proxy-passwd=${user_passwd}"
alias curl="curl -x ${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy}"
EOF
#Habilita apt.conf file
sudo touch ${apt_config_file}
sudo cat << EOF >> ${apt_config_file}
##Configurando o Proxy##
Acquire::http::proxy "http://${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy}/";
Acquire::https::proxy "https://${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy}/";
Acquire::ftp::proxy "ftp://${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy}/";
Acquire::socks::proxy "socks://${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy}/";
EOF
#Habilita export
sudo echo "export http_proxy ftp_proxy https_proxy socks_proxy" >> ${profile_config_file}
#Hailita wget
sudo cat << EOF >> ${wgetrc_config_file}
https_proxy = https://${url_proxy}:${port_proxy}/
http_proxy = http://${url_proxy}:${port_proxy}/
ftp_proxy = ftp://${url_proxy}:${port_proxy}/
proxy_user = ${user_proxy}
proxy_passwd = ${user_passwd}
use_proxy = on
EOF
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
main
exit 0
#!/bin/bash
# Script Autor: Carlos Anders
###########################################################################
# VRF versao SO
ver_so=`lsb_release -d`
### cores ###
c_red_b_white="\033[01;47;31m"
c_amarelo="\033[01;33m"
c_azul="\033[00;36m"
c_fechamento="\033[00m"
#usuario=$USER
usuario="anders"
#usuario_logado=$USER
usuario_path1="/home/${usuario}"
# Config Git
nome_user="Anders"
nome_email="e-mail"
#########################################################################
# Rotina principal do script e chamada na ordem abaixo do arquivo
main() {
echo -e "${c_red_b_white}>>>>>>>> Servidor: ${ver_so} <<<<<<<<${c_fechamento}"
nvm_install_go
#nvm_proxy_go
echo -e "${c_red_b_white} ----- Done Provision ----- ${c_fechamento}"
}
# nvm proxy.
nvm_proxy_go() {
echo -e "${c_amarelo}>>>>>>>> NVM proxy <<<<<<<<${c_fechamento}"
# https://github.com/nvm-sh/nvm#verify-installation
echo -e "${c_amarelo}----- Finish ----- ${c_fechamento}"
}
# nvm.
nvm_install_go() {
echo -e "${c_amarelo}>>>>>>>> NVM install <<<<<<<<${c_fechamento}"
# https://github.com/nvm-sh/nvm#verify-installation
# https://nodejs.org/en/
# https://www.digitalocean.com/community/tutorials/how-to-install-node-js-on-centos-8-pt
# https://linuxize.com/post/how-to-install-node-js-on-centos-7/
sudo apt install -y curl wget
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
#ou
#wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
source /home/${usuario}/.bashrc
nvm --version
nvm list-remote
nvm install --lts
node -v
npm -v
nvm list
echo -e "${c_amarelo}----- Finish ----- ${c_fechamento}"
}
main
exit 0
#!/bin/bash
# Script para o Ubuntu 18
# Script Autor: Carlos Anders
ver_so=`lsb_release -d`
### cores ###
c_red_b_white="\033[01;47;31m"
c_amarelo="\033[01;33m"
c_azul="\033[00;36m"
c_fechamento="\033[00m"
#########################################################################
# Rotina principal
main() {
echo -e "${c_red_b_white}>>>>>>>> Servidor: ${ver_so} <<<<<<<<${c_fechamento}"
docker_oci_12_1_go
#docker_oci_12_2_go
echo -e "${c_red_b_white}----- Provisionamento Concluído ----- ${c_fechamento}"
}
docker_oci_12_1_go(){
echo -e "${c_amarelo} >>>>>>>> Etapa 2: OCI 12_1 Docker <<<<<<<<${c_fechamento}"
# links?
# https://launchpad.net/~rahul286/+archive/ubuntu/php54/+packages
# https://launchpad.net/~sergey-dryabzhinsky/+archive/ubuntu/php54
# PS1_ROOT='\[\033]0;$TITLEPREFIX:${PWD//[^[:ascii:]]/?}\007\]\n\[\033[01;34m\][container] \[\033[32m\]\u@\h \[\033[35m\]$MSYSTEM\[\033[33m\]\w\[\033[36m \]\[\033[0m\]\n# '
# profile_root_file="/root/.bashrc"
# echo "$PS1"
# echo "export PS1='${PS1_ROOT}'" >> ${profile_root_file}
# source ${profile_root_file}
# atualizado repos
apt-get update
# instalando deps
apt-get -y install libaio1 alien unzip libaio-dev php-pear
#criando diretorios
mkdir -p /root/pacotes
cp /var/www/app/teste/arquivos/oracle_12_1/inst* /root/pacotes/
chmod +x /root/pacotes/*
ls -lha /root/pacotes/
# criando e copiando pacotes
mkdir -p /opt/oracle
unzip /root/pacotes/instantclient-basic-linux.x64-12.1.0.2.0.zip -d /opt/oracle
unzip /root/pacotes/instantclient-sdk-linux.x64-12.1.0.2.0.zip -d /opt/oracle
unzip /root/pacotes/instantclient-sqlplus-linux.x64-12.1.0.2.0.zip -d /opt/oracle
# renomeado diretorio
mv /opt/oracle/instantclient* /opt/oracle/instantclient
ln -s /opt/oracle/instantclient/libclntsh.so.12.1 /opt/oracle/instantclient/libclntsh.so
ln -s /opt/oracle/instantclient/libocci.so.12.1 /opt/oracle/instantclient/libocci.so
cat << EOF >> /etc/environment
LD_LIBRARY_PATH="/opt/oracle/instantclient"
TNS_ADMIN="/opt/oracle/instantclient"
ORACLE_BASE="/opt/oracle/instantclient"
ORACLE_HOME="${ORACLE_BASE}"
SQLPATH="/opt/oracle/instantclient:${SQLPATH}"
EOF
pear upgrade --force pear
pear channel-update pear.php.net
export PHP_DTRACE=yes
#export das var de ambiente
export TNS_ADMIN=/opt/oracle/instantclient
#export LD_LIBRARY_PATH=/opt/oracle/instantclient
export LD_LIBRARY_PATH=/opt/oracle/instantclient:$LD_LIBRARY_PATH
export ORACLE_BASE=/opt/oracle/instantclient
export ORACLE_HOME=$ORACLE_BASE
export PATH=/opt/oracle/instantclient:$PATH
export SQLPATH=/opt/oracle/instantclient:${SQLPATH}
sed -i 's/exec $PHP -C -n -q /exec $PHP -C -q /g' /usr/bin/pecl
# para oci8 na versao atual da forma abaixo
printf "shared,instantclient,/opt/oracle/instantclient,$ORACLE_HOME\n" | pecl install oci8-1.4.10
php_config_file="/etc/php5/apache2/php.ini"
chmod 777 ${php_config_file}
chmod 777 /etc/php5/cli/php.ini
#add a extensao no php.ini echo 'extension=oci8.so' >> "/etc/php.ini"
echo 'extension=oci8.so' >> ${php_config_file}
echo 'extension=oci8.so' >> /etc/php5/cli/php.ini
touch /etc/php5/apache2/conf.d/oci8.ini
echo 'extension=oci8.so' > /etc/php5/apache2/conf.d/oci8.ini
ls -lha /etc/php5/apache2/conf.d/
chmod -R 777 /etc/php5/
#touch /etc/profile.d/oracle.sh
printf "# Oracle Client environment\n\
export TNS_ADMIN=/opt/oracle/instantclient\n\
export LD_LIBRARY_PATH=/opt/oracle/instantclient:$LD_LIBRARY_PATH\n\
export ORACLE_BASE=/opt/oracle/instantclient\n\
export ORACLE_HOME=/opt/oracle/instantclient\n\
export SQLPATH=/opt/oracle/instantclient:${SQLPATH}\n\
export PATH=$PATH:/opt/oracle/instantclient\n" > /etc/profile.d/oracle-env.sh
chmod o+r /etc/profile.d/oracle-env.sh
echo "# Oracle Client environment\n" >>/etc/profile
echo "export LD_LIBRARY_PATH=/opt/oracle/instantclient:${LD_LIBRARY_PATH}" >>/etc/profile
echo "export PATH=/opt/oracle/instantclient:${PATH}" >>/etc/profile
echo "export SQLPATH=/opt/oracle/instantclient:${SQLPATH}" >>/etc/profile
source /etc/profile.d/oracle-env.sh
sqlplus -version
echo -e "${c_azul}----- Concluído ----- ${c_fechamento}"
}
docker_oci_12_2_go(){
echo -e "${c_amarelo} >>>>>>>> Etapa 2: OCI 12_2 Docker <<<<<<<<${c_fechamento}"
# links?
# https://launchpad.net/~rahul286/+archive/ubuntu/php54/+packages
# https://launchpad.net/~sergey-dryabzhinsky/+archive/ubuntu/php54
# PS1_ROOT='\[\033]0;$TITLEPREFIX:${PWD//[^[:ascii:]]/?}\007\]\n\[\033[01;34m\][container] \[\033[32m\]\u@\h \[\033[35m\]$MSYSTEM\[\033[33m\]\w\[\033[36m \]\[\033[0m\]\n# '
# profile_root_file="/root/.bashrc"
# echo "$PS1"
# echo "export PS1='${PS1_ROOT}'" >> ${profile_root_file}
# source ${profile_root_file}
# atualizado repos
apt-get update
# instalando deps
apt-get -y install libaio1 alien unzip libaio-dev php-pear
#criando diretorios
mkdir -p /root/pacotes
cp /var/www/app/teste/arquivos/oracle_12_1/inst* /root/pacotes/
chmod +x /root/pacotes/*
ls -lha /root/pacotes/
# criando e copiando pacotes
mkdir -p /opt/oracle
unzip /root/pacotes/instantclient-basic-linux.x64-12.2.0.1.0.zip -d /opt/oracle
unzip /root/pacotes/instantclient-sdk-linux.x64-12.2.0.1.0.zip -d /opt/oracle
unzip /root/pacotes/instantclient-sqlplus-linux.x64-12.2.0.1.0.zip -d /opt/oracle
# renomeado diretorio
mv /opt/oracle/instantclient* /opt/oracle/instantclient
ln -s /opt/oracle/instantclient/libclntsh.so.12.1 /opt/oracle/instantclient/libclntsh.so
ln -s /opt/oracle/instantclient/libocci.so.12.1 /opt/oracle/instantclient/libocci.so
cat << EOF >> /etc/environment
LD_LIBRARY_PATH="/opt/oracle/instantclient"
TNS_ADMIN="/opt/oracle/instantclient"
ORACLE_BASE="/opt/oracle/instantclient"
ORACLE_HOME="${ORACLE_BASE}"
SQLPATH="/opt/oracle/instantclient:${SQLPATH}"
EOF
pear upgrade --force pear
pear channel-update pear.php.net
export PHP_DTRACE=yes
#export das var de ambiente
export TNS_ADMIN=/opt/oracle/instantclient
#export LD_LIBRARY_PATH=/opt/oracle/instantclient
export LD_LIBRARY_PATH=/opt/oracle/instantclient:$LD_LIBRARY_PATH
export ORACLE_BASE=/opt/oracle/instantclient
export ORACLE_HOME=$ORACLE_BASE
export PATH=/opt/oracle/instantclient:$PATH
export SQLPATH=/opt/oracle/instantclient:${SQLPATH}
sed -i 's/exec $PHP -C -n -q /exec $PHP -C -q /g' /usr/bin/pecl
# para oci8 na versao atual da forma abaixo
printf "shared,instantclient,/opt/oracle/instantclient,$ORACLE_HOME\n" | pecl install oci8-1.4.10
php_config_file="/etc/php5/apache2/php.ini"
chmod 777 ${php_config_file}
chmod 777 /etc/php5/cli/php.ini
#add a extensao no php.ini echo 'extension=oci8.so' >> "/etc/php.ini"
echo 'extension=oci8.so' >> ${php_config_file}
echo 'extension=oci8.so' >> /etc/php5/cli/php.ini
touch /etc/php5/apache2/conf.d/oci8.ini
echo 'extension=oci8.so' > /etc/php5/apache2/conf.d/oci8.ini
ls -lha /etc/php5/apache2/conf.d/
chmod -R 777 /etc/php5/
#touch /etc/profile.d/oracle.sh
printf "# Oracle Client environment\n\
export TNS_ADMIN=/opt/oracle/instantclient\n\
export LD_LIBRARY_PATH=/opt/oracle/instantclient:$LD_LIBRARY_PATH\n\
export ORACLE_BASE=/opt/oracle/instantclient\n\
export ORACLE_HOME=/opt/oracle/instantclient\n\
export SQLPATH=/opt/oracle/instantclient:${SQLPATH}\n\
export PATH=$PATH:/opt/oracle/instantclient\n" > /etc/profile.d/oracle-env.sh
chmod o+r /etc/profile.d/oracle-env.sh
echo "# Oracle Client environment\n" >>/etc/profile
echo "export LD_LIBRARY_PATH=/opt/oracle/instantclient:${LD_LIBRARY_PATH}" >>/etc/profile
echo "export PATH=/opt/oracle/instantclient:${PATH}" >>/etc/profile
echo "export SQLPATH=/opt/oracle/instantclient:${SQLPATH}" >>/etc/profile
source /etc/profile.d/oracle-env.sh
sqlplus -version
echo -e "${c_azul}----- Concluído ----- ${c_fechamento}"
}
main
exit 0
#!/bin/bash
# Script para o Ubuntu 18
# Script Autor: Carlos Anders
ver_so=`lsb_release -d`
# arquivos do usuario logado na maquina que tera acesso via proxy
usuario_logado="dabm"
# Rotina principal do script e chamada na ordem abaixo do arquivo
main() {
echo -e "\033[01;47;31m>>>>>>>> Servidor: ${ver_so} <<<<<<<<\033[00m"
php54_manual_go
echo -e '\033[00;47;31m----- Provisionamento Concluído ----- \033[00m'
}
php54_manual_go(){
echo -e "${c_amarelo} >>>>>>>> Etapa 2: OCI 12_1 <<<<<<<<${c_fechamento}"
# atualizado repos
sudo apt-get update
# instalando deps
sudo apt-get -y install build-essential checkinstall zip vim
sudo apt-get install -y libxml2-dev libmcrypt-dev libxslt-dev libbz2-dev
sudo apt-get install -y libcurl4-openssl-dev libcurl4-gnutls-dev
sudo apt-get install -y libjpeg-dev libpng-dev freetype2-demos
cd /usr/local/include/
sudo ln -s /usr/include/x86_64-linux-gnu/curl/
sudo mkdir -p /opt/php/5.4.45
sudo mkdir -p /usr/local/src/php5-build
wget https://www.php.net/distributions/php-5.4.45.tar.gz -O /usr/local/src/php5-build
#wget https://download.netbeans.org/netbeans/8.2/final/bundles/netbeans-8.2-php-linux-x64.sh -O /tmp/netbeans.sh
(cd /usr/local/src/php5-build; sudo chmod +x php-5.4.45.tar.gz)
(cd /usr/local/src/php5-build; sudo tar -xzvf php-5.4.45.tar.gz)
#inclompeto - Anders
sudo ./configure \
--prefix=/opt/php/5.4.45/php-5.4.45 \
--with-zlib-dir \
#--with-freetype-dir \ --error
--enable-cgi \
--enable-mbstring \
--with-libxml-dir=/usr \
--enable-soap \
--enable-calendar \
--with-curl \
--with-mcrypt \
--with-zlib \
--with-gd \
--disable-rpath \
--enable-inline-optimization \
--with-bz2 \
--with-zlib \
--enable-sockets \
--enable-sysvsem \
--enable-sysvshm \
--enable-pcntl \
--enable-mbregex \
--with-mhash \
--enable-zip \
--with-pcre-regex \
--with-mysql \
--with-pgsql \
--with-pdo-mysql \
--with-mysqli \
--with-jpeg-dir=/usr \
--with-png-dir=/usr \
--enable-gd-native-ttf \
--with-openssl \
--with-libdir=lib64 \
--enable-exif \
--enable-dba \
--with-gettext \
--enable-shmop \
--enable-sysvmsg \
--enable-wddx \
--with-imap \
--with-imap-ssl \
--with-kerberos \
--enable-bcmath \
--enable-ftp \
--enable-intl \
--with-pspell
# links?
# https://www.php.net/distributions/php-5.4.45.tar.gz
# https://www.php.net/distributions/php-5.4.45.tar.bz2
# https://blog.hanhans.net/2020/02/20/php-compile-with-bionic/
# https://www.howtoforge.com/building-php-5.4-from-source-on-debian-squeeze
echo -e "${c_azul}----- Concluído ----- ${c_fechamento}"
}
main
exit 0
#!/bin/bash
# Script para o Ubuntu 18
# Script Autor: Carlos Anders
ver_so=`lsb_release -d`
# arquivos do usuario logado na maquina que tera acesso via proxy
usuario_logado="dabm"
##################### Config do PHP e Nginx
diretorio_web_php5="/var/www/php5"
# Rotina principal do script e chamada na ordem abaixo do arquivo
main() {
echo -e "\033[01;47;31m>>>>>>>> Servidor: ${ver_so} <<<<<<<<\033[00m"
php5_go
nginx_php5_go
echo -e '\033[00;47;31m----- Provisionamento Concluído ----- \033[00m'
}
#sub-rotina
nginx_php5_go() {
# Install Apache
echo -e '\033[01;33m>>>>>>>> Instalando Nginx e Configurando para PHP 5 <<<<<<<<\033[00m'
sudo apt-get update
sudo apt install nginx -y
sudo mkdir -p ${diretorio_web_php5}
echo "<?php phpinfo(); ?>" > ${diretorio_web_php5}/index.php
file="php5.localhost"
dir_php5_conf="/etc/nginx/sites-available/"${file}
sudo touch ${dir_php5_conf}
sudo 'cat << EOF > ${dir_php5_conf}
# Application with PHP 5.6
#
server {
listen 80;
root ${diretorio_web_php5};
index index.php;
server_name www.${file} ${file};
location ~* \.php$ {
# With php-fpm unix sockets
fastcgi_pass unix:/var/run/php/php5.6-fpm.sock;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME \$document_root\$fastcgi_script_name;
fastcgi_param SCRIPT_NAME \$fastcgi_script_name;
}
}
EOF'
# O Nginx mantém os sites ativos no diretório /etc/nignx/sites-enabled
sudo ln -s /etc/nginx/sites-available/${file} /etc/nginx/sites-enabled/
# Teste as configurações do Nginx usando o comando "nginx -t"
sudo nginx -t
# reiniciando a aplicacao
sudo systemctl enable nginx
sudo systemctl start nginx.service
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
#sub-rotina de install do PHP 5 no SO
php5_go() {
#echo -e '\033[01;34;47mG\033[01;31mo\033[01;33mo\033[01;34mg\033[01;32ml \033[01;31me\033[00;37;40m'
echo -e '\033[01;33m>>>>>>>> Instalando PHP 5.6 <<<<<<<<\033[00m'
sudo apt-get update
sudo apt-get -y install software-properties-common
#sudo apt install python-software-properties -y
#Install repository PHP Ondrej
sudo add-apt-repository -y --remove ppa:ondrej/php
sudo -E add-apt-repository -y ppa:ondrej/php
#instalacao PHP5
sudo apt-get -y install php5.6 php5.6-curl php5.6-mysql \
php5.6-sqlite php5.6-dev php5.6-gd php5.6-json \
php5.6-intl php5.6-tidy php5.6-common php5.6-cli \
php5.6-mcrypt php5.6-opcache php5.6-odbc php5.6-pgsql php5.6-fpm \
libapache2-mod-php5.6
# iniciando o servio FPM do PHP
sudo systemctl start php5.6-fpm
sudo systemctl status php5.6-fpm
#arquivos do php 5 e xdebug
php_config_file="/etc/php/5.6/fpm/php.ini"
#Alterando dados no php.ini
sudo sed -i "s/display_startup_errors = Off/display_startup_errors = On/g" ${php_config_file}
sudo sed -i "s/display_errors = Off/display_errors = On/g" ${php_config_file}
sudo sed -i "s/short_open_tag = Off/short_open_tag = On/g" ${php_config_file}
sudo sed -i "s/max_execution_time = 30/max_execution_time = -1/g" ${php_config_file}
sudo sed -i "s/max_input_time = 60/max_input_time = -1/g" ${php_config_file}
sudo sed -i "s/track_errors = Off/track_errors = On/g" ${php_config_file}
sudo sed -i "s/error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT/error_reporting = E_ALL/g" ${php_config_file}
cat << EOF >> ${php_config_file}
[Date]
date.timezone=America/Sao_Paulo
EOF
#vrf PHP linha comando
echo 'Verificando versão do PHP...'
php -v
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
main
exit 0
#!/bin/bash
# Script para o Ubuntu 18
# Script Autor: Carlos Anders
ver_so=`lsb_release -d`
### cores ###
c_red_b_white="\033[01;47;31m"
c_amarelo="\033[01;33m"
c_azul="\033[00;36m"
c_fechamento="\033[00m"
#########################################################################
# Rotina principal
main() {
echo -e "${c_red_b_white}>>>>>>>> Servidor: ${ver_so} <<<<<<<<${c_fechamento}"
install_postgreSQL9_go
install_openssh_go
echo -e "${c_red_b_white}----- Provisionamento Concluído ----- ${c_fechamento}"
}
install_postgreSQL9_go(){
echo -e "${c_amarelo} >>>>>>>> Etapa 1: Docker <<<<<<<<${c_fechamento}"
# link: https://gist.github.com/fredhsu/f3d927d765727181767b3b13a3a23704
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt-get update
sudo apt-get -y install postgresql-9.2 postgresql-contrib-9.2 \
postgresql-client-9.2 libpq-dev pgadmin3
#su -
# VRF VERSAO PSQL
psql --version
# VRF versao postgreSQL
sudo -u postgres psql -c "SELECT version();"
# change user postgres para ser acessado via pgadmin3 ou 4
sudo -u postgres psql -c "ALTER USER postgres WITH PASSWORD 'postgres';"
# acessar o postgres
# sudo -u postgres psql
# habilitar acesso remto
# sudo cat /etc/postgresql/9.2/main/pg_hba.conf
pg_hba=/etc/postgresql/9.2/main/pg_hba.conf
sudo cp /etc/postgresql/9.2/main/pg_hba.conf{,.backup}
sudo bash -c 'grep -v -E "^#|^;" /etc/postgresql/9.2/main/pg_hba.conf.backup | grep . > /etc/postgresql/9.2/main/pg_hba.conf'
sudo sed -i '/peer/ s/.*/md5/g' ${pg_hba}
#liberar para todos os IPS
sudo echo "host all all 0.0.0.0/0 md5" >> ${pg_hba}
# http://www.dltec.com.br/blog/redes/subrede-ip-mascaras-possiveis-e-quantidades-para-classes-a-b-e-c-curso-ccna/
# liberar um IP especifico /20 = 255.255.240.0
#sudo echo "host all all 10.6.113.23/20 md5" >> ${pg_hba}
postgres_conf=/etc/postgresql/9.2/main/postgresql.conf
sudo cp /etc/postgresql/9.2/main/postgresql.conf{,.backup}
sudo sed -i '/#listen_addresses='localhost'/ s/.*/listen_addresses='*'/g' ${postgres_conf}
#sed 's+http://+https://www.cyberciti.biz+g' input.txt
# https://www.cyberciti.biz/faq/how-to-use-sed-to-find-and-replace-text-in-files-in-linux-unix-shell/
# ou
#sudo echo "listen_addresses='*'" >> ${postgres_conf}
# export PGPASSWORD='password';
# psql -h 'server name' -U 'user name' -d 'base name' -c 'command'
#sudo service postgresql restart
sudo systemctl daemon-reload
sudo /etc/init.d/postgresql restart
echo 'Tentando conexao passando a nova senha...'
export PGPASSWORD='postgres'
psql -h localhost -U postgres -d postgres -c "SELECT version();"
echo -e "${c_azul}----- Concluído ----- ${c_fechamento}"
}
install_openssh_go(){
echo -e "${c_amarelo} >>>>>>>> Etapa 2: SSH <<<<<<<<${c_fechamento}"
sudo apt install openssh-server -y
sudo systemctl status ssh
systemctl status sshd
sudo ufw allow ssh
sudo systemctl enable ssh
#/etc/ssh/sshd_config
sudo sed -i '/PermitRootLogin/ s/.*/PermitRootLogin yes/g' /etc/ssh/sshd_config
sudo sed -i '/PubkeyAuthentication/ s/.*/PubkeyAuthentication yes/g' /etc/ssh/sshd_config
sudo sed -i '/PasswordAuthentication/ s/.*/PasswordAuthentication yes/g' /etc/ssh/sshd_config
echo -e "${c_azul}----- Concluído ----- ${c_fechamento}"
}
main
exit 0
#!/bin/bash
# Script Autor: 1T (T) Anders
###########################################################################
###########################################################################
ver_so=`cat /etc/oracle-release`
usuario_logado=$USER
### cores ###
c_red_b_white="\033[01;47;31m"
c_amarelo="\033[01;33m"
c_azul="\033[00;36m"
c_fechamento="\033[00m"
### oracle acesso
# senha site oracle:
# [email protected]/M@ster2019
### fim
# Rotina principal do script e chamada na ordem abaixo do arquivo
main() {
echo -e "${c_red_b_white}>>>>>>>> Servidor: ${ver_so} <<<<<<<<${c_fechamento}"
# install_deps_go
instant_client_21_go
echo -e "${c_red_b_white}----- Provisionamento Concluído ----- ${c_fechamento}"
}
instant_client_21_go(){
echo -e "${c_amarelo} >>>>>>>> Instant Client 21 <<<<<<<<${c_fechamento}"
#criando diretorios
sudo mkdir -p /opt/oracle/pacotes/instantclient_21/
sudo cp instantclient_linux_18x64/inst* /opt/oracle/pacotes/instantclient_18/
sudo chmod +x /opt/oracle/pacotes/instantclient_18/*
ls -lha /opt/oracle/pacotes/instantclient_18/
# criando e copiando pacotes
sudo mkdir -p /opt/oracle/instantclient_18
sudo chmod +x /opt/oracle/instantclient_18
sudo unzip /opt/oracle/pacotes/instantclient_18/instantclient-basic-linux.x64-18.5.0.0.0dbru.zip -d /opt/oracle
sudo unzip /opt/oracle/pacotes/instantclient_18/instantclient-sdk-linux.x64-18.5.0.0.0dbru.zip -d /opt/oracle
sudo unzip /opt/oracle/pacotes/instantclient_18/instantclient-sqlplus-linux.x64-18.5.0.0.0dbru.zip -d /opt/oracle
sudo unzip /opt/oracle/pacotes/instantclient_18/instantclient-tools-linux.x64-18.5.0.0.0dbru.zip -d /opt/oracle
# renomeado diretorio
#mv /opt/oracle/instantclient* /opt/oracle/instantclient
sudo ln -s /opt/oracle/instantclient_18_5/libclntsh.so.18.1 /opt/oracle/instantclient_18_5/libclntsh.so
sudo ln -s /opt/oracle/instantclient_18_5/libocci.so.18.1 /opt/oracle/instantclient_18_5/libocci.so
sudo chmod +x /opt/oracle/instantclient_18
cat << EOF >> /etc/environment
LD_LIBRARY_PATH="/opt/oracle/instantclient_18_5"
TNS_ADMIN="/opt/oracle/instantclient_18_5"
ORACLE_BASE="/opt/oracle/instantclient_18_5"
ORACLE_HOME="/opt/oracle/instantclient_18_5"
SQLPATH="/opt/oracle/instantclient_18_5:${SQLPATH}"
EOF
#export das var de ambiente
# Oracle Client environment\n
export LD_LIBRARY_PATH=/opt/oracle/instantclient_18_5:/opt/oracle/instantclient_18_5
export ORACLE_BASE=/opt/oracle/instantclient_18_5
export ORACLE_HOME=/opt/oracle/instantclient_18_5
export TNS_ADMIN=/opt/oracle/instantclient_18_5
export PATH=/opt/oracle/instantclient_18_5:${PATH}
export SQLPATH=/opt/oracle/instantclient_18_5:${SQLPATH}
#chmod o+r /etc/profile.d/oracle-env.sh
sudo echo "# Oracle Client environment\n" >>/etc/profile
sudo echo "export LD_LIBRARY_PATH=/opt/oracle/instantclient_18_5:${LD_LIBRARY_PATH}" >>/etc/profile
sudo echo "export ORACLE_BASE=/opt/oracle/instantclient_18_5" >>/etc/profile
sudo echo "export ORACLE_HOME=/opt/oracle/instantclient_18_5" >>/etc/profile
sudo echo "export TNS_ADMIN=/opt/oracle/instantclient_18_5" >>/etc/profile
sudo echo "export PATH=/opt/oracle/instantclient_18_5:${PATH}" >>/etc/profile
sudo echo "export SQLPATH=/opt/oracle/instantclient_18_5:${SQLPATH}" >>/etc/profile
source /etc/profile
sqlplus -version
echo -e "${c_azul}----- Concluído ----- ${c_fechamento}"
}
instant_client_18_go(){
echo -e "${c_amarelo} >>>>>>>> Instant Client 18 <<<<<<<<${c_fechamento}"
#criando diretorios
sudo mkdir -p /opt/oracle/pacotes/instantclient_18/
sudo cp instantclient_linux_18x64/inst* /opt/oracle/pacotes/instantclient_18/
sudo chmod +x /opt/oracle/pacotes/instantclient_18/*
ls -lha /opt/oracle/pacotes/instantclient_18/
# criando e copiando pacotes
sudo mkdir -p /opt/oracle/instantclient_18
sudo chmod +x /opt/oracle/instantclient_18
sudo unzip /opt/oracle/pacotes/instantclient_18/instantclient-basic-linux.x64-18.5.0.0.0dbru.zip -d /opt/oracle
sudo unzip /opt/oracle/pacotes/instantclient_18/instantclient-sdk-linux.x64-18.5.0.0.0dbru.zip -d /opt/oracle
sudo unzip /opt/oracle/pacotes/instantclient_18/instantclient-sqlplus-linux.x64-18.5.0.0.0dbru.zip -d /opt/oracle
sudo unzip /opt/oracle/pacotes/instantclient_18/instantclient-tools-linux.x64-18.5.0.0.0dbru.zip -d /opt/oracle
# renomeado diretorio
#mv /opt/oracle/instantclient* /opt/oracle/instantclient
sudo ln -s /opt/oracle/instantclient_18_5/libclntsh.so.18.1 /opt/oracle/instantclient_18_5/libclntsh.so
sudo ln -s /opt/oracle/instantclient_18_5/libocci.so.18.1 /opt/oracle/instantclient_18_5/libocci.so
sudo chmod +x /opt/oracle/instantclient_18
cat << EOF >> /etc/environment
LD_LIBRARY_PATH="/opt/oracle/instantclient_18_5"
TNS_ADMIN="/opt/oracle/instantclient_18_5"
ORACLE_BASE="/opt/oracle/instantclient_18_5"
ORACLE_HOME="/opt/oracle/instantclient_18_5"
SQLPATH="/opt/oracle/instantclient_18_5:${SQLPATH}"
EOF
#export das var de ambiente
# Oracle Client environment\n
export LD_LIBRARY_PATH=/opt/oracle/instantclient_18_5:/opt/oracle/instantclient_18_5
export ORACLE_BASE=/opt/oracle/instantclient_18_5
export ORACLE_HOME=/opt/oracle/instantclient_18_5
export TNS_ADMIN=/opt/oracle/instantclient_18_5
export PATH=/opt/oracle/instantclient_18_5:${PATH}
export SQLPATH=/opt/oracle/instantclient_18_5:${SQLPATH}
#chmod o+r /etc/profile.d/oracle-env.sh
sudo echo "# Oracle Client environment\n" >>/etc/profile
sudo echo "export LD_LIBRARY_PATH=/opt/oracle/instantclient_18_5:${LD_LIBRARY_PATH}" >>/etc/profile
sudo echo "export ORACLE_BASE=/opt/oracle/instantclient_18_5" >>/etc/profile
sudo echo "export ORACLE_HOME=/opt/oracle/instantclient_18_5" >>/etc/profile
sudo echo "export TNS_ADMIN=/opt/oracle/instantclient_18_5" >>/etc/profile
sudo echo "export PATH=/opt/oracle/instantclient_18_5:${PATH}" >>/etc/profile
sudo echo "export SQLPATH=/opt/oracle/instantclient_18_5:${SQLPATH}" >>/etc/profile
source /etc/profile
sqlplus -version
echo -e "${c_azul}----- Concluído ----- ${c_fechamento}"
}
# Install the prerequisite packages
install_deps_go() {
echo -e "${c_amarelo}>>>>>>>> deps installation <<<<<<<<${c_fechamento}"
# atualizado repos
apt-get update
# instalando deps
apt-get -y install libaio1 alien unzip libaio-dev
echo -e "${c_amarelo}----- Finish ----- ${c_fechamento}"
}
main
echo -e "${c_amarelo} >>>>>>>> Reinicie o Sistema <<<<<<<<${c_fechamento}"
echo -e "${c_amarelo} comando: systemctl reboot ${c_fechamento}"
exit 0
#!/bin/bash
# Script para o Ubuntu 18
# Script Autor: Carlos Anders
ver_so=`lsb_release -d`
# arquivos do usuario logado na maquina que tera acesso via proxy
usuario_logado="dabm"
# Rotina principal do script e chamada na ordem abaixo do arquivo
main() {
echo -e "\033[01;47;31m>>>>>>>> Servidor: ${ver_so} <<<<<<<<\033[00m"
autoremove_go
remover_locks_go
echo -e '\033[00;47;31m----- Provisionamento Concluído ----- \033[00m'
}
#sub-rotina para desbloquear o SO para atualização dos repositórios
remover_locks_go() {
echo -e '\033[01;33m>>>>>>>> Removendo locks dos repositórios <<<<<<<<\033[00m'
rm /var/lib/apt/lists/lock
rm /var/lib/dpkg/lock
rm -rf /var/lib/dpkg/updates/*
ls /var/lib/dpkg/info | grep "install-info"
rm -rf /var/lib/dpkg/info/install-info*
apt-get -y install -f
dpkg --configure -a
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
#sub-rotina de limpeza de pacotes no SO
autoremove_go() {
echo -e '\033[01;33m>>>>>>>> Limpando Sistema... <<<<<<<<\033[00m'
#remover pacotes que foram instalados automaticamente para satisfazer dependências de outros pacotes e que já não são mais necessários.
#sudo apt-get -y autoremove
echo -e '\033[33;1mRemovendo pacotes instalados para dependências...\033[00;37m'
apt-get -qq autoremove
echo -e '\033[33;1mApagando pacotes do cache, esse comando não desinstala nada...\033[00;37m'
#"autoclean" só apaga pacotes do cache; ele não desinstala nada.
apt-get -y autoclean
echo -e '\033[33;1mLimpando e removendo todos os arquivos .deb (pacotes)...\033[00;37m'
#clean vai além do autoclean — limpando e removendo todos os arquivos .deb (pacotes) contidos nos diretórios — exceto o lock file
apt-get -y clean
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
main
exit 0
#!/bin/bash
# Script para o Ubuntu Server 16.04
# Script Autor: Carlos Anders
#arquivos de configruções diversos
motd_config_file="/etc/motd.conf"
environment_file="/etc/environment"
# files the proxy
apt_config_file="/etc/apt/apt.conf"
profile_config_file="/etc/profile"
wgetrc_config_file="/etc/wgetrc"
environment_file="/etc/environment"
#user/senha proxy
#user_proxy="40849689763"
#user_passwd="f5e3ade4"
user_proxy="XXXX"
user_passwd="senha"
#url proxy
#url_proxy="10.6.32.10"
#port_proxy="6060"
url_proxy="proxy.local"
port_proxy="9090"
usuario_logado=user1
# Rotina principal do script e chamada na ordem abaixo do arquivo
main() {
echo -e '\033[01;47;31m>>>>>>>> Provisionando Servidor <<<<<<<<\033[00m'
#config_bash_go #1
proxy_go
#remover_locks_go #1
#update_go #1
#autoremove_go #1
echo -e '\033[00;47;31m----- Provisionamento Concluído ----- \033[00m'
}
#sub-rotina de limpeza de pacotes no SO
autoremove_go() {
echo -e '\033[01;33m>>>>>>>> Limpando Sistema... <<<<<<<<\033[00m'
#remover pacotes que foram instalados automaticamente para satisfazer dependências de outros pacotes e que já não são mais necessários.
#sudo apt-get -y autoremove
echo -e '\033[33;1mRemovendo pacotes instalados para dependências...\033[00;37m'
sudo apt-get -qq autoremove
echo -e '\033[33;1mApagando pacotes do cache, esse comando não desinstala nada...\033[00;37m'
#"autoclean" só apaga pacotes do cache; ele não desinstala nada.
sudo apt-get -y autoclean
echo -e '\033[33;1mLimpando e removendo todos os arquivos .deb (pacotes)...\033[00;37m'
#clean vai além do autoclean — limpando e removendo todos os arquivos .deb (pacotes) contidos nos diretórios — exceto o lock file
sudo apt-get -y clean
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
#sub-rotina de atualiazações de pacotes no SO
update_go() {
# Update the server
# https://www.vivaolinux.com.br/dica/Resolvendo-os-problemas-com-o-pacote-installinfo
#echo "Atualizando repositórios..."
echo -e '\033[01;33m>>>>>>>> Atualizando repositórios <<<<<<<<\033[00m'
sudo apt-get update
echo -e '\033[33;1mAtualizando o Ubuntu... \e[m'
sudo apt-get -y dist-upgrade
#remover_locks
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
#sub-rotina para desbloquear o SO para atualização dos repositórios
remover_locks_go() {
echo -e '\033[01;33m>>>>>>>> Removendo locks dos repositórios <<<<<<<<\033[00m'
sudo rm /var/lib/apt/lists/lock
sudo rm /var/lib/dpkg/lock
sudo rm -rf /var/lib/dpkg/updates/*
ls /var/lib/dpkg/info | grep "install-info"
sudo rm -rf /var/lib/dpkg/info/install-info*
sudo apt-get -y install -f
sudo dpkg --configure -a
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
#sub-rotina que verifica se existe proxy no sistema
#se sim chama as outras sub-rotinas, evitando duplicidade de proxy no sistema
proxy_go() {
echo -e '\033[01;33m>>>>>>>> Verficando o proxy no Servidor <<<<<<<<\033[00m'
if ! grep -in "proxy" ${environment_file}; then
echo -e '\033[00;36mO proxy não está presente! \033[00m'
insere_proxy_go
else
echo -e '\033[00;36mO proxy está presente! \033[00m'
deleta_proxy_go
insere_proxy_go
fi
echo -e '\033[00;36mVerificações de Proxy Concluídas \033[00m'
}
#sub-rotina chamada quando existe proxy no sistema
deleta_proxy_go() {
echo -e '\033[01;33m>>>>>>>> Atualizando o proxy no Servidor <<<<<<<<\033[00m'
#apaga ocorrencias de proxy no arquivo
sudo sed -i '/proxy/d' ${environment_file}
sudo sed -i '/{/d' ${environment_file}
sudo sed -i '/}/d' ${environment_file}
#apaga arquivo apt.conf
sudo rm -rf ${apt_config_file}
#apaga ocorrencias de proxy no arquivo /etc/profile
sudo sed -i '/proxy/d' ${wgetrc_config_file}
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
#sud-rotina chamada para inserir proxy no sistema
insere_proxy_go(){
echo -e '\033[01;33m>>>>>>>> Inserindo o proxy no Servidor <<<<<<<<\033[00m'
#Habilita enviroment file
sudo cat << EOF >> ${environment_file}
http_proxy="http://${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy}"
ftp_proxy="ftp://${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy}"
https_proxy="https://${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy}"
socks_proxy="socks://${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy}"
Acquire{
HTTP::Proxy ${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy};
HTTPS::Proxy ${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy};
FTP::Proxy ${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy};
}
alias wget="wget --proxy-user=${user_proxy} --proxy-passwd=${user_passwd}"
alias curl="curl -x ${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy}"
EOF
#Habilita apt.conf file
sudo touch ${apt_config_file}
sudo cat << EOF >> ${apt_config_file}
Acquire::http::proxy "http://${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy}/";
Acquire::https::proxy "https://${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy}/";
Acquire::ftp::proxy "ftp://${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy}/";
Acquire::socks::proxy "socks://${user_proxy}:${user_passwd}@${url_proxy}:${port_proxy}/";
EOF
#Habilita export
sudo echo "export http_proxy ftp_proxy https_proxy socks_proxy" >> ${profile_config_file}
#Hailita wget
sudo cat << EOF >> ${wgetrc_config_file}
https_proxy = https://${url_proxy}:${port_proxy}/
http_proxy = http://${url_proxy}:${port_proxy}/
ftp_proxy = ftp://${url_proxy}:${port_proxy}/
proxy_user = ${user_proxy}
proxy_passwd = ${user_passwd}
use_proxy = on
EOF
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
#sub-rotina de configuração no bash do ubuntu
config_bash_go() {
echo -e '\033[01;33m>>>>>>>> Configurando o bash do SO <<<<<<<<\033[00m'
bash_profile_file_geral="/etc/profile"
profile_vagrant_file="/home/${usuario_logado}/.bashrc"
#profile_root_file="/root/.bashrc"
PS1='\[\033]0;$TITLEPREFIX:${PWD//[^[:ascii:]]/?}\007\]\n\[\033[01;34m\][\D{%d.%m.%Y}] \[\033[32m\]\u@\h \[\033[35m\]$MSYSTEM\[\033[33m\]\w\[\033[36m \]\[\033[0m\]\n$ '
echo "$PS1"
sudo echo "export PS1='${PS1}'" >> ${profile_vagrant_file}
#sudo echo "export PS1='${PS1}'" >> ${profile_root_file}
sudo cat << EOF >> ${bash_profile_file_geral}
PS1='${PS1}'
export PS1
EOF
#alterando o historico para exibir a data do comando
#echo 'export HISTTIMEFORMAT="%d/%m/%y %T "' >> ~/.bash_profile
#echo 'export HISTTIMEFORMAT="%d.%m.%y %H:%M ""' >> ~/.bash_profile
source ~/.bash_profile
source ${profile_vagrant_file}
source ${profile_root_file}
source ${bash_profile_file_geral}
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
main
exit 0
git config --global http.proxy http://user:[email protected]:6060
git config --global https.proxy http://user:[email protected]:6060
git config --global http.sslverify false
git config --list
https_proxy=http://user:[email protected]:6060
### Inicio ###
Solução problema de senha no chrome
sudo gedit /usr/share/applications/google-chrome.desktop
Alterar de:
#Exec=/usr/bin/google-chrome-stable %U
Para:
Exec=/usr/bin/google-chrome-stable --password-store=basic
### Fim ###
---------------------------------------------------------------------------------------
### Inicio ###
Alter sources.list no terminal
sudo tee /etc/apt/sources.list >/dev/null <<EOF
deb http://archive.ubuntu.com/ubuntu/ jammy main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ jammy-updates main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ jammy-backports main restricted universe multiverse
deb http://archive.canonical.com/ubuntu/ jammy partner
EOF
### Fim ###
# deb cdrom:[Ubuntu 22.04.2 LTS _Jammy Jellyfish_ - Release amd64 (20230223)]/ jammy main restricted
deb http://br.archive.ubuntu.com/ubuntu/ jammy main restricted
deb http://br.archive.ubuntu.com/ubuntu/ jammy-updates main restricted
deb http://br.archive.ubuntu.com/ubuntu/ jammy universe
deb http://br.archive.ubuntu.com/ubuntu/ jammy-updates universe
deb http://br.archive.ubuntu.com/ubuntu/ jammy multiverse
deb http://br.archive.ubuntu.com/ubuntu/ jammy-updates multiverse
deb http://br.archive.ubuntu.com/ubuntu/ jammy-backports main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu jammy-security main restricted
deb http://security.ubuntu.com/ubuntu jammy-security universe
deb http://security.ubuntu.com/ubuntu jammy-security multiverse
#!/bin/bash
# Script para o Ubuntu 18
# Script Autor: Carlos Anders
ver_so=`lsb_release -d`
# diretorio de trabalho para o PHP
project_web_root="$(pwd)/projetos/php5"
### cores ###
c_red_b_white="\033[01;47;31m"
c_amarelo="\033[01;33m"
c_azul="\033[00;36m"
c_fechamento="\033[00m"
#########################################################################
# Rotina principal
main() {
echo -e "${c_red_b_white}>>>>>>>> Servidor: ${ver_so} <<<<<<<<${c_fechamento}"
docker_php54_go
echo -e "${c_red_b_white}----- Provisionamento Concluído ----- ${c_fechamento}"
}
docker_php54_go(){
echo -e "${c_amarelo} >>>>>>>> Etapa 1: Docker UP PHP 5.4 <<<<<<<<${c_fechamento}"
#link: https://github.com/romeOz/docker-nginx-php
# criando dir
mkdir -p ${project_web_root}
touch ${project_web_root}/index.php
echo "<?php phpinfo(); ?>" > ${project_web_root}/index.php
#baixando a imagem de referencia
docker pull romeoz/docker-apache-php:5.4
echo
echo "-- Testing server is running"
#docker run --name=php54 -d -p 8080:80 \
#--env HTTP_PROXY="http://06840680:Bry%[email protected]:6060" \
#--env HTTPS_PROXY="http://06840680:Bry%[email protected]:6060" \
#--env FTP_PROXY="http://06840680:Bry%[email protected]:6060" \
#--env NO_PROXY="localhost, 127.0.0.0/8,*.mb,.mar.mil.br,.marinha.mil.br" \
#--volume=${project_web_root}:/var/www/app/ \
#--network=host \
#romeoz/docker-apache-php:5.4
docker run --name=php54 -d -p 8080:80 --volume=$(pwd)/projetos/php5:/var/www/app/ --network=host romeoz/docker-apache-php:5.4
sleep 5
curl 127.0.0.1:8080 2>/dev/null | grep -c 'Hello world'
docker exec -it php54 php -v | grep -c 'PHP 5.4'
echo -e "${c_azul}----- Concluído ----- ${c_fechamento}"
}
main
exit 0
#!/bin/bash
# Script para o Ubuntu 18
# Script Autor: Carlos Anders
ver_so=`lsb_release -d`
# arquivos do usuario logado na maquina que tera acesso via proxy
usuario_logado="dabm"
# Rotina principal do script e chamada na ordem abaixo do arquivo
main() {
echo -e "\033[01;47;31m>>>>>>>> Servidor: ${ver_so} <<<<<<<<\033[00m"
autoremove_go
remover_locks_go
echo -e '\033[00;47;31m----- Provisionamento Concluído ----- \033[00m'
}
#sub-rotina para desbloquear o SO para atualização dos repositórios
remover_locks_go() {
echo -e '\033[01;33m>>>>>>>> Removendo locks dos repositórios <<<<<<<<\033[00m'
rm /var/lib/apt/lists/lock
rm /var/lib/dpkg/lock
rm -rf /var/lib/dpkg/updates/*
ls /var/lib/dpkg/info | grep "install-info"
rm -rf /var/lib/dpkg/info/install-info*
apt-get -y install -f
dpkg --configure -a
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
#sub-rotina de limpeza de pacotes no SO
autoremove_go() {
echo -e '\033[01;33m>>>>>>>> Limpando Sistema... <<<<<<<<\033[00m'
#remover pacotes que foram instalados automaticamente para satisfazer dependências de outros pacotes e que já não são mais necessários.
#sudo apt-get -y autoremove
echo -e '\033[33;1mRemovendo pacotes instalados para dependências...\033[00;37m'
apt-get -qq autoremove
echo -e '\033[33;1mApagando pacotes do cache, esse comando não desinstala nada...\033[00;37m'
#"autoclean" só apaga pacotes do cache; ele não desinstala nada.
apt-get -y autoclean
echo -e '\033[33;1mLimpando e removendo todos os arquivos .deb (pacotes)...\033[00;37m'
#clean vai além do autoclean — limpando e removendo todos os arquivos .deb (pacotes) contidos nos diretórios — exceto o lock file
apt-get -y clean
echo -e '\033[00;36m----- Concluído ----- \033[00m'
}
main
exit 0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment