This commit is contained in:
Esteban Mackay Q 2023-09-08 22:57:04 -05:00
parent a4ca515ec4
commit 3631c111db
6 changed files with 290 additions and 23 deletions

View File

@ -148,7 +148,6 @@ bash -c "$(curl -fsSL https://gitlab.com/hp3icc/emq-TE1/-/raw/main/install/dmrgw
bash -c "$(curl -fsSL https://gitlab.com/hp3icc/emq-TE1/-/raw/main/install/f2b+ufw.sh)"
bash -c "$(curl -fsSL https://gitlab.com/hp3icc/python-aprs-wx/-/raw/main/install.sh)"
bash -c "$(curl -fsSL https://gitlab.com/hp3icc/emq-TE1/-/raw/main/install/ysf2ysf.sh)"
bash -c "$(curl -fsSL https://gitlab.com/hp3icc/emq-TE1/-/raw/main/install/raspberry.sh)"
bash -c "$(curl -fsSL https://gitlab.com/hp3icc/easy-hbl/-/raw/main/hbl.sh)"
bash -c "$(curl -fsSL https://gitlab.com/hp3icc/emq-TE1/-/raw/main/install/nxdn2dmr.sh)"
@ -176,6 +175,8 @@ bash -c "$(curl -fsSL https://gitlab.com/hp3icc/emq-TE1/-/raw/main/menu/menu-nxd
############################
bash -c "$(curl -fsSL https://gitlab.com/hp3icc/emq-TE1/-/raw/main/install/raspberry.sh)"
# pip install --no-cache-dir --upgrade cryptography pyopenssl autobahn Twisted dmr_utils3 bitstring jinja2 MarkupSafe bitarray configparser aprslib attrs wheel service_identity pyOpenSSL mysqlclient tinydb ansi2html mysql-connector-python pandas xlsxwriter cursor pynmea2 maidenhead flask folium mysql-connector resettabletimer setproctitle requests libscrc Pyro5

View File

@ -1,9 +1,9 @@
#!/bin/bash
if [ "$(cat /proc/cpuinfo | grep 'Raspberry')" != "" ]; then
sudo cat > /etc/wpa_supplicant/wpa_supplicant.conf <<- "EOF"
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=PA
#sudo cat > /etc/wpa_supplicant/wpa_supplicant.conf <<- "EOF"
#ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
#update_config=1
#country=PA
##################################################################
# #
# Favor tomar como referencia, las dos redes wifi que aparecen #
@ -13,22 +13,25 @@ country=PA
# Raspbian proyect by HP3ICC, 73. #
# #
##################################################################
network={
#network={
key_mgmt=NONE
}
#}
network={
#network={
ssid="Coloque_aqui_nombre_de_red_wifi"
psk="Coloque_aqui_la_clave_wifi"
}
#}
EOF
#EOF
sudo chmod 777 /etc/wpa_supplicant/wpa_supplicant.conf
#sudo chmod 777 /etc/wpa_supplicant/wpa_supplicant.conf
rfkill unblock wlan
##
sudo apt-get install raspi-config -y
else
systemctl disable autoap.service
systemctl disable apoff.service
fi

View File

@ -7,14 +7,14 @@ sudo cat > /usr/local/bin/rebooter1.sh <<- "EOF"
#!/bin/bash
# Tiempo de monitoreo en segundos
TIEMPO_MONITOREO=30
TIEMPO_MONITOREO=300
# Tiempo de espera entre los chequeos en segundos
TIEMPO_ESPERA=60
# Función para verificar el estado de Internet
verificar_internet() {
ping -c 1 noip.com > /dev/null 2>&1
ping -c 5 noip.com > /dev/null 2>&1
return $?
}
@ -50,12 +50,12 @@ EOF
sudo cat > /usr/local/bin/rebooter2.sh <<- "EOF"
#!/bin/bash
sleep 180
sleep 300
while :
do
SERVER=noip.com
ping -c1 ${SERVER} > /dev/null
ping -c5 ${SERVER} > /dev/null
if [ $? != 0 ]
then

125
install/wifi-connect.sh Normal file
View File

@ -0,0 +1,125 @@
#!/bin/bash
cd /opt
wget https://raw.githubusercontent.com/balena-os/wifi-connect/master/scripts/raspbian-install.sh
sed -i "s/CONFIRMATION=.*/CONFIRMATION=false/" raspbian-install.sh
chmod +x raspbian-install.sh
./raspbian-install.sh
rm raspbian-install.sh
#auto ap
sudo cat > /usr/local/bin/autoap.sh <<- "EOF"
#!/bin/bash
# Tiempo de monitoreo en segundos
TIEMPO_MONITOREO=30
# Tiempo de espera entre los chequeos en segundos
TIEMPO_ESPERA=30
# Función para verificar el estado de Internet
verificar_internet() {
ping -c 5 noip.com > /dev/null 2>&1
return $?
}
# Bucle infinito para monitorear
while true; do
if verificar_internet; then
# Acción silenciosa
:
echo "internet ok"
else
# echo "sin internet"
sleep $TIEMPO_MONITOREO
if verificar_internet; then
# Conexión restablecida
# echo "internet restablecido"
:
else
wifi-connect
# echo "apliando reboot"
fi
fi
sleep $TIEMPO_ESPERA
done
EOF
sudo cat > /usr/local/bin/apoff.sh <<- "EOF"
#!/bin/bash
# Tiempo de espera entre los chequeos en segundos
TIEMPO_ESPERA=60
# Función para verificar el estado de Internet
verificar_internet() {
ping -c 5 noip.com > /dev/null 2>&1
return $?
}
# Función para verificar si wifi-connect se está ejecutando y reiniciar autoap si es necesario
verificar_wifi_connect() {
if pgrep -x "wifi-connect" >/dev/null; then
echo "wifi-connect está en ejecución."
# Reiniciar autoap.service (ajusta esto según tu configuración)
sudo systemctl restart autoap.service
fi
}
# Bucle infinito para monitorear
while true; do
if verificar_internet; then
# Internet está funcionando y hay respuesta al ping
echo "Internet ok"
# Realizar la segunda verificación antes de reiniciar autoap.service
verificar_wifi_connect
else
# Internet no está funcionando o no hay respuesta al ping
echo "No hay conexión a Internet"
fi
sleep $TIEMPO_ESPERA
done
EOF
sudo chmod +x /usr/local/bin/apoff.sh
#
sudo cat > /lib/systemd/system/apoff.service <<- "EOF"
[Unit]
Description=Rebooter Service1
After=network.target
[Service]
ExecStart=/usr/local/bin/apoff.sh
Restart=on-failure
[Install]
WantedBy=default.target
EOF
chmod +x /usr/local/bin/autoap.sh
#
sudo cat > /lib/systemd/system/autoap.service <<- "EOF"
[Unit]
Description=AutoAP
After=network.target
[Service]
ExecStart=/usr/local/bin/autoap.sh
Restart=on-failure
[Install]
WantedBy=default.target
EOF
#
systemctl daemon-reload
systemctl enable autoap.service
systemctl enable apoff.service
#systemctl stop apoff.service autoap.service
#systemctl start autoap.service apoff.service

141
menu/menu-wifi-manager Normal file
View File

@ -0,0 +1,141 @@
#!/bin/bash
#menu-wifi
cat > /bin/menu-wifi-manager <<- "EOF"
#!/bin/bash
if [ "$(cat /proc/cpuinfo | grep 'Raspberry')" != "" ]; then
while :
do
choix=$(whiptail --title "WiFi Mannager" --menu "Selecciona una opción:" 15 60 6 \
1 "Mostrar redes Wi-Fi almacenadas" \
2 "Agregar nueva red Wi-Fi" \
3 "Editar red Wi-Fi existente" \
4 "Borrar red Wi-Fi" \
5 "WiFi Signal Meter" \
6 "Salir" 3>&1 1>&2 2>&3)
exitstatus=$?
if [ $exitstatus = 0 ]; then
echo "Opción seleccionada:" $choix
else
echo "Has elegido cancelar. Saliendo..."
break
fi
case $choix in
1)
echo "Mostrando redes WiFi almacenadas:"
wifi_list=$(nmcli connection show | awk '$3 == "wifi" {print $1}' | nl -s " ")
whiptail --title "Redes WiFi Almacenadas" --msgbox "$wifi_list" 15 60
;;
2)
ssid=""
password=""
whiptail --title "Agregar nueva red WiFi" --inputbox "Ingresa el SSID de la nueva red WiFi:" 10 60 2>/tmp/ssid.txt
ssid=$(cat /tmp/ssid.txt)
whiptail --title "Agregar nueva red WiFi" --inputbox "Ingresa la contraseña de la nueva red WiFi:" 10 60 2>/tmp/password.txt
password=$(cat /tmp/password.txt)
# Agregar la nueva red WiFi utilizando los comandos específicos
nmcli connection add type wifi ifname wlan0 con-name $ssid ssid "$ssid"
nmcli connection modify $ssid wifi-sec.key-mgmt wpa-psk
nmcli connection modify $ssid wifi-sec.psk "$password"
nmcli connection modify $ssid connection.autoconnect yes
sudo systemctl restart NetworkManager
rm -f /tmp/ssid.txt /tmp/password.txt
echo "Nueva red WiFi agregada con éxito y habilitada en wlan0."
# read -p "Presiona Enter para continuar..."
;;
3)
wifi_list=$(nmcli connection show | awk '$3 == "wifi" {print $1}' | nl -s " ")
choice_num=""
while [ -z "$choice_num" ]; do
choice_num=$(whiptail --title "Redes WiFi Almacenadas" --menu "Selecciona una red WiFi para borrar:" 15 60 6 $wifi_list 3>&1 1>&2 2>&3)
if [ $? -ne 0 ]; then
echo "Has elegido cancelar. Saliendo..."
break
fi
done
if [[ $choice_num =~ ^[0-9]+$ ]]; then
ssid_to_edit=$(nmcli connection show | awk '$3 == "wifi" {print $1}' | sed -n "${choice_num}p")
if [ -n "$ssid_to_edit" ]; then
# Solicitar la nueva contraseña
whiptail --title "Editar red WiFi" --inputbox "Ingresa la nueva contraseña para '$ssid_to_edit':" 10 60 2>/tmp/new_password.txt
new_password=$(cat /tmp/new_password.txt)
# Cambiar la contraseña de la red WiFi utilizando nmcli
nmcli connection modify $ssid_to_edit wifi-sec.psk "$new_password"
sudo systemctl restart NetworkManager
rm -f /tmp/new_password.txt
echo "Contraseña de la red WiFi '$ssid_to_edit' actualizada con éxito."
else
echo "Número de red WiFi no válido."
fi
else
echo "Número de red WiFi no válido."
fi
# read -p "Presiona Enter para continuar..."
;;
4)
wifi_list=$(nmcli connection show | awk '$3 == "wifi" {print $1}' | nl -s " ")
choice_num=""
while [ -z "$choice_num" ]; do
choice_num=$(whiptail --title "Redes WiFi Almacenadas" --menu "Selecciona una red WiFi para borrar:" 15 60 6 $wifi_list 3>&1 1>&2 2>&3)
if [ $? -ne 0 ]; then
echo "Has elegido cancelar. Saliendo..."
break
fi
done
if [[ $choice_num =~ ^[0-9]+$ ]]; then
ssid_to_delete=$(nmcli connection show | awk '$3 == "wifi" {print $1}' | sed -n "${choice_num}p")
if [ -n "$ssid_to_delete" ]; then
# Confirmar la eliminación de la red WiFi
whiptail --title "Borrar red WiFi" --yesno "¿Estás seguro de que deseas borrar la red WiFi '$ssid_to_delete'?" 10 60
if [ $? -eq 0 ]; then
# Eliminar la red WiFi utilizando nmcli
nmcli connection delete "$ssid_to_delete"
echo "Red WiFi '$ssid_to_delete' eliminada con éxito."
else
echo "No se ha eliminado ninguna red WiFi."
fi
else
echo "Número de red WiFi no válido."
fi
else
echo "Número de red WiFi no válido."
fi
# read -p "Presiona Enter para continuar..."
;;
5)
sudo wavemon ;;
6)
break
;;
esac
done
exit 0
else
whiptail --title "WiFi Mannager" --msgbox "Esta opcion solo esta disponible para Raspberry / This option is only available for Raspberry" 0 50
exit 0
fi
EOF
#
chmod +x /bin/menu-wifi-manager
ln -sf /bin/menu-wifi-manager /bin/MENU-WIFI-MANAGER
chmod +x /bin/MENU*

View File

@ -31,10 +31,9 @@ sudo cat > /bin/menu-update2 <<- "EOF"
while : ; do
choix=$(whiptail --title "Raspbian Proyect HP3ICC Menu Avance Upgrade" --menu "Nota Importante: solo actualice aplicaciones que esten en uso, al finalizar la actualizacion la aplicacion se reiniciara, tenga pleno dominio de las configuraciones de cada aplicacion, antes de actualizar.
" 21 50 8 \
1 " UPGRADE to Reuter AP Mode " \
2 " install DVSMU " \
3 " reinstall raspi-config " \
4 " Menu Principal " 3>&1 1>&2 2>&3)
1 " install DVSMU " \
2 " reinstall raspi-config " \
3 " Menu Principal " 3>&1 1>&2 2>&3)
exitstatus=$?
#on recupere ce choix
#exitstatus=$?
@ -46,10 +45,8 @@ fi
# case : action en fonction du choix
case $choix in
1)
bash -c "$(curl -fsSL https://gitlab.com/hp3icc/emq-TE1/-/raw/main/te1ap.sh)" ;;
2)
bash -c "$(curl -fsSL https://gitlab.com/hp3icc/DVSMU/-/raw/main/emq-dvsmu.sh)" ;;
3)
2)
if [ "$(cat /proc/cpuinfo | grep 'Raspberry')" != "" ]; then
apt-get update
sudo apt-get install raspi-config -y
@ -57,7 +54,7 @@ else
whiptail --title "emq-TE1" --msgbox "Solo para Raspberry / Only for Raspberry" 0 50
exit 0
fi;;
4)
3)
break;
esac
done