#!/bin/bash # DESC: actualizaciones y descargas para kali # Colores RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' NC='\033[0m' function actualizar_repos() { echo -e "${YELLOW}Actualizando lista de paquetes (apt update)...${NC}" sudo apt update echo -e "${GREEN}Repositorios actualizados.${NC}" } function upgrade() { echo -e "${YELLOW}Actualizando paquetes instalados (apt upgrade)...${NC}" sudo apt upgrade -y echo -e "${GREEN}Upgrade completo.${NC}" } function full_upgrade() { echo -e "${YELLOW}Actualizando todo el sistema (apt full-upgrade)...${NC}" sudo apt full-upgrade -y echo -e "${GREEN}Full-upgrade completo.${NC}" } function buscar_paquete() { read -p "Ingrese parte del nombre del paquete a buscar: " nombre if [ -z "$nombre" ]; then echo -e "${RED}No ingresó un texto de búsqueda.${NC}" return fi echo -e "${YELLOW}Buscando paquetes relacionados con '$nombre'...${NC}" apt search "$nombre" } function instalar_paquete() { read -p "Ingrese el nombre del paquete que desea instalar: " paquete if [ -z "$paquete" ]; then echo -e "${RED}No ingresó un nombre de paquete.${NC}" return fi echo -e "${YELLOW}Instalando $paquete...${NC}" sudo apt install -y "$paquete" } function eliminar_paquete() { read -p "Ingrese el nombre del paquete que desea eliminar: " paquete if [ -z "$paquete" ]; then echo -e "${RED}No ingresó un nombre de paquete.${NC}" return fi echo -e "${YELLOW}Eliminando $paquete...${NC}" sudo apt remove -y "$paquete" } function limpiar_sistema() { echo -e "${YELLOW}Limpiando sistema (autoremove + autoclean)...${NC}" sudo apt autoremove -y sudo apt autoclean echo -e "${GREEN}Limpieza completa.${NC}" } function reparar_dependencias() { echo -e "${YELLOW}Revisando y reparando paquetes rotos...${NC}" sudo apt --fix-broken install -y echo -e "${GREEN}Proceso de reparación finalizado.${NC}" } function todo_en_uno() { echo -e "${YELLOW}Ejecutando mantenimiento completo...${NC}" actualizar_repos upgrade full_upgrade limpiar_sistema reparar_dependencias echo -e "${GREEN}Mantenimiento completo finalizado.${NC}" } # Menú principal while true; do echo -e "\n${YELLOW}=== MENU DE MANTENIMIENTO KALI ===${NC}" echo "1) Actualizar lista de paquetes (apt update)" echo "2) Upgrade (apt upgrade)" echo "3) Full Upgrade (apt full-upgrade)" echo "4) Buscar paquete" echo "5) Instalar paquete" echo "6) Eliminar paquete" echo "7) Limpiar sistema" echo "8) Reparar paquetes rotos" echo "9) TODO EN UNO (actualizar + upgrade + full-upgrade + limpiar + reparar)" echo "10) Salir" read -p "Seleccione una opción: " opcion case $opcion in 1) actualizar_repos ;; 2) upgrade ;; 3) full_upgrade ;; 4) buscar_paquete ;; 5) instalar_paquete ;; 6) eliminar_paquete ;; 7) limpiar_sistema ;; 8) reparar_dependencias ;; 9) todo_en_uno ;; 10) echo -e "${GREEN}Saliendo...${NC}"; exit ;; *) echo -e "${RED}Opción no válida.${NC}" ;; esac done