Configurar 3G
Publicado por julio cesar fais (última atualização em 08/02/2011)
[ Hits: 5.678 ]
Homepage: juliovarginha.blogspot.com
Script facilita a configuração de modems 3G.
Dependências: wvdial, libusb-dev, usb-modeswitch
#!/bin/bash
############################################### FIM #################################################
#script Júlio César Fais - 3G - 13 Janeiro 2011
#julio.tecnico@bol.com.br
#juliovarginha.blogspot.com
#Dependencias: wvdial, libusb-dev, usb-modeswitch
###########verifica se o usuario é root##################
#se for root retorna 0
#se for usuario normal retorna 1000
userid=$(id -u)
if [ $userid = 1000 ]; then
`zenity --warning --text "Não Esta Sendo Executado Como Administrador (root)!" --title "AVISO DO JULIO!!!"`
fi
if [ $userid = 0 ]; then
`zenity --warning --text "Cuidado!!! Script Sendo Executado Como Administrador (root)!" --title "AVISO DO JULIO!!!"`
fi
################################################## inicio da função (8)
function function_b () {
vendor=$(zenity --entry --text="Digite o VENDOR (Código)." --title="Ex.: 19d2" --width=300)
if [ $? == 1 ]; then
exit
fi
product=$(zenity --entry --text="Digite o PRODUCT (Código)." --title="Ex.: 2000" --width=300)
if [ $? == 1 ]; then
exit
fi
echo "<!-- -*- SGML -*- -->" > /usr/share/hal/fdi/information/20thirdparty/20-modem.fdi
echo "<deviceinfo version="0.2">" >> /usr/share/hal/fdi/information/20thirdparty/20-modem.fdi
echo "<device>" >> /usr/share/hal/fdi/information/20thirdparty/20-modem.fdi
echo "<!-- ZTE MF626 HSDPA USB Modem -->" >> /usr/share/hal/fdi/information/20thirdparty/20-modem.fdi
echo "<match key="@info.parent:usb.vendor_id" int="0x$vendor">" >> /usr/share/hal/fdi/information/20thirdparty/20-modem.fdi
echo "<match key="@info.parent:usb.product_id" int="0x$product">" >> /usr/share/hal/fdi/information/20thirdparty/20-modem.fdi
echo "<match key="@info.parent:usb.interface.number" int="3">" >> /usr/share/hal/fdi/information/20thirdparty/20-modem.fdi
echo "<append key="modem.command_sets" type="strlist">GSM-07.07</append>" >> /usr/share/hal/fdi/information/20thirdparty/20-modem.fdi
echo "<append key="modem.command_sets" type="strlist">GSM-07.05</append>" >> /usr/share/hal/fdi/information/20thirdparty/20-modem.fdi
echo "<append key="info.capabilities" type="strlist">modem</append>" >> /usr/share/hal/fdi/information/20thirdparty/20-modem.fdi
echo "</match>" >> /usr/share/hal/fdi/information/20thirdparty/20-modem.fdi
echo "</match>" >> /usr/share/hal/fdi/information/20thirdparty/20-modem.fdi
echo "</match>" >> /usr/share/hal/fdi/information/20thirdparty/20-modem.fdi
echo "</device>" >> /usr/share/hal/fdi/information/20thirdparty/20-modem.fdi
echo "</deviceinfo>" >> /usr/share/hal/fdi/information/20thirdparty/20-modem.fdi
echo "#configurado via script => JULIO 3G<= julio.tecnico@bol.com.br" >> /usr/share/hal/fdi/information/20thirdparty/20-modem.fdi
cat /usr/share/hal/fdi/information/20thirdparty/20-modem.fdi > /tmp/2345678.txt
a=$(cat /tmp/2345678.txt)
zenity --info --text "Veja o Arquivo Criado."
zenity --info --text "$a"
rm -fr /tmp/2345678.txt
}
################################################### inicio da função (7)
function function_manual () {
vendor=$(zenity --entry --text="Digite o VENDOR (Código)." --title="Ex.: 19d2" --width=300)
if [ $? == 1 ]; then
exit
fi
product=$(zenity --entry --text="Digite o PRODUCT (Código)." --title="Ex.: 2000" --width=300)
if [ $? == 1 ]; then
exit
fi
modprobe -r usbserial
rmmod usb_storage
modprobe usbserial vendor=0x$vendor product=0x$product
ls /dev/ttyUSB* > /tmp/2345678.txt
a=$(cat /tmp/2345678.txt)
zenity --info --text "$a"
rm -fr /tmp/2345678.txt
}
################################################### inicio da função (6)
function function_tty () {
find /dev | grep ttyUSB* > /tmp/2345678.txt
a=$(cat /tmp/2345678.txt)
zenity --info --text "$a"
rm -fr /tmp/2345678.txt
}
################################################### inicio da função (5)
function function_regra () {
vendor=$(zenity --entry --text="Digite o VENDOR (Código)." --title="Ex.: 19d2" --width=300)
if [ $? == 1 ]; then
exit
fi
product=$(zenity --entry --text="Digite o PRODUCT (Código)." --title="Ex.: 2000" --width=300)
if [ $? == 1 ]; then
exit
fi
echo "SUBSYSTEM==”block”, \" > /etc/udev/rules.d/15-regra-modem.rules
echo "ACTION==”add”, \" >> /etc/udev/rules.d/15-regra-modem.rules
echo "SYSFS{idVendor}==”$vendor″, \" >> /etc/udev/rules.d/15-regra-modem.rules
echo "SYSFS{idProduct}==”$product″, \" >> /etc/udev/rules.d/15-regra-modem.rules
echo "OPTIONS=”ignore_device”" >> /etc/udev/rules.d/15-regra-modem.rules
echo "SUBSYSTEM==”usb”, SYSFS{idProduct}==”$product″, SYSFS{idVendor}==”$vendor″," >> /etc/udev/rules.d/15-regra-modem.rules
echo "RUN+=”/usr/sbin/usb_modeswitch" >> /etc/udev/rules.d/15-regra-modem.rules
echo "#configurado via script => JULIO 3G<= julio.tecnico@bol.com.br" >> /etc/udev/rules.d/15-regra-modem.rules
/etc/init.d/udev stop
/etc/init.d/udev start
sleep 2
}
#################################################### inicio da função (4)
function function_wvdial () {
phone=$(zenity --entry --text="Digite o Telefone." --title="Ex.: *99#" --width=300)
if [ $? == 1 ]; then
exit
fi
usuario=$(zenity --entry --text="Digite o Usuario." --title="Ex.: vivo" --width=300)
if [ $? == 1 ]; then
exit
fi
senha=$(zenity --entry --text="Digite a Senha." --title="Ex.: vivo" --width=300)
if [ $? == 1 ]; then
exit
fi
tty=$(zenity --entry --text="Qual tty seu Modem foi reconhecido." --title="Ex.: ttyUSB0" --width=300)
if [ $? == 1 ]; then
exit
fi
echo "[Dialer Defaults]" > /etc/wvdial.conf
echo "Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0" >> /etc/wvdial.conf
echo "Modem Type = Analog Modem" >> /etc/wvdial.conf
echo "Phone = $phone" >> /etc/wvdial.conf
echo "ISDN = 0" >> /etc/wvdial.conf
echo "Username = $usuario" >> /etc/wvdial.conf
echo "Init1 = ATZ" >> /etc/wvdial.conf
echo "Password = $senha" >> /etc/wvdial.conf
echo "Modem = /dev/$tty" >> /etc/wvdial.conf
echo "Baud = 460800" >> /etc/wvdial.conf
echo "Carrier Check = no" >> /etc/wvdial.conf
echo "Auto Reconnect = yes" >> /etc/wvdial.conf
echo "#configurado via script => JULIO 3G<= julio.tecnico@bol.com.br" >> /etc/wvdial.conf
cat /etc/wvdial.conf > /tmp/2345678.txt
a=$(cat /tmp/2345678.txt)
zenity --info --text "Veja o Arquivo Editado."
zenity --info --text "$a"
rm -fr /tmp/2345678.txt
}
################################inicio da função (3)
function function_modes () {
vendor=$(zenity --entry --text="Digite o VENDOR (Código)." --title="Ex.: 19d2" --width=300)
if [ $? == 1 ]; then
exit
fi
product=$(zenity --entry --text="Digite o PRODUCT (Código)." --title="Ex.: 2000" --width=300)
if [ $? == 1 ]; then
exit
fi
echo "DefaultVendor= 0×$vendor" > /etc/usb_modeswitch.conf
echo "DefaultProduct= 0×$product" >> /etc/usb_modeswitch.conf
echo "TargetVendor= 0×$vendor" >> /etc/usb_modeswitch.conf
echo "TargetProduct= 0×$product" >> /etc/usb_modeswitch.conf
echo "MessageContent=”55534243000000000000000000000011060000000000000000000000000000″" >> /etc/usb_modeswitch.conf
echo "CheckSuccess=20" >> /etc/usb_modeswitch.conf
echo "#configurado via script => JULIO 3G<= julio.tecnico@bol.com.br" >> /etc/usb_modeswitch.conf
/usr/sbin/usb_modeswitch -W -c /etc/usb_modeswitch.conf
cat /etc/usb_modeswitch.conf > /tmp/2345678.txt
a=$(cat /tmp/2345678.txt)
zenity --info --text "Veja o Arquivo Editado."
zenity --info --text "$a"
rm -fr /tmp/2345678.txt
}
###################################inicio da função (2)
function function_lsusb () {
lsusb > /tmp/2345678.txt
a=$(cat /tmp/2345678.txt)
zenity --info --text "$a"
rm -fr /tmp/2345678.txt
}
#####################################Início da função (1)
function function_dep () {
zenity --info --text "Dependencias: wvdial, libusb-dev, usb-modeswitch."
zenity --info --text "Baixe e Extraia o usb-modeswitch com #make install."
zenity --info --text "Apoś a Configuração Conecte com o Comando #wvdial, ou escolha um discador ex.: kppp, gnomeppp."
exit 0
}
################################################## MENU ######################################################################
while true; do
acao="$(zenity --width=570 --height=340 --list --column " Execute Como Root." --title="Script Júlio Fais 3G" \
"1) DEPENDENCIAS" \
"2) ANOTAR VENDOR/PRODUCT" \
"3) CONFIGURAR /etc/usb_modeswitch.conf" \
"4) CONFIGURAR /etc/wvdial.conf" \
"5) CONFIGURAR REGRAS /etc/udev/rules.d/15-regra-modem.rules" \
"6) VERIFICAR SE O MODEM FOI RECONHECIDO" \
"7) CARREGAR MODEM MANUAL" \
"8) IDENTIFICAR MODEM /usr/share/hal/fdi/information/20thirdparty/20-modem.fdi" \
"SAIR")"
case $acao in
"1) DEPENDENCIAS")
function_dep ;;
"2) ANOTAR VENDOR/PRODUCT")
function_lsusb ;;
"3) CONFIGURAR /etc/usb_modeswitch.conf")
function_modes ;;
"4) CONFIGURAR /etc/wvdial.conf")
function_wvdial ;;
"5) CONFIGURAR REGRAS /etc/udev/rules.d/15-regra-modem.rules")
function_regra ;;
"6) VERIFICAR SE O MODEM FOI RECONHECIDO" )
function_tty ;;
"7) CARREGAR MODEM MANUAL" )
function_manual ;;
"8) IDENTIFICAR MODEM /usr/share/hal/fdi/information/20thirdparty/20-modem.fdi" )
function_b ;;
*) exit ;;
esac
done
############################################### FIM #################################################
#script Júlio César Fais - 3G - 13 Janeiro 2011
#julio.tecnico@bol.com.br
#juliovarginha.blogspot.com
#Dependencias: wvdial, libusb-dev, usb-modeswitch
Backup para fita dat em Dialog
Script de compilação do kernel 3.3.4 no Ubuntu 11.10 64 bits
Nenhum comentário foi encontrado.
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
VOL já não é mais como antes? (4)
É normal não gostar de KDE? (12)
E aí? O Warsaw já está funcionando no Debian 13? [RESOLVIDO] (15)
Secure boot, artigo interessante, nada técnico. (4)
copiar library para diretorio /usr/share/..... su com Falha na a... (1)









