
#!/bin/sh
#ultima edição:15/09/2010 11:06 julio.tecnico@bol.com.br
clear
echo "
Júlio César Fais
Script Versão 2.0"
sleep 1
echo "
Verificando suas Permissões...."
sleep 1
if [ `whoami` = "root" ]; then
sleep 1
else
clear
echo "
Acesso Negado para usuario `whoami`! Logue-se como root"
sleep 5
clear
exit
fi
clear
echo '
|--------------------------------------------------------------------
| O QUE DESEJA FAZER?
|
| 1 - ADICIONAR DNS PADRAO
| 2 - CONFIGURAR PERMISSÕES - /etc/sudoers
| 3 - CONFIGURAR REDE
| 4 - INSTALAR JAVA
| 5 - INSTALAR FLASH PLAYER
| 6 - HABILITAR ACESSO REMOTO - SSH e VNC
| 7 - INSTALAR PACOTES .DEB (Broffice,etc...)
| 8 - BACKUP DE CONFIGURAÇÃO
| 9 - VERIFICAR CONFLITO DE IP
| 10 - INFORMAÇÕES DO SISTEMA
| 11 - CLONAR HD
| 12 - APAGAR REGISTROS DE PLACAS DE REDES ANTERIORES
| 13 - COMPARTILHAR CONEXÃO
| 14 - AJUSTAR DATA/HORA
| 15 - MONTAR PARTIÇÃO
| 16 - ALTERAR HOSTNAME
| 17 - SAIR
|
| DEPENDÊNCIAS: ZENITY,AIRPING,DD
| EXECUTE $xhost +
|-------------------------------------------------------------------|'
read alternativa
case "$alternativa" in
#######################################################
1 ) clear
echo "=> Copiando Para o arquivo /etc/resolv.conf"
sleep 1
echo "nameserver 208.67.222.222" > /etc/resolv.conf
echo "nameserver 8.8.8.8" >> /etc/resolv.conf
echo "#configurado via script => JULIO 2.0<= julio.tecnico@bol.com.br" >> /etc/resolv.conf
clear
echo "DNS Configurado !"
cat /etc/resolv.conf
sleep 3
clear
;;
########################################################
2 ) clear
echo "Aguarde ...."
sleep 1
clear
`zenity --warning --text "ATENÇAO ESTA AÇAO DARA PODER DE ROOT AO USUARIO!!!" --title "AVISO DO JULIO!!!"`
echo 'Para Qual usuario voce quer Habilitar o sudo?
Ex.: kurumin, prefeitura '
sleep 1
read sudo
echo "Adicionado usuario a /etc/sudoers."
sleep 1
echo "$sudo ALL=(ALL) ALL" >> /etc/sudoers
echo "$sudo ALL=NOPASSWD: ALL" >> /etc/sudoers
sleep 2
clear
echo "Concluido! O Usuario $sudo ja possui permissao de Administrador."
sleep 2
clear
;;
#
#########################################################################################
3 ) clear
echo "Aguarde...Vericando os IP's ja configurados:"
grep "address" /etc/network/interfaces > /tmp/tmp.txt
cat /tmp/tmp.txt
sleep 3
clear
# cat /etc/network/interfaces
# sleep 4
clear
#################
inicio (){
echo 1 - IP Fixo
echo 2 - DHCP
echo 3 - RESTAURAR BKP
echo 4 - IP TEMPORARIO
read var
case $var in
1) fixo;;
2) dhcp;;
3) bkp;;
4) temp;;
*) clear; echo 'saindo do programa'; exit;;
esac
}
##################
fixo (){
echo vc escolheu IP Fixo
`zenity --warning --text "ATENÇAO ESTA AÇAO IRA SOBRESCREVER O ARQUIVO ORIGINAL!!!" --title "AVISO DO JULIO!!!"`
sleep 1
clear
echo 'Adicione suas interfaces...
Ex.: eth0 eth0:0 eth0:1 eth0:2...
obs.: use a 1ª interface para internet...'
sleep 2
read int
echo "Qual Ip da 1ª interface?"
read ipa
echo "Qual a Mascara da 1ª inetrface?"
read masc
echo "Qual o Gateway da 1ª interface?"
read gw
sleep 1
echo "auto lo $int" > /etc/network/interfaces
echo "iface lo inet loopback" >> /etc/network/interfaces
echo "iface $int inet static" >> /etc/network/interfaces
echo "address $ipa" >> /etc/network/interfaces
echo "netmask $masc" >> /etc/network/interfaces
echo "gateway $gw" >> /etc/network/interfaces
echo "#configurado via script => JULIO 2.0<= julio.tecnico@bol.com.br" >> /etc/network/interfaces
clear
/etc/init.d/networking stop
/etc/init.d/networking start
echo "! Pronto. Sua Rede Foi Configurada com sucesso."
sleep 4
}
##################
dhcp (){
`zenity --warning --text "ATENÇAO ESTA AÇAO IRA SOBRESCREVER O ARQUIVO ORIGINAL!!!" --title "AVISO DO JULIO!!!"`
echo vc escolheu IP por DHCP
sleep 2
clear
echo 'Adicione sua interface...
Ex.: eth0, eth1, wlan0...'
sleep 1
read int
echo "auto lo $int" > /etc/network/interfaces
echo "iface lo inet loopback" >> /etc/network/interfaces
echo "iface $int inet dhcp" >> /etc/network/interfaces
echo "#configurado via script => JULIO <= julio.tecnico@bol.com.br" >> /etc/network/interfaces
echo "Configurando...Aguarde..."
sleep 2
clear
/etc/init.d/networking stop
/etc/init.d/networking start
echo "! Pronto. Sua Rede DHCP Foi Configurada com sucesso. Veja:"
sleep 4
cat /etc/network/interfaces
sleep 5
clear
}
###################
bkp (){
`zenity --warning --text "ATENÇAO ESTA AÇAO IRA SOBRESCREVER O ARQUIVO ORIGINAL!!!" --title "AVISO DO JULIO!!!"`
echo 'Qual o Arquivo?'
b=`zenity --file-selection --title "Escolha o arquivo(interfaces)"`
sleep 2
cp "$b" /etc/network/
clear
echo "Reiniciando a Rede..."
sleep 1
/etc/init.d/networking stop
/etc/init.d/networking start
clear
echo "OK!"
sleep 2
}
####################
temp (){
echo "Qual a interface?"
sleep 2
read dd
echo "Qual o ip?"
sleep 2
read aa
echo "Qual a Mascara?"
sleep 2
read bb
echo "Qual o Gateway?"
sleep 2
read cc
ifconfig $dd $aa netmask $bb up
route add default gw $cc
}
inicio
clear
;;
###########################################################################################
4 ) clear
java=`zenity --file-selection --title "Escolha o JAVA"`
sleep 1
clear
echo "Siga as instruçoes..."
sleep 2
sudo $java
sleep 6
clear
echo "O JAVA foi instalado Corretamente"
sleep 2
echo "Vamos adicionar um link pro navegador..."
sleep 2
clear
c=`zenity --directory --file-selection --title "Escolha a pasta plugins do navegador.Ex.: /usr/lib/firefox-3.6.7/plugins/"`
d=`zenity --file-selection --title "Escolha o plugin do java (ja instalado)"`
sleep 2
cd $c/
ln -s $d
echo "OK! Tudo Pronto! Vamos Testar"
sleep 2
firefox 'http://www.java.com/pt_BR/download/help/testvm.xml'
clear
;;
#############################################################################################
5 ) clear
echo 'Instalando Flash PLayer agora...
Qual o Caminho do Flash PLayer?'
flash=`zenity --file-selection --title "Escolha o Flash Player (obs.: tem que estar Descompactado)"`
d=`zenity --directory --file-selection --title "Escolha a pasta plugins do navegador.Ex.: /usr/lib/firefox-3.6.7/plugins/"`
sleep 2
clear
echo "Copiando Flash Player."
sleep 2
cp -i -r $flash $d
sleep 2
echo "Reinicie o Navegador ..."
sleep 2
clear
;;
##################################################################
6 ) clear
echo "Habilitando Serviço SSH..."
sleep 2
update-rc.d -f ssh remove
update-rc.d -f ssh defaults
clear
echo "Configure o VNC!"
krfb
sleep 2
clear
;;
#################################################################
7 ) clear
e=`zenity --directory --file-selection --title "Escolha a pasta onde estao os arquivos .DEB"`
cd $e/
dpkg -i *.deb
echo "saindo..."
sleep 2
;;
##################################################################
8 )clear
pasta=`zenity --directory --file-selection --title "Escolha a Pasta Para Salvar os Aquivos de Configuração"`
echo "
Qual o Usuario Esta o Backup"
read userr
clear
echo "
AGUARDE!!!"
scp /etc/network/interfaces $pasta
scp /etc/cups/printers.conf $pasta
scp /home/$userr/.kde/share/config/kopeterc $pasta
scp -r /home/$userr/.mozilla $pasta
scp -r /home/$userr/.mozilla-thunderbird $pasta
scp -r /home/$userr/.thunderbird $pasta
scp -r /home/$userr/.firefox $pasta
scp -r /home/$userr/.mozilla-firefox $pasta
scp -r /home/$userr/.putty $pasta
scp -r /etc/rc.local $pasta
konqueror $pasta
clear
;;
##################################################################
9)
PATH="/bin:/usr/bin:/sbin:/usr/sbin"
INTERFACE="eth0"
which zenity > /dev/null 2>&1
[ $? -ne 0 ] && { echo "zenity: comando não encontrado."; exit 1 ; }
which arping > /dev/null 2>&1
[ $? -ne 0 ] && { echo "arping: comando não encontrado."; exit 1; }
while true
do
ip=$(zenity --title="Checa Conflito de IP" --entry --text "Endereço IP:")
[ $? -ne 0 ] && exit $?
validaIP() {
local numero_ip=$1
# Suporte 'built-in' a ER's! legal... =)
[[ $numero_ip =~ ^[0-9]{2,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]] || return 1
local primeiro_octeto segundo_octeto terceiro_octeto quarto_octeto
OLD_IFS=$IFS
IFS="."
set - $numero_ip
primeiro_octeto=$1
segundo_octeto=$2
terceiro_octeto=$3
quarto_octeto=$4
IFS=$OLD_IFS
# Checa o 2o octeto especifico de cada faixa
case $primeiro_octeto in
10) [[ $segundo_octeto =~ ^0[0-9][0-9]? ]] && return 1 # Invalida tipos '0x' ou '0xx'
(( segundo_octeto >= 0 && segundo_octeto <= 255 )) || return 1 ;;
172) (( segundo_octeto >= 16 && segundo_octeto <= 31 )) || return 1 ;;
192) (( segundo_octeto == 168 )) || return 1 ;;
*) return 1
esac
# Ja que o 3o e 4o octetos sao comuns as tres faixas
[[ $terceiro_octeto =~ ^0[0-9][0-9]? ]] || [[ $quarto_octeto =~ ^0[0-9][0-9]? ]] && return 1
(( terceiro_octeto >= 0 && terceiro_octeto <= 255 )) || return 1
(( quarto_octeto >= 0 && quarto_octeto <= 255 )) || return 1
}
# validaIP $ip
# [ $? -eq 1 ] && { zenity --error --text "Endereço IP inválido!" ; continue ; }
break
done
ping -c 3 $ip > /dev/null 2>&1
retval=$?
if [ $retval -eq 1 ]
then
zenity --error --text "$ip\nHost de destino inalcansável!"
exit 1
fi
arping -D -I $INTERFACE -c 3 $ip > /dev/null 2>&1
retval=$?
if [ $retval -eq 0 ]
then
zenity --warning --text "$ip\nConflito de IP detectado."
exit 1
else
zenity --info --text "$ip\nNenhum problema encontrado."
exit 0
fi
;;
##################################################################
10 )
clear
echo "Versão do kernel:"
uname -a
cat /etc/issue
#echo ------------------------------------------------
echo "Os usuários logados:"
who
echo '
'
echo "Hostname:"
uname -n
echo '
'
echo "Memória disponivel:"
free -m
echo '
'
echo "Espaço em disco:"
df
;;
##################################################################
11 ) clear
# Efetua clonagem de discos #
# Depende: dd #
######################################################
echo '
---------------------------------
1 ) Clonar HD inteiro;
2 ) Clonar Particao;
3 ) Criar imagem de HD;
4 ) Montar Particao;
5 ) Verificar HD com GParted;
6 ) Sair sem fazer nada;
---------------------------------'
read alternativa
case "$alternativa" in
1 ) echo "Aguarde ..."
sleep 1
echo "=> Verficando unidades de discos agora."
echo " "
sleep 3
clear
echo "Discos encontrados :"
unidade=`fdisk -l | grep Disk`
echo "---------------------------------------------------------------------------------"
echo "=> Veja as unidades, tamanho e ID abaixo:"
echo "$unidade"
echo " "
echo "---------------------------------------------------------------------------------"
fdisk -l | grep Linux
echo "---------------------------------------------------------------------------------"
echo '
OBS.! Para discos inteiros escreva o nome das unidades sem o numero '
echo " "
echo 'Exemplo.:
1 Disco para disco: origem=/dev/sda destino=/dev/sdb'
echo " "
echo "Qual o disco de origem ?"
read origem
echo "Qual o disco de destino ?"
read destino
echo " "
sleep 3
clear
echo "=> Iniciando a clonagem agora. Seja paciente."
dd if=$origem of=$destino
echo " "
echo -e "\a"
sleep 2
echo -e "\a"
sleep 1
echo -e "\a"
echo "! Pronto. Seu disco foi clonado com sucesso."
sleep 4
clear
;;
#
2 ) echo "Aguarde ...."
sleep 2
clear
echo 'De Particao para Particao:
Ex.: origem=/dev/sda1 destino=/dev/sda-Nº da particao'
sleep 1
echo "Efetuando clonagem de particao agora. Informe a origem e o destino."
sleep 1
echo "Qual a particao de origem ?"
read porigem
echo "Qual a particao de destino ?"
read pdestino
echo " "
sleep 3
clear
echo "=> Iniciando a clonagem agora. Seja paciente."
dd if=$porigem of=$pdestino
echo " "
echo -e "\a"
sleep 2
echo -e "\a"
sleep 1
echo -e "\a"
echo "! Pronto. Seu particao foi clonada com sucesso."
sleep 4
clear
;;
#
3 ) echo "Aguarde..."
clear
sleep 2
echo "=> Verficando unidades de discos agora."
echo " "
sleep 3
clear
echo "Discos encontrados :"
unidade=`fdisk -l | grep Disk`
echo "---------------------------------------------------------------------------------"
echo "=> Veja as unidades, tamanho e ID abaixo:"
echo "$unidade"
echo " "
echo "---------------------------------------------------------------------------------"
fdisk -l | grep Linux
echo "---------------------------------------------------------------------------------"
sleep 2
echo "Criando imagem de disco agora... Informe a unidade."
sleep 1
echo "Escreva o nome do disco a ser feita a imagem"
read disco
echo "Indique o diretorio onde devo guardar a imagem"
read diretorio
echo "Como gostaria de chamar o arquivo ?"
read arquivo
sleep 2
clear
echo "=> Iniciando a clonagem agora. Seja paciente."
dd if=$disco of=$diretorio/$arquivo.img
echo " "
echo -e "\a"
sleep 2
echo -e "\a"
sleep 1
echo -e "\a"
echo "! Pronto. Sua imagem foi gerada com sucesso."
sleep 4
clear
;;
4 ) echo "Montando agora..."
sleep 1
clear
echo "Qual particao devo montar ?"
read particao
if [ -d "/tmp/PARTICAO/$$" ]; then
echo "Montando "$particao" em /tmp/PARTICAO"
else
echo "Vou criar um diretorio temporario para montagem"
mkdir /tmp/PARTICAO/
echo "Sua particao e de um sistema windows ? sim/nao"
read sistema
if [ "sistema" = "sim" ]; then
mount -t ntfs-3g $particao /tmp/PARTICAO/
else
mount $particao /tmp/PARTICAO/
fi
echo "Sua particao foi montada em /tmp/PARTICAO/"
fi
;;
5 ) echo "Abrindo GParted agora..."
if [ -e "/usr/bin/gparted" ]; then
sleep 2
echo "GParted encontrado. Abrindo agora."
sleep 2
/usr/bin/gparted
else
echo "O Gparted nao foi encontrado..."
fi
;;
6 ) echo "Saindo agora..."
sleep 2
clear
;;
*) echo "Ops.! alternativa errada."
sleep 2
echo "Escolha 1,2,3,4 ou 5"
sleep 4
clear
;;
#
esac
;;
##################################################################
12 ) clear
echo "=> Apagando MAC'S Antigas do arquivo... /etc/udev/rules.d/70-persistent-net.rules"
echo "#configurado via script => JULIO 2.0<=" > /etc/udev/rules.d/70-persistent-net.rules
echo "OK...Reinicie o Micro Para que Possa Reconhecer a(s) Placa(s) de Rede."
sleep 3
;;
##################################################################
13 ) clear
echo "Qual a interface Voce Quer Compartilhar?"
sleep 2
read compartilhar
echo "Quer Manter Fixo Este Compartilhamento? sim/nao"
sleep 2
read sn
sleep 1
if [ $sn = sim ]; then
echo "modprobe iptable_nat" >> /etc/rc.local
echo "echo 1 > /proc/sys/net/ipv4/ip_forward" >> /etc/rc.local
echo "iptables -t nat -A POSTROUTING -o $compartilhar -j MASQUERADE" >> /etc/rc.local
echo "exit 0" >> /etc/rc.local
echo "#configurado via script => JULIO 2.0<=" >> /etc/rc.local
modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o $compartilhar -j MASQUERADE
sleep 1
else
modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o $compartilhar -j MASQUERADE
fi
;;
##################################################################
14 ) clear
echo "Que Horas São? Ex.: 1230, HHMM (não Use os 2 Pontos ":")"
read hora
echo "Qual a Dia é Hoje?"
read dia
echo "Qual o Mês?"
read mes
echo "Qual o Ano?"
read ano
date $mes$dia$hora$ano
clear
echo "Data e Hora Ajustadas."
sleep 3
;;
##################################################################
15 ) clear
echo "Será Aberto o Cfdisk"
sleep 2
clear
cfdisk
fdisk -l
echo "Qual Partição Deseja Montar?"
read part
echo "Qual o Formato? ext3,Reiserfs,vfat,ntfs-3g"
read format
mkdir /media/$part
mount -t $format /dev/$part /media/$part
echo "Sua Partição Foi Montada em: /media/$part"
konqueror '/media/'
clear
umount /dev/$part
echo "
Sua Partição Foi Desmontada."
sleep 2
;;
##################################################################
16) clear
echo "
Hostname Atual:"
cat /etc/hosts
sleep 2
clear
echo "Qual o Novo Hostname?"
read hostname
echo "127.0.0.1 localhost" > /etc/hosts
echo "127.0.1.1 $hostname" >> /etc/hosts
echo "#configurado via script => JULIO 2.0<= julio.tecnico@bol.com.br" >> /etc/hosts
echo "$hostname" > /etc/hostname
echo "#configurado via script => JULIO 2.0<= julio.tecnico@bol.com.br" >> /etc/hostname
echo "
Concluído...Hostname Alterado"
sleep 3
;;
##################################################################
17) clear
echo "
Júlio César Fais
Good Bye :-] ... Saindo ...
julio.tecnico@bol.com.br"
sleep 3
clear
;;
##################################################################
*) clear
echo "
Alternativa errada!
Escolha Opçoes de 1 a 17."
sleep 4
clear
;;
esac
#compartilhar conexão:
# iptables -F
# iptables -F INPUT
# iptables -F OUTPUT
# iptables -F POSTROUTING -t nat
# iptables -F PREROUTING -t nat
# echo 1 > /proc/sys/net/ipv4/ip_forward
# iptables -P FORWARD ACCEPT
# iptables -A POSTROUTING -t nat -s 192.168.0.0/24 -o ppp0 -j MASQUERADE
Um comentário:
Aulas de linux em fais, seu chefe e obeso e o jacomeli e chato e so coça o rabo
Postar um comentário