mirror of https://gitlab.com/hp3icc/emq-TE1.git
Compare commits
4 Commits
d1bcef16ec
...
6ac3ffb720
| Author | SHA1 | Date |
|---|---|---|
|
|
6ac3ffb720 | |
|
|
910a41bb08 | |
|
|
644e806ed5 | |
|
|
977347631c |
147
install.sh
147
install.sh
|
|
@ -1,9 +1,20 @@
|
|||
#!/bin/bash
|
||||
# Verificar si el usuario tiene permisos de root
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
echo "Este script debe ejecutarse como usuario ROOT"
|
||||
|
||||
if [ $EUID -ne 0 ]; then
|
||||
whiptail --title "sudo su" --msgbox "requiere ser usuario root , escriba (sudo su) antes de entrar a menu / requires root user, type (sudo su) before entering menu" 0 50
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Detectar el sistema operativo y su versión
|
||||
if [ -f "/etc/os-release" ]; then
|
||||
. /etc/os-release
|
||||
OS=$ID
|
||||
VERSION=$VERSION_ID
|
||||
else
|
||||
echo "No se pudo detectar el sistema operativo."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Actualizar la lista de paquetes una vez al principio
|
||||
apt-get update
|
||||
|
||||
|
|
@ -19,22 +30,26 @@ else
|
|||
fi
|
||||
|
||||
# Lista de aplicaciones para verificar e instalar
|
||||
apps=("sudo" "curl" "git" "make" "build-essential" "libusb-1.0-0-dev" "python" "python3" "python3-full" "python3-pip" "chkconfig" "libi2c-dev" "i2c-tools" "lm-sensors" "python3-websockets" "python3-gpiozero" "python3-psutil" "python3-serial" "wget" "python3-dev" "python3-venv" "libffi-dev" "libssl-dev" "cargo" "pkg-config" "sed" "default-libmysqlclient-dev" "libmysqlclient-dev" "zip" "unzip" "python3-distutils" "python3-twisted" "python3-bitarray" "rrdtool" "openssl" "wavemon" "gcc" "g++" "cmake" "libasound2-dev" "libudev-dev" "gpsd" "libgps-dev" "gpsd-clients" "gpsd-tools" "chrony" "libsamplerate0-dev")
|
||||
apps="sudo curl git make build-essential libusb-1.0-0-dev python3 python3-pip libi2c-dev i2c-tools lm-sensors wget python3-dev python3-venv libffi-dev libssl-dev cargo pkg-config sed libmariadb-dev zip unzip rrdtool openssl wavemon gcc g++ cmake libasound2-dev libudev-dev gpsd libgps-dev gpsd-clients gpsd-tools chrony libsamplerate0-dev"
|
||||
|
||||
# Función para verificar e instalar una aplicación
|
||||
check_and_install() {
|
||||
app=$1
|
||||
if ! dpkg -s $app 2>/dev/null | grep -q "Status: install ok installed"; then
|
||||
echo "$app no está instalado. Instalando..."
|
||||
sudo DEBIAN_FRONTEND=noninteractive apt-get install -y $app
|
||||
echo "$app instalado correctamente."
|
||||
DEBIAN_FRONTEND=noninteractive apt-get install -y $app || true
|
||||
if dpkg -s $app 2>/dev/null | grep -q "Status: install ok installed"; then
|
||||
echo "$app instalado correctamente."
|
||||
else
|
||||
echo "No se pudo instalar $app. Continuando con la siguiente aplicación..."
|
||||
fi
|
||||
else
|
||||
echo "$app ya está instalado."
|
||||
fi
|
||||
}
|
||||
|
||||
# Verificar e instalar cada aplicación
|
||||
for app in "${apps[@]}"; do
|
||||
for app in $apps; do
|
||||
check_and_install $app
|
||||
done
|
||||
|
||||
|
|
@ -51,9 +66,8 @@ python3 -m venv myenv
|
|||
source myenv/bin/activate
|
||||
|
||||
# Instalar pip en el entorno virtual
|
||||
if [ -f "/opt/get-pip.py" ]
|
||||
then
|
||||
rm /opt/get-pip.*
|
||||
if [ -f "/opt/get-pip.py" ]; then
|
||||
rm /opt/get-pip.*
|
||||
fi
|
||||
wget https://bootstrap.pypa.io/pip/get-pip.py
|
||||
python3 get-pip.py
|
||||
|
|
@ -68,9 +82,6 @@ python3 -m pip install cryptography Twisted bitstring MarkupSafe bitarray config
|
|||
# Desactivar el entorno virtual
|
||||
deactivate
|
||||
|
||||
#pip install cryptography pyopenssl autobahn Twisted bitstring 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
|
||||
|
||||
cd /opt
|
||||
# Instalar Rust y configurar versión
|
||||
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
|
||||
source $HOME/.cargo/env
|
||||
|
|
@ -78,68 +89,21 @@ source $HOME/.cargo/env
|
|||
rustup install 1.72.0
|
||||
rustup default 1.72.0
|
||||
|
||||
if [ -f "/etc/os-release" ]; then
|
||||
source /etc/os-release
|
||||
|
||||
if [ "$VERSION_ID" == "12" ]; then
|
||||
/usr/bin/python3 -m pip install --break-system-packages pyOpenSSL
|
||||
/usr/bin/python3 -m pip install --break-system-packages autobahn
|
||||
/usr/bin/python3 -m pip install --break-system-packages jinja2
|
||||
/usr/bin/python3 -m pip install --break-system-packages dmr-utils3
|
||||
/usr/bin/python3 -m pip install --break-system-packages ansi2html
|
||||
/usr/bin/python3 -m pip install --break-system-packages aprslib
|
||||
/usr/bin/python3 -m pip install --break-system-packages tinydb
|
||||
/usr/bin/python3 -m pip install --break-system-packages mysqlclient
|
||||
/usr/bin/python3 -m pip install --break-system-packages setproctitle
|
||||
/usr/bin/python3 -m pip install --break-system-packages pynmea2
|
||||
/usr/bin/python3 -m pip install --break-system-packages maidenhead
|
||||
/usr/bin/python3 -m pip install --break-system-packages Twisted
|
||||
/usr/bin/python3 -m pip install --break-system-packages spyne
|
||||
/usr/bin/python3 -m pip install --break-system-packages Pyro5
|
||||
/usr/bin/python3 -m pip install --break-system-packages bitstring
|
||||
/usr/bin/python3 -m pip install --break-system-packages bitarray
|
||||
/usr/bin/python3 -m pip install --break-system-packages dmr_utils3
|
||||
/usr/bin/python3 -m pip install --break-system-packages configparser
|
||||
/usr/bin/python3 -m pip install --break-system-packages resettabletimer
|
||||
/usr/bin/python3 -m pip install --break-system-packages setuptools
|
||||
/usr/bin/python3 -m pip install --break-system-packages wheel
|
||||
/usr/bin/python3 -m pip install --break-system-packages MarkupSafe
|
||||
/usr/bin/python3 -m pip install --break-system-packages service-identity
|
||||
else
|
||||
/usr/bin/python3 -m pip install --upgrade pyOpenSSL
|
||||
/usr/bin/python3 -m pip install --upgrade autobahn
|
||||
/usr/bin/python3 -m pip install --upgrade jinja2
|
||||
/usr/bin/python3 -m pip install --upgrade dmr-utils3
|
||||
/usr/bin/python3 -m pip install --upgrade ansi2html
|
||||
/usr/bin/python3 -m pip install --upgrade aprslib
|
||||
/usr/bin/python3 -m pip install --upgrade tinydb
|
||||
/usr/bin/python3 -m pip install --upgrade mysqlclient
|
||||
/usr/bin/python3 -m pip install --upgrade setproctitle
|
||||
/usr/bin/python3 -m pip install --upgrade pynmea2
|
||||
/usr/bin/python3 -m pip install --upgrade maidenhead
|
||||
/usr/bin/python3 -m pip install --upgrade Twisted
|
||||
/usr/bin/python3 -m pip install --upgrade spyne
|
||||
/usr/bin/python3 -m pip install --upgrade Pyro5
|
||||
/usr/bin/python3 -m pip install --upgrade bitstring
|
||||
/usr/bin/python3 -m pip install --upgrade bitarray
|
||||
/usr/bin/python3 -m pip install --upgrade dmr_utils3
|
||||
/usr/bin/python3 -m pip install --upgrade configparser
|
||||
/usr/bin/python3 -m pip install --upgrade resettabletimer
|
||||
/usr/bin/python3 -m pip install --upgrade setuptools
|
||||
/usr/bin/python3 -m pip install --upgrade wheel
|
||||
/usr/bin/python3 -m pip install --upgrade MarkupSafe
|
||||
/usr/bin/python3 -m pip install --upgrade service-identity
|
||||
fi
|
||||
fi
|
||||
sudo pip3 uninstall -y twisted --quiet
|
||||
sudo pip3 install twisted --quiet
|
||||
# Instalación de módulos pip según el sistema operativo
|
||||
if [ "$OS" == "debian" ] && [ "$VERSION" == "12" ]; then
|
||||
/usr/bin/python3 -m pip install --break-system-packages pyOpenSSL autobahn jinja2 dmr-utils3 ansi2html aprslib tinydb mysqlclient setproctitle pynmea2 maidenhead Twisted spyne Pyro5 bitstring bitarray dmr_utils3 configparser resettabletimer setuptools wheel MarkupSafe service-identity
|
||||
else
|
||||
/usr/bin/python3 -m pip install --upgrade pyOpenSSL autobahn jinja2 dmr-utils3 ansi2html aprslib tinydb mysqlclient setproctitle pynmea2 maidenhead Twisted spyne Pyro5 bitstring bitarray dmr_utils3 configparser resettabletimer setuptools wheel MarkupSafe service-identity
|
||||
fi
|
||||
|
||||
echo "Instalación completa."
|
||||
|
||||
####################
|
||||
# Configuración adicional (timezone, cron, etc.)
|
||||
sudo timedatectl set-timezone America/Panama
|
||||
######################################################################################################################
|
||||
# Cronedit
|
||||
######################################################################################################################
|
||||
|
||||
# Crear script para editar cronjobs
|
||||
cat > /usr/local/bin/cronedit.sh <<- "EOF"
|
||||
cronjob_editor () {
|
||||
# usage: cronjob_editor '<interval>' '<command>' <add|remove>
|
||||
|
|
@ -157,24 +121,23 @@ elif [[ "$3" == remove ]] ;then
|
|||
fi
|
||||
}
|
||||
cronjob_editor "$1" "$2" "$3"
|
||||
|
||||
|
||||
EOF
|
||||
sudo chmod +x /usr/local/bin/cronedit.sh
|
||||
|
||||
# Limpiar archivos temporales
|
||||
if [ -f "/opt/curl.txt" ]; then
|
||||
rm /opt/curl.txt
|
||||
rm /opt/curl.txt
|
||||
fi
|
||||
if [ -f "/opt/curl-final.txt" ]; then
|
||||
rm /opt/curl-final.txt
|
||||
rm /opt/curl-final.txt
|
||||
fi
|
||||
####################
|
||||
echo iniciando instalacion
|
||||
# Ejecutar scripts de instalación adicionales
|
||||
echo "Iniciando instalación de scripts adicionales..."
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/install/ipv6off.sh)" &&
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/install/rpiswap.sh)" &&
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/install/rm.sh)" &&
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/install/dvswitch.sh)" &&
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/install/direwolf.sh)" &&
|
||||
#bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/install/pymultimonng.sh)"
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/install/ysfreflector.sh)" &&
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/install/mmdvm.sh)" &&
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/install/ysfgateway2.sh)" &&
|
||||
|
|
@ -200,13 +163,13 @@ bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/install/xlxd
|
|||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/menu/data-mmdvm.sh)" &&
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/install/n-manager.sh)" &&
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/install/wifi-connect.sh)"
|
||||
echo install menu
|
||||
#
|
||||
echo "Instalación de menús..."
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/menu/menu-aprs)" &&
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/python-aprs-beacon/-/raw/main/menu.sh)" &&
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/menu/menu-dvs)" &&
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/menu/menu-dw)" &&
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/menu/menu-fdmr)" &&
|
||||
#bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/menu/menu-mm-rtl)"
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/menu/menu-mmdvm)" &&
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/menu/menu-noip)" &&
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/menu/menu-reboot)" &&
|
||||
|
|
@ -215,7 +178,6 @@ bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/menu/menu-ys
|
|||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/menu/menu-ysf2dmr)" &&
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/menu/menu-ufw)" &&
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/menu/menu-ysf2ysf)" &&
|
||||
#bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/easy-hbl/-/raw/main/menu-hbl.sh)"
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/menu/menu-nxdn2dmr)" &&
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/menu/menu-p25r)" &&
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/menu/menu-wifi-manager)" &&
|
||||
|
|
@ -223,29 +185,27 @@ bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/menu/menu-as
|
|||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/menu/menu-xlx)" &&
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/menu/menu-ip)"
|
||||
|
||||
############################
|
||||
|
||||
# Configuración adicional para Raspberry Pi
|
||||
bash -c "$(curl -fsSLk 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
|
||||
|
||||
# Habilitar servicio gotty
|
||||
sudo systemctl enable gotty.service
|
||||
|
||||
# Ajustar configuración de Jitter
|
||||
find /opt/ -type f -exec sed -i "s|Jitter=.*|Jitter=240|g" {} +
|
||||
#############################################################################################################################
|
||||
|
||||
# Crear script de finalización
|
||||
cat > /tmp/completado.sh <<- "EOF"
|
||||
#!/bin/bash
|
||||
while : ; do
|
||||
choix=$(whiptail --title "Raspbian Proyect HP3ICC Esteban Mackay 73." --menu " Precione enter (return o intro) para finalizar la instalacion y reiniciar" 11 85 3 \
|
||||
1 " Iniciar Reinicio de equipo " 3>&1 1>&2 2>&3)
|
||||
exitstatus=$?
|
||||
#on recupere ce choix
|
||||
#exitstatus=$?
|
||||
if [ $exitstatus = 0 ]; then
|
||||
echo "Your chosen option:" $choix
|
||||
else
|
||||
echo "You chose cancel."; break;
|
||||
fi
|
||||
# case : action en fonction du choix
|
||||
case $choix in
|
||||
1)
|
||||
sudo reboot
|
||||
|
|
@ -254,15 +214,14 @@ esac
|
|||
done
|
||||
exit 0
|
||||
EOF
|
||||
###
|
||||
##############################
|
||||
|
||||
# Crear archivo de versión
|
||||
cat > /opt/emq-ver <<- "EOF"
|
||||
EMQ-VER: 24.12.13
|
||||
EMQ-VER: 25.01.28
|
||||
EOF
|
||||
##############################
|
||||
|
||||
# Ejecutar menú principal
|
||||
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/menu/menu)"
|
||||
sudo chmod +x /tmp/completado.sh
|
||||
history -c && history -w
|
||||
sh /tmp/completado.sh
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -3,22 +3,26 @@ SCRIPT_NAME="app.sh"
|
|||
|
||||
# Registra el inicio en /opt/curl.txt
|
||||
echo "Inicio: $SCRIPT_NAME" >> /opt/curl.txt
|
||||
apps=("sudo" "curl" "git" "make" "build-essential" "cmake" "python3-pip" "python3-websockets" "python3-argon2" "python3-aiohttp" "python3-aiohttp-session" "python3-venv")
|
||||
apps="sudo curl git make build-essential cmake python3-pip python3-websockets python3-argon2 python3-aiohttp python3-aiohttp-session python3-venv"
|
||||
|
||||
# Función para verificar e instalar una aplicación
|
||||
check_and_install() {
|
||||
app=$1
|
||||
if ! dpkg -s $app 2>/dev/null | grep -q "Status: install ok installed"; then
|
||||
echo "$app no está instalado. Instalando..."
|
||||
sudo apt-get install -y $app
|
||||
echo "$app instalado correctamente."
|
||||
DEBIAN_FRONTEND=noninteractive apt-get install -y $app || true
|
||||
if dpkg -s $app 2>/dev/null | grep -q "Status: install ok installed"; then
|
||||
echo "$app instalado correctamente."
|
||||
else
|
||||
echo "No se pudo instalar $app. Continuando con la siguiente aplicación..."
|
||||
fi
|
||||
else
|
||||
echo "$app ya está instalado."
|
||||
fi
|
||||
}
|
||||
|
||||
# Verificar e instalar cada aplicación
|
||||
for app in "${apps[@]}"; do
|
||||
for app in $apps; do
|
||||
check_and_install $app
|
||||
done
|
||||
|
||||
|
|
|
|||
|
|
@ -3,8 +3,8 @@ SCRIPT_NAME="asl-wizard.sh"
|
|||
|
||||
# Registra el inicio en /opt/curl.txt
|
||||
echo "Inicio: $SCRIPT_NAME" >> /opt/curl.txt
|
||||
if [ "$EUID" -ne 0 ]; then
|
||||
echo "Este script debe ejecutarse como root."
|
||||
if [ $EUID -ne 0 ]; then
|
||||
whiptail --title "sudo su" --msgbox "requiere ser usuario root , escriba (sudo su) antes de entrar a menu / requires root user, type (sudo su) before entering menu" 0 50
|
||||
exit 1
|
||||
fi
|
||||
# REPO DVS
|
||||
|
|
@ -147,15 +147,16 @@ if [[ -f /etc/debian_version ]]; then
|
|||
fi
|
||||
fi
|
||||
#USER99
|
||||
# Lista de servicios a reiniciar
|
||||
servicios=("md380-emu99.service" "analog_bridge99.service" "mmdvm_bridge99.service" "md380-emu.service" "analog_bridge.service" "mmdvm_bridge.service")
|
||||
# Lista de servicios a reiniciar (separados por espacios)
|
||||
servicios="md380-emu99.service analog_bridge99.service mmdvm_bridge99.service md380-emu.service analog_bridge.service mmdvm_bridge.service"
|
||||
|
||||
# Recorre la lista de servicios y verifica si están activos
|
||||
for servicio in "${servicios[@]}"; do
|
||||
for servicio in $servicios; do
|
||||
if systemctl list-units --all | grep -q "$servicio"; then
|
||||
if systemctl is-active "$servicio" >/dev/null 2>&1; then
|
||||
echo "Deteniendo y deshabilitando $servicio"
|
||||
systemctl stop "$servicio"
|
||||
# systemctl disable "$servicio"
|
||||
# systemctl disable "$servicio"
|
||||
else
|
||||
echo "$servicio ya está detenido"
|
||||
fi
|
||||
|
|
@ -269,16 +270,17 @@ pass=a2b2c2d2e2
|
|||
|
||||
EOFX
|
||||
fi
|
||||
servicios=("md380-emu99.service" "analog_bridge99.service" "mmdvm_bridge99.service" "md380-emu.service" "analog_bridge.service" "mmdvm_bridge.service")
|
||||
# Lista de servicios separados por espacios
|
||||
servicios="md380-emu99.service analog_bridge99.service mmdvm_bridge99.service md380-emu.service analog_bridge.service mmdvm_bridge.service"
|
||||
|
||||
# Recorre la lista de servicios y verifica si están activos
|
||||
for servicio in "${servicios[@]}"; do
|
||||
for servicio in $servicios; do
|
||||
if systemctl list-units --all | grep -q "$servicio"; then
|
||||
if systemctl is-enabled "$servicio" >/dev/null 2>&1; then
|
||||
if ! systemctl is-active "$servicio" >/dev/null 2>&1; then
|
||||
echo "Iniciando $servicio"
|
||||
systemctl start "$servicio"
|
||||
fi
|
||||
echo "Iniciando $servicio"
|
||||
systemctl start "$servicio"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
echo "$servicio no existe"
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
#!/bin/sh
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
whiptail --title "Docker Install" --msgbox "Debe ejecutar este script como usuario ROOT" 0 50
|
||||
exit 0
|
||||
if [ $EUID -ne 0 ]; then
|
||||
whiptail --title "sudo su" --msgbox "requiere ser usuario root , escriba (sudo su) antes de entrar a menu / requires root user, type (sudo su) before entering menu" 0 50
|
||||
exit 1
|
||||
fi
|
||||
(crontab -l | grep -v "sync ; echo 3 > /proc/sys/vm/drop_caches >/dev/null 2>&1") | crontab -
|
||||
#!/bin/bash
|
||||
|
|
|
|||
|
|
@ -5,28 +5,32 @@ SCRIPT_NAME="p25.sh"
|
|||
# Registra el inicio en /opt/curl.txt
|
||||
echo "Inicio: $SCRIPT_NAME" >> /opt/curl.txt
|
||||
# Verificar si el usuario tiene permisos de root
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
echo "Este script debe ejecutarse como usuario ROOT"
|
||||
if [ $EUID -ne 0 ]; then
|
||||
whiptail --title "sudo su" --msgbox "requiere ser usuario root , escriba (sudo su) antes de entrar a menu / requires root user, type (sudo su) before entering menu" 0 50
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Lista de aplicaciones para verificar e instalar
|
||||
apps=("sudo" "curl" "git" "make" "build-essential" "python" "python3" "python3-pip" "chkconfig" "git-core" "lm-sensors" "python3-websockets" "python3-psutil" "wget" "python3-dev" "python3-venv" "libffi-dev" "libssl-dev" "cargo" "pkg-config" "sed" "default-libmysqlclient-dev" "libmysqlclient-dev" "build-essential" "zip" "unzip" "python3-distutils" "python3-twisted" "python3-bitarray" "rrdtool" "openssl" "wavemon" "gcc" "g++" "cmake" "php")
|
||||
apps="sudo curl git make build-essential python python3 python3-pip chkconfig git-core lm-sensors python3-websockets python3-psutil wget python3-dev python3-venv libffi-dev libssl-dev cargo pkg-config sed default-libmysqlclient-dev libmysqlclient-dev build-essential zip unzip python3-distutils python3-twisted python3-bitarray rrdtool openssl wavemon gcc g++ cmake php"
|
||||
|
||||
# Función para verificar e instalar una aplicación
|
||||
check_and_install() {
|
||||
app=$1
|
||||
if ! dpkg -s $app 2>/dev/null | grep -q "Status: install ok installed"; then
|
||||
echo "$app no está instalado. Instalando..."
|
||||
sudo apt-get install -y $app
|
||||
echo "$app instalado correctamente."
|
||||
DEBIAN_FRONTEND=noninteractive apt-get install -y $app || true
|
||||
if dpkg -s $app 2>/dev/null | grep -q "Status: install ok installed"; then
|
||||
echo "$app instalado correctamente."
|
||||
else
|
||||
echo "No se pudo instalar $app. Continuando con la siguiente aplicación..."
|
||||
fi
|
||||
else
|
||||
echo "$app ya está instalado."
|
||||
fi
|
||||
}
|
||||
|
||||
# Verificar e instalar cada aplicación
|
||||
for app in "${apps[@]}"; do
|
||||
for app in $apps; do
|
||||
check_and_install $app
|
||||
done
|
||||
#
|
||||
|
|
|
|||
|
|
@ -3,8 +3,8 @@ SCRIPT_NAME="p25cross.sh"
|
|||
|
||||
# Registra el inicio en /opt/curl.txt
|
||||
echo "Inicio: $SCRIPT_NAME" >> /opt/curl.txt
|
||||
if [ "$EUID" -ne 0 ]; then
|
||||
echo "Este script debe ejecutarse como root."
|
||||
if [ $EUID -ne 0 ]; then
|
||||
whiptail --title "sudo su" --msgbox "requiere ser usuario root , escriba (sudo su) antes de entrar a menu / requires root user, type (sudo su) before entering menu" 0 50
|
||||
exit 1
|
||||
fi
|
||||
# REPO DVS
|
||||
|
|
|
|||
|
|
@ -17,9 +17,11 @@ then
|
|||
rm -r /var/www/dvs
|
||||
fi
|
||||
mkdir /var/www/dvs
|
||||
SERVICIOS=("http.server-dvs.service")
|
||||
# Lista de servicios (separados por espacios)
|
||||
SERVICIOS="http.server-dvs.service"
|
||||
|
||||
for servicio in "${SERVICIOS[@]}"; do
|
||||
# Recorre la lista de servicios
|
||||
for servicio in $SERVICIOS; do
|
||||
# Verificar si el servicio existe
|
||||
if systemctl list-unit-files --type=service | grep -q "^$servicio "; then
|
||||
echo "El servicio $servicio existe."
|
||||
|
|
|
|||
|
|
@ -4,16 +4,10 @@ SCRIPT_NAME="xlx.sh"
|
|||
|
||||
# Registra el inicio en /opt/curl.txt
|
||||
echo "Inicio: $SCRIPT_NAME" >> /opt/curl.txt
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
whiptail --title "sudo su" --msgbox "requiere ser usuario root , escriba (sudo su) antes de entrar a menu / requires root user, type (sudo su) before entering menu" 0 50
|
||||
exit 0
|
||||
fi
|
||||
WHO=$(whoami)
|
||||
if [ "$WHO" != "root" ]
|
||||
then
|
||||
echo ""
|
||||
echo "You Must be root to run this script!!"
|
||||
exit 0
|
||||
# Verificar si el usuario tiene permisos de root
|
||||
if [ $EUID -ne 0 ]; then
|
||||
whiptail --title "sudo su" --msgbox "requiere ser usuario root , escriba (sudo su) antes de entrar a menu / requires root user, type (sudo su) before entering menu" 0 50
|
||||
exit 1
|
||||
fi
|
||||
if [ ! -e "/etc/debian_version" ]
|
||||
then
|
||||
|
|
|
|||
|
|
@ -5,8 +5,8 @@ SCRIPT_NAME="YSFReflector.sh"
|
|||
# Registra el inicio en /opt/curl.txt
|
||||
echo "Inicio: $SCRIPT_NAME" >> /opt/curl.txt
|
||||
# Verificar si el usuario tiene permisos de root
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
echo "Este script debe ejecutarse como usuario ROOT"
|
||||
if [ $EUID -ne 0 ]; then
|
||||
whiptail --title "sudo su" --msgbox "requiere ser usuario root , escriba (sudo su) antes de entrar a menu / requires root user, type (sudo su) before entering menu" 0 50
|
||||
exit 1
|
||||
fi
|
||||
# Lista de aplicaciones para verificar e instalar
|
||||
|
|
|
|||
24
menu/menu
24
menu/menu
|
|
@ -3,9 +3,9 @@
|
|||
if [ ! "$(cat /proc/cpuinfo | grep 'Raspberry')" != "" ]; then
|
||||
sudo cat > /bin/menu <<- "EOFX2"
|
||||
#!/bin/bash
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
whiptail --title "sudo su" --msgbox "Se requieren privilegios de superusuario. Ejecute 'sudo su' antes de ingresar al menú." 0 50
|
||||
exit 0
|
||||
if [ $EUID -ne 0 ]; then
|
||||
whiptail --title "sudo su" --msgbox "requiere ser usuario root , escriba (sudo su) antes de entrar a menu / requires root user, type (sudo su) before entering menu" 0 50
|
||||
exit 1
|
||||
fi
|
||||
while : ; do
|
||||
choix=$(whiptail --title "Proyecto emq-TE1+ Rev: R00ab / Scrip Proyect by HP3ICC 73." --menu "Suba o Baje con las flechas del teclado y seleccione el número de opción:" 22 75 13 \
|
||||
|
|
@ -129,9 +129,9 @@ if [ ! "$(cat /proc/cpuinfo | grep 'Raspberry')" != "" ]; then
|
|||
if [ -d "/etc/asterisk" ]; then
|
||||
sudo cat > /bin/menu <<- "EOFX2"
|
||||
#!/bin/bash
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
whiptail --title "sudo su" --msgbox "Se requieren privilegios de superusuario. Ejecute 'sudo su' antes de ingresar al menú." 0 50
|
||||
exit 0
|
||||
if [ $EUID -ne 0 ]; then
|
||||
whiptail --title "sudo su" --msgbox "requiere ser usuario root , escriba (sudo su) antes de entrar a menu / requires root user, type (sudo su) before entering menu" 0 50
|
||||
exit 1
|
||||
fi
|
||||
while : ; do
|
||||
choix=$(whiptail --title "Proyecto emq-TE1+ Rev: R00ab / Scrip Proyect by HP3ICC 73." --menu "Suba o Baje con las flechas del teclado y seleccione el número de opción:" 22 75 13 \
|
||||
|
|
@ -258,9 +258,9 @@ fi
|
|||
if [ "$(cat /proc/cpuinfo | grep 'Raspberry')" != "" ]; then
|
||||
sudo cat > /bin/menu <<- "EOFX1"
|
||||
#!/bin/bash
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
whiptail --title "sudo su" --msgbox "Se requieren privilegios de superusuario. Ejecute 'sudo su' antes de ingresar al menú." 0 50
|
||||
exit 0
|
||||
if [ $EUID -ne 0 ]; then
|
||||
whiptail --title "sudo su" --msgbox "requiere ser usuario root , escriba (sudo su) antes de entrar a menu / requires root user, type (sudo su) before entering menu" 0 50
|
||||
exit 1
|
||||
fi
|
||||
while : ; do
|
||||
choix=$(whiptail --title "Proyecto emq-TE1+ Rev: R00ab / Scrip Proyect by HP3ICC 73." --menu "Suba o Baje con las flechas del teclado y seleccione el número de opción:" 22 75 13 \
|
||||
|
|
@ -387,9 +387,9 @@ if [ "$(cat /proc/cpuinfo | grep 'Raspberry')" != "" ]; then
|
|||
if [ -d "/etc/asterisk" ]; then
|
||||
sudo cat > /bin/menu <<- "EOFX1"
|
||||
#!/bin/bash
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
whiptail --title "sudo su" --msgbox "Se requieren privilegios de superusuario. Ejecute 'sudo su' antes de ingresar al menú." 0 50
|
||||
exit 0
|
||||
if [ $EUID -ne 0 ]; then
|
||||
whiptail --title "sudo su" --msgbox "requiere ser usuario root , escriba (sudo su) antes de entrar a menu / requires root user, type (sudo su) before entering menu" 0 50
|
||||
exit 1
|
||||
fi
|
||||
while : ; do
|
||||
choix=$(whiptail --title "Proyecto emq-TE1+ Rev: R00ab / Scrip Proyect by HP3ICC 73." --menu "Suba o Baje con las flechas del teclado y seleccione el número de opción:" 22 75 13 \
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
#!/bin/bash
|
||||
cat > /bin/menu-asl <<- "EOF"
|
||||
#!/bin/bash
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
whiptail --title "root" --msgbox "Cambie a usuario root / Change to user root" 0 50
|
||||
exit 0
|
||||
if [ $EUID -ne 0 ]; then
|
||||
whiptail --title "sudo su" --msgbox "requiere ser usuario root , escriba (sudo su) antes de entrar a menu / requires root user, type (sudo su) before entering menu" 0 50
|
||||
exit 1
|
||||
fi
|
||||
if ! [ -d "/etc/asterisk" ]; then
|
||||
whiptail --title "Easy-ASL" --msgbox "AllStarLink not Found / AllStarLink no instalado" 0 50
|
||||
|
|
@ -44,9 +44,9 @@ EOF
|
|||
if [ -d "/etc/nginx" ]; then
|
||||
cat > /bin/menu-asl <<- "EOF"
|
||||
#!/bin/bash
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
whiptail --title "root" --msgbox "Cambie a usuario root / Change to user root" 0 50
|
||||
exit 0
|
||||
if [ $EUID -ne 0 ]; then
|
||||
whiptail --title "sudo su" --msgbox "requiere ser usuario root , escriba (sudo su) antes de entrar a menu / requires root user, type (sudo su) before entering menu" 0 50
|
||||
exit 1
|
||||
fi
|
||||
if ! [ -d "/etc/asterisk" ]; then
|
||||
whiptail --title "Easy-ASL" --msgbox "AllStarLink not Found / AllStarLink no instalado" 0 50
|
||||
|
|
@ -90,9 +90,9 @@ exit 0
|
|||
EOF
|
||||
cat > /bin/menu-allmon3 <<- "EOFA"
|
||||
#!/bin/bash
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
whiptail --title "root" --msgbox "Cambie a usuario root / Change to user root" 0 50
|
||||
exit 0
|
||||
if [ $EUID -ne 0 ]; then
|
||||
whiptail --title "sudo su" --msgbox "requiere ser usuario root , escriba (sudo su) antes de entrar a menu / requires root user, type (sudo su) before entering menu" 0 50
|
||||
exit 1
|
||||
fi
|
||||
if ! [ -d "/etc/asterisk" ]; then
|
||||
whiptail --title "Easy-ASL" --msgbox "AllStarLink not Found / AllStarLink no instalado" 0 50
|
||||
|
|
@ -515,9 +515,9 @@ EOF
|
|||
fi
|
||||
cat > /bin/menu-asle <<- "EOF"
|
||||
#!/bin/bash
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
whiptail --title "root" --msgbox "Cambie a usuario root / Change to user root" 0 50
|
||||
exit 0
|
||||
if [ $EUID -ne 0 ]; then
|
||||
whiptail --title "sudo su" --msgbox "requiere ser usuario root , escriba (sudo su) antes de entrar a menu / requires root user, type (sudo su) before entering menu" 0 50
|
||||
exit 1
|
||||
fi
|
||||
if ! [ -d "/etc/asterisk" ]; then
|
||||
whiptail --title "Easy-ASL" --msgbox "AllStarLink not Found / AllStarLink no instalado" 0 50
|
||||
|
|
@ -889,9 +889,9 @@ EOF
|
|||
#############################################################
|
||||
cat > /bin/menu-aslb <<- "EOF"
|
||||
#!/bin/bash
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
whiptail --title "root" --msgbox "Cambie a usuario root / Change to user root" 0 50
|
||||
exit 0
|
||||
if [ $EUID -ne 0 ]; then
|
||||
whiptail --title "sudo su" --msgbox "requiere ser usuario root , escriba (sudo su) antes de entrar a menu / requires root user, type (sudo su) before entering menu" 0 50
|
||||
exit 1
|
||||
fi
|
||||
if ! [ -d "/etc/asterisk" ]; then
|
||||
whiptail --title "Easy-ASL" --msgbox "AllStarLink not Found / AllStarLink no instalado" 0 50
|
||||
|
|
@ -917,12 +917,14 @@ fi
|
|||
case $choix in
|
||||
1)
|
||||
# Lista de servicios a reiniciar
|
||||
servicios=("mmdvm_bridge99.service" "analog_bridge99.service" "md380-emu99.service")
|
||||
# Lista de servicios
|
||||
servicios="mmdvm_bridge99.service analog_bridge99.service md380-emu99.service"
|
||||
|
||||
# Recorre la lista de servicios y verifica si están activos
|
||||
for servicio in "${servicios[@]}"; do
|
||||
if systemctl status "$servicio" | grep "service; enabled;" >/dev/null 2>&1; then
|
||||
echo "stop $servicio"
|
||||
for servicio in $servicios; do
|
||||
# Verifica si el servicio está activo y habilitado
|
||||
if systemctl is-active --quiet "$servicio" && systemctl is-enabled --quiet "$servicio"; then
|
||||
echo "Deteniendo y deshabilitando $servicio"
|
||||
systemctl disable "$servicio"
|
||||
systemctl stop "$servicio"
|
||||
fi
|
||||
|
|
@ -1017,36 +1019,41 @@ done
|
|||
rm -f /tmp/mcall.txt /tmp/mid.txt /tmp/sbridge.txt /tmp/sport.txt /tmp/sopti.txt /tmp/midg.txt /tmp/spass.txt /tmp/did.txt
|
||||
|
||||
# Lista de servicios a reiniciar
|
||||
servicios=("mmdvm_bridge99.service" "analog_bridge99.service" "md380-emu99.service")
|
||||
# Lista de servicios (sin usar paréntesis)
|
||||
servicios="mmdvm_bridge99.service analog_bridge99.service md380-emu99.service"
|
||||
|
||||
# Recorre la lista de servicios y verifica si están activos
|
||||
for servicio in "${servicios[@]}"; do
|
||||
if systemctl status "$servicio" | grep "service; enabled;" >/dev/null 2>&1; then
|
||||
echo "restart $servicio"
|
||||
systemctl stop "$servicio"
|
||||
# Función para manejar el servicio
|
||||
manejar_servicio() {
|
||||
local servicio="$1"
|
||||
if systemctl is-active --quiet "$servicio"; then
|
||||
echo "Reiniciando $servicio"
|
||||
systemctl restart "$servicio"
|
||||
else
|
||||
echo "Iniciando y habilitando $servicio"
|
||||
systemctl start "$servicio"
|
||||
else
|
||||
echo "start $servicio"
|
||||
systemctl stop "$servicio"
|
||||
systemctl start "$servicio"
|
||||
systemctl enable "$servicio"
|
||||
systemctl enable --now "$servicio" # Habilita e inicia el servicio en un solo comando
|
||||
fi
|
||||
}
|
||||
|
||||
# Recorre la lista de servicios
|
||||
for servicio in $servicios; do
|
||||
manejar_servicio "$servicio"
|
||||
done
|
||||
whiptail --title "Easy setup ASL-Bridge-DMR" --msgbox "Configuracion finalizada" 0 50
|
||||
|
||||
;;
|
||||
2)
|
||||
# Lista de servicios a reiniciar
|
||||
servicios=("mmdvm_bridge99.service" "analog_bridge99.service" "md380-emu99.service")
|
||||
servicios="mmdvm_bridge99.service analog_bridge99.service md380-emu99.service"
|
||||
|
||||
# Recorre la lista de servicios y verifica si están activos
|
||||
for servicio in "${servicios[@]}"; do
|
||||
for servicio in $servicios; do
|
||||
if systemctl status "$servicio" | grep "service; enabled;" >/dev/null 2>&1; then
|
||||
echo "restart $servicio"
|
||||
systemctl stop "$servicio"
|
||||
systemctl start "$servicio"
|
||||
else
|
||||
echo "start $servicio"
|
||||
else
|
||||
echo "start $servicio"
|
||||
systemctl stop "$servicio"
|
||||
systemctl start "$servicio"
|
||||
systemctl enable "$servicio"
|
||||
|
|
@ -1055,10 +1062,10 @@ done
|
|||
;;
|
||||
3)
|
||||
# Lista de servicios a reiniciar
|
||||
servicios=("mmdvm_bridge99.service" "analog_bridge99.service" "md380-emu99.service")
|
||||
servicios="mmdvm_bridge99.service analog_bridge99.service md380-emu99.service"
|
||||
|
||||
# Recorre la lista de servicios y verifica si están activos
|
||||
for servicio in "${servicios[@]}"; do
|
||||
for servicio in $servicios; do
|
||||
if systemctl status "$servicio" | grep "service; enabled;" >/dev/null 2>&1; then
|
||||
echo "stop $servicio"
|
||||
systemctl disable "$servicio"
|
||||
|
|
@ -1070,10 +1077,10 @@ done
|
|||
nano /opt/user99/MMDVM_Bridge.ini ;;
|
||||
5)
|
||||
# Lista de servicios a reiniciar
|
||||
servicios=("mmdvm_bridge99.service" "analog_bridge99.service" "md380-emu99.service")
|
||||
servicios="mmdvm_bridge99.service analog_bridge99.service md380-emu99.service"
|
||||
|
||||
# Recorre la lista de servicios y verifica si están activos
|
||||
for servicio in "${servicios[@]}"; do
|
||||
for servicio in $servicios; do
|
||||
if systemctl status "$servicio" | grep "service; enabled;" >/dev/null 2>&1; then
|
||||
echo "stop $servicio"
|
||||
systemctl disable "$servicio"
|
||||
|
|
|
|||
|
|
@ -100,11 +100,11 @@ if [ -f "/etc/nginx/sites-enabled/000" ]; then
|
|||
rm /etc/nginx/sites-enabled/000
|
||||
fi
|
||||
sudo systemctl restart nginx
|
||||
servicios=("fdmr_mon" "fdmr_mon2")
|
||||
servicios="fdmr_mon fdmr_mon2"
|
||||
|
||||
# Recorre la lista de servicios y verifica si están activos
|
||||
for servicio in "${servicios[@]}"; do
|
||||
if systemctl status "$servicio" | grep "service; enabled;" >/dev/null 2>&1; then
|
||||
for servicio in $servicios; do
|
||||
if systemctl is-enabled "$servicio" | grep "enabled" >/dev/null 2>&1; then
|
||||
echo "stop $servicio"
|
||||
sudo systemctl disable "$servicio"
|
||||
sudo systemctl stop "$servicio"
|
||||
|
|
@ -304,11 +304,11 @@ if [ -f "/etc/nginx/sites-enabled/000" ]; then
|
|||
rm /etc/nginx/sites-enabled/000
|
||||
fi
|
||||
sudo systemctl restart nginx
|
||||
servicios=("fdmr_mon" "fdmr_mon2")
|
||||
servicios="fdmr_mon fdmr_mon2"
|
||||
|
||||
# Recorre la lista de servicios y verifica si están activos
|
||||
for servicio in "${servicios[@]}"; do
|
||||
if systemctl status "$servicio" | grep "service; enabled;" >/dev/null 2>&1; then
|
||||
for servicio in $servicios; do
|
||||
if systemctl is-enabled "$servicio" | grep "enabled" >/dev/null 2>&1; then
|
||||
echo "stop $servicio"
|
||||
sudo systemctl disable "$servicio"
|
||||
sudo systemctl stop "$servicio"
|
||||
|
|
|
|||
|
|
@ -16,9 +16,9 @@ EOFX
|
|||
fi
|
||||
sudo cat > /bin/menu-fdmr-b <<- "EOF"
|
||||
#!/bin/bash
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
whiptail --title "sudo su" --msgbox "requiere ser usuario root , escriba (sudo su) antes de entrar a menu / requires root user, type (sudo su) before entering menu" 0 50
|
||||
exit 0
|
||||
if [ $EUID -ne 0 ]; then
|
||||
whiptail --title "sudo su" --msgbox "requiere ser usuario root , escriba (sudo su) antes de entrar a menu / requires root user, type (sudo su) before entering menu" 0 50
|
||||
exit 1
|
||||
fi
|
||||
while : ; do
|
||||
choix=$(whiptail --title "Raspbian Proyect HP3ICC FreeDMR-Bridge" --menu "move up or down with the keyboard arrows and select your option by pressing enter:" 23 56 13 \
|
||||
|
|
|
|||
|
|
@ -145,12 +145,10 @@ then
|
|||
fi
|
||||
;;
|
||||
7)
|
||||
#!/bin/bash
|
||||
|
||||
servicios=("mmdvmh.service" "dmrgw.service" "ysfgw.service" "ysf2dmrgw.service")
|
||||
servicios="mmdvmh.service dmrgw.service ysfgw.service ysf2dmrgw.service"
|
||||
|
||||
# Recorre la lista de servicios y deshabilita y detiene sin enviar mensaje
|
||||
for servicio in "${servicios[@]}"; do
|
||||
for servicio in $servicios; do
|
||||
sudo systemctl disable --quiet "$servicio"
|
||||
sudo systemctl stop --quiet "$servicio"
|
||||
done
|
||||
|
|
|
|||
|
|
@ -193,10 +193,10 @@ fi ;;
|
|||
/usr/bin/python3 /opt/data-mmdvm.py
|
||||
|
||||
# Lista de servicios a reiniciar
|
||||
servicios=("P25Reflector.service" "md380-emuP25b.service" "analog_bridge1.service" "analog_bridge2.service" "mmdvm_bridgeP25b.service" "p25gatewayP25b.service")
|
||||
servicios="P25Reflector.service md380-emuP25b.service analog_bridge1.service analog_bridge2.service mmdvm_bridgeP25b.service p25gatewayP25b.service"
|
||||
|
||||
# Recorre la lista de servicios y verifica si están activos
|
||||
for servicio in "${servicios[@]}"; do
|
||||
for servicio in $servicios; do
|
||||
if systemctl status "$servicio" | grep "Active: active" >/dev/null 2>&1; then
|
||||
echo "Reiniciando el servicio $servicio"
|
||||
sudo systemctl stop "$servicio"
|
||||
|
|
@ -396,42 +396,37 @@ case $choix in
|
|||
|
||||
rm -f /tmp/mcall.txt /tmp/mid.txt /tmp/p25id.txt /tmp/sbridge.txt /tmp/sport.txt /tmp/sopti.txt /tmp/midg.txt /tmp/spass.txt
|
||||
python3 /opt/data-mmdvm.py
|
||||
#!/bin/bash
|
||||
|
||||
# Lista de servicios a reiniciar
|
||||
servicios=("md380-emuP25b.service" "analog_bridge1.service" "analog_bridge2.service" "mmdvm_bridgeP25b.service" "p25gatewayP25b.service")
|
||||
servicios="md380-emuP25b.service analog_bridge1.service analog_bridge2.service mmdvm_bridgeP25b.service p25gatewayP25b.service"
|
||||
|
||||
# Recorre la lista de servicios y verifica si están activos
|
||||
for servicio in "${servicios[@]}"; do
|
||||
for servicio in $servicios; do
|
||||
if systemctl status "$servicio" | grep "service; enabled;" >/dev/null 2>&1; then
|
||||
echo "restart $servicio"
|
||||
sudo systemctl stop "$servicio"
|
||||
sudo systemctl start "$servicio"
|
||||
else
|
||||
echo "start $servicio"
|
||||
else
|
||||
echo "start $servicio"
|
||||
sudo systemctl stop "$servicio"
|
||||
sudo systemctl start "$servicio"
|
||||
sudo systemctl enable "$servicio"
|
||||
fi
|
||||
done
|
||||
whiptail --title "Easy setup P25Bridge" --msgbox "Configuracion finalizada" 0 50
|
||||
|
||||
;;
|
||||
2)
|
||||
python3 /opt/data-mmdvm.py
|
||||
#!/bin/bash
|
||||
|
||||
# Lista de servicios a reiniciar
|
||||
servicios=("md380-emuP25b.service" "analog_bridge1.service" "analog_bridge2.service" "mmdvm_bridgeP25b.service" "p25gatewayP25b.service")
|
||||
servicios="md380-emuP25b.service analog_bridge1.service analog_bridge2.service mmdvm_bridgeP25b.service p25gatewayP25b.service"
|
||||
|
||||
# Recorre la lista de servicios y verifica si están activos
|
||||
for servicio in "${servicios[@]}"; do
|
||||
for servicio in $servicios; do
|
||||
if systemctl status "$servicio" | grep "service; enabled;" >/dev/null 2>&1; then
|
||||
echo "restart $servicio"
|
||||
sudo systemctl stop "$servicio"
|
||||
sudo systemctl start "$servicio"
|
||||
else
|
||||
echo "start $servicio"
|
||||
else
|
||||
echo "start $servicio"
|
||||
sudo systemctl stop "$servicio"
|
||||
sudo systemctl start "$servicio"
|
||||
sudo systemctl enable "$servicio"
|
||||
|
|
@ -439,13 +434,11 @@ for servicio in "${servicios[@]}"; do
|
|||
done
|
||||
;;
|
||||
3)
|
||||
#!/bin/bash
|
||||
|
||||
# Lista de servicios a reiniciar
|
||||
servicios=("md380-emuP25b.service" "analog_bridge1.service" "analog_bridge2.service" "mmdvm_bridgeP25b.service" "p25gatewayP25b.service")
|
||||
servicios="md380-emuP25b.service analog_bridge1.service analog_bridge2.service mmdvm_bridgeP25b.service p25gatewayP25b.service"
|
||||
|
||||
# Recorre la lista de servicios y verifica si están activos
|
||||
for servicio in "${servicios[@]}"; do
|
||||
for servicio in $servicios; do
|
||||
if systemctl status "$servicio" | grep "service; enabled;" >/dev/null 2>&1; then
|
||||
echo "stop $servicio"
|
||||
sudo systemctl disable "$servicio"
|
||||
|
|
@ -460,14 +453,12 @@ sudo nano /opt/p25bridge/P25Gateway.ini ;;
|
|||
6)
|
||||
sudo nano /opt/p25bridge/MMDVM_Bridge.ini ;;
|
||||
7)
|
||||
#!/bin/bash
|
||||
|
||||
# Lista de servicios a reiniciar
|
||||
servicios=("md380-emuP25b.service" "analog_bridge1.service" "analog_bridge2.service" "mmdvm_bridgeP25b.service" "p25gatewayP25b.service")
|
||||
servicios="md380-emuP25b.service analog_bridge1.service analog_bridge2.service mmdvm_bridgeP25b.service p25gatewayP25b.service"
|
||||
|
||||
# Recorre la lista de servicios y verifica si están activos
|
||||
for servicio in "${servicios[@]}"; do
|
||||
if systemctl status "$servicio" | grep "service; enabled;" >/dev/null 2>&1; then
|
||||
for servicio in $servicios; do
|
||||
if systemctl is-enabled "$servicio" | grep "enabled" >/dev/null 2>&1; then
|
||||
echo "stop $servicio"
|
||||
sudo systemctl disable "$servicio"
|
||||
sudo systemctl stop "$servicio"
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
#!/bin/bash
|
||||
sudo cat > /bin/menu-ysf2ysf <<- "EOF"
|
||||
#!/bin/bash
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
whiptail --title "sudo su" --msgbox "requiere ser usuario root , escriba (sudo su) antes de entrar a menu / requires root user, type (sudo su) before entering menu" 0 50
|
||||
exit 0
|
||||
if [ $EUID -ne 0 ]; then
|
||||
whiptail --title "sudo su" --msgbox "requiere ser usuario root , escriba (sudo su) antes de entrar a menu / requires root user, type (sudo su) before entering menu" 0 50
|
||||
exit 1
|
||||
fi
|
||||
|
||||
while : ; do
|
||||
|
|
|
|||
Loading…
Reference in New Issue