{ "meta": { "title": "Uninstall Optimizations | ProxMenux Documentation", "description": "Restaura los cambios reversibles de post-instalación aplicados por ProxMenux. Las herramientas registradas usan desinstaladores específicos que conservan el estado anterior del host cuando es posible." }, "header": { "title": "Uninstall Optimizations", "description": "Restaura los cambios reversibles realizados por los scripts de post-instalación Automatizado o Personalizable. ProxMenux registra cada optimización compatible con su función de restauración; las actualizaciones de paquetes quedan excluidas deliberadamente.", "section": "Settings post-install Proxmox" }, "intro": { "title": "Por qué existe", "body": "Cada ajuste reversible compatible queda registrado en /usr/local/share/proxmenux/installed_tools.json. Ese registro alimenta el proceso de desinstalación: muestra las optimizaciones activas y ejecuta la función de restauración correspondiente. Las acciones sin una reversión segura, como una actualización completa de paquetes, no se añaden." }, "openMenu": { "heading": "Cómo abrirlo", "body": "Desde el menú principal de ProxMenux, Settings post-install Proxmox → Uninstall optimizations. Verás un checklist de optimizaciones actualmente aplicadas — los items que no has aplicado no aparecen.", "imageAlt": "Checklist de Uninstall Optimizations mostrando los items actualmente aplicados en el host, con checkboxes para seleccionar cuáles revertir" }, "howWorks": { "heading": "Cómo funciona la reversión", "steps": [ { "title": "Registro y autodetección", "body1": "En la primera ejecución, ProxMenux recorre el host buscando archivos huella (p. ej. /etc/sysctl.d/99-memory.conf, /etc/apt/apt.conf.d/99-force-ipv4, paquete haveged instalado, servicio Log2RAM activo…). Cualquier cosa encontrada se añade al registro como reversible, incluso si fue aplicada por una versión antigua de ProxMenux anterior al registro.", "body2": "Esta migración solo se ejecuta una vez. A partir de ahí, cada apply/revert actualiza el registro directamente." }, { "title": "Elige qué revertir", "body1": "El checklist muestra una etiqueta legible por humanos por item (p. ej. Memory Settings Optimization, IOMMU/VFIO PCI Passthrough, Log2RAM (SSD Protection)). Marca las que quieras revertir. Nada que no marques será tocado." }, { "title": "Se ejecuta la reversión", "body1": "Para cada item seleccionado, ProxMenux llama a su función de uninstall correspondiente. La mayoría de las reversiones siguen uno de tres patrones:", "items": [ "Basado en backup — restaura un .bak capturado en el momento de aplicar (bashrc, logrotate.conf, journald.conf, GRUB/kernel cmdline).", "Borrar la config — elimina los /etc/sysctl.d/99-*.conf, /etc/apt/apt.conf.d/99-*, o unit systemd de ProxMenux, y recarga.", "Reinstalación de paquete — para cambios de UI como el banner de suscripción, reinstala los paquetes upstream con --force-confnew para restaurar la configuración distribuida." ], "body2": "Cada reversión registra su progreso. Los items que requieren un reinicio (VFIO, nombres de interfaz persistentes) activan un flag que dispara el prompt de reinicio al final." }, { "title": "Prompt de reinicio al final", "body1": "Al terminar la reversión el menú muestra un prompt de reinicio. Los items que cambiaron parámetros del kernel, módulos del kernel o naming de red (VFIO, nombres de interfaz persistentes) sí necesitan el reinicio para surtir efecto; otros no lo necesitan, y el prompt es un valor por defecto de seguridad más que una comprobación por item." } ] }, "reversible": { "heading": "Qué es reversible", "intro": "Las optimizaciones reversibles registradas y sus desinstaladores correspondientes se agrupan aquí por área:", "groups": [ { "title": "Repositorios y APT", "items": [ { "tool": "Subscription Banner Removal", "restores": "Primero intenta restaurar los archivos de la UI desde los backups propios de ProxMenux (/usr/local/share/proxmenux/backups/proxmoxlib.js.backup.* y, cuando la UI móvil está parcheada, index.html.tpl.backup.*). Solo si un backup falta o está corrupto, cae al reinstalado de pve-manager, proxmox-widget-toolkit, libjs-extjs y libpve-http-server-perl con force-confnew. También limpia las copias .js / .gz cacheadas." }, { "tool": "APT Language Skip", "restores": "Elimina /etc/apt/apt.conf.d/99-disable-translations. APT volverá a descargar paquetes de idioma." }, { "tool": "APT IPv4 Force", "restores": "Elimina /etc/apt/apt.conf.d/99-force-ipv4." }, { "tool": "Utilidades del sistema", "restores": "Purga únicamente los paquetes seleccionados que ProxMenux registró como nuevas instalaciones. Los paquetes que ya existían antes de la acción nunca se añaden a esta lista y permanecen intactos." } ] }, { "title": "Kernel, memoria y límites del sistema", "items": [ { "tool": "Memory Settings", "restores": "Elimina /etc/sysctl.d/99-memory.conf y recarga sysctl." }, { "tool": "Kernel Panic Configuration", "restores": "Elimina /etc/sysctl.d/99-kernelpanic.conf." }, { "tool": "System Limits Increase", "restores": "Elimina /etc/sysctl.d/99-maxwatches.conf, 99-maxkeys.conf, 99-swap.conf, 99-fs.conf y /etc/security/limits.d/99-limits.conf. Revierte los límites PAM y DefaultLimitNOFILE de systemd, y elimina la línea ulimit -n 256000 de /root/.profile." } ] }, { "title": "Red", "items": [ { "tool": "Network Optimizations", "restores": "Elimina /etc/sysctl.d/99-network.conf, 97-proxmenux-fwbr.conf y 98-proxmenux-rpf.conf junto con la unit proxmenux-fwbr-tune.service, el helper /usr/local/sbin/proxmenux-fwbr-tune y la regla /etc/udev/rules.d/99-zz-proxmenux-fwbr-tune.rules. También elimina la línea source /etc/network/interfaces.d/* de /etc/network/interfaces. Recarga sysctl, systemd y el conjunto de reglas udev." }, { "tool": "Open vSwitch", "restores": "Ejecuta apt purge sobre openvswitch-switch y openvswitch-common. Migra cualquier bridge OVS de vuelta a bridges Linux antes de ejecutar este uninstall — si no las VMs sobre esos bridges pierden red en el próximo arranque." }, { "tool": "TCP BBR + TCP Fast Open", "restores": "Elimina /etc/sysctl.d/99-tcp-bbr.conf y 99-tcp-fastopen.conf y recarga sysctl para que el kernel vuelva al control de congestión cubic y a tcp_fastopen=1." }, { "tool": "Persistent Interface Names", "restores": "Elimina solo los archivos 10-proxmenux-*.link que llevan la cabecera de ProxMenux en /etc/systemd/network/. Cualquier archivo .link provisto por otro paquete o escrito por el usuario se mantiene intacto. Los nombres de interfaz vuelven al comportamiento por defecto de systemd en el siguiente reinicio." } ] }, { "title": "Logging", "items": [ { "tool": "Journald Optimization", "restores": "Reescribe /etc/systemd/journald.conf con los valores por defecto vanilla y reinicia systemd-journald." }, { "tool": "Logrotate Optimization", "restores": "Restaura /etc/logrotate.conf desde el archivo .bak capturado antes del cambio." }, { "tool": "Log2RAM", "restores": "Para y desactiva el servicio y el timer. Purga cron jobs, units systemd, binarios, archivos de configuración y el directorio /var/log.hdd. También desinstala el paquete apt si se instaló por esa vía." }, { "tool": "ZFS autotrim", "restores": "Lee /usr/local/share/proxmenux/zfs_autotrim_pools (la lista de pools que ProxMenux realmente cambió) y ejecuta zpool set autotrim=off en cada uno. Los pools en los que tú activaste autotrim manualmente antes de ejecutar ProxMenux no se tocan." } ] }, { "title": "Shell y apariencia", "items": [ { "tool": "Bashrc Customization", "restores": "Restaura /root/.bashrc desde el backup .bak. Si no existe backup, elimina el bloque PMX_CORE_BASHRC por marcadores." }, { "tool": "Banner MOTD personalizado", "restores": "Restaura el contenido original exacto de /etc/motd guardado en /usr/local/share/proxmenux, elimina el archivo si antes no existía o retira de forma segura el marcador antiguo al migrar una instalación anterior." }, { "tool": "Fastfetch", "restores": "Elimina el binario, el directorio de configuración, el hook update-motd y el bloque delimitado BEGIN FASTFETCH / END FASTFETCH de /root/.bashrc, ~/.profile, /etc/profile y /etc/profile.d/fastfetch.sh. Purga el paquete apt si está instalado." }, { "tool": "Figurine", "restores": "Elimina el binario, la entrada en profile.d y el bloque de alias en bashrc/profile." } ] }, { "title": "Hardware y virtualización", "items": [ { "tool": "IOMMU / VFIO", "restores": "Elimina los módulos vfio de /etc/modules, las entradas de blacklist nouveau / radeon / nvidia, y los parámetros intel_iommu=on / amd_iommu=on / iommu=pt / pcie_acs_override de /etc/kernel/cmdline (ZFS) o GRUB. Reconstruye initramfs." }, { "tool": "AMD CPU fixes (Ryzen/EPYC)", "restores": "Elimina idle=nomwait de la cmdline del kernel (ZFS) o GRUB, y las opciones ignore_msrs / report_ignored_msrs de /etc/modprobe.d/kvm.conf." }, { "tool": "QEMU Guest Agent (templates)", "restores": "Lee /usr/local/share/proxmenux/guest_agent.pkg (registrado en tiempo de instalación) y hace apt purge del paquete que se instaló (qemu-guest-agent en hosts estándar, spice-vdagent cuando se usa modo Spice)." } ] }, { "title": "Storage", "items": [ { "tool": "ZFS ARC sizing", "restores": "Elimina /etc/modprobe.d/99-zfsarc.conf, restaura cualquier *.conf externo en conflicto que se dejó apartado en /usr/local/share/proxmenux/backups/zfs_arc/, reconstruye initramfs y ejecuta proxmox-boot-tool refresh en hosts con systemd-boot." }, { "tool": "ZFS auto-snapshot", "restores": "Elimina las entradas cron que el script escribió y ofrece hacer apt purge zfs-auto-snapshot. Los datasets de snapshots existentes en los pools se dejan intactos — bórralos por separado si los quieres fuera." }, { "tool": "vzdump speed limits", "restores": "Restaura /etc/vzdump.conf desde el .bak que creó la instalación, devolviendo bwlimit e ionice a sus valores previos a ProxMenux." } ] }, { "title": "Servicios y extras", "items": [ { "tool": "Time Synchronization", "restores": "Devuelve la zona horaria a UTC (valor por defecto seguro) vía timedatectl." }, { "tool": "Entropy Generation (haveged)", "restores": "Para, desactiva y purga el paquete haveged." }, { "tool": "kexec (fast reboots)", "restores": "Desactiva kexec-pve.service, elimina el archivo de unit y el alias reboot-quick de /root/.bash_profile, purga kexec-tools." }, { "tool": "Desactivación de RPC / rpcbind", "restores": "Restaura rpcbind.service y rpcbind.socket de forma independiente a los estados habilitado o deshabilitado y activo o inactivo registrados antes de aplicar ProxMenux." }, { "tool": "pigz (gzip paralelo)", "restores": "Devuelve /bin/gzip.original a su sitio, elimina /bin/pigzwrapper, revierte las líneas pigz y bwlimit en /etc/vzdump.conf y hace apt purge pigz." }, { "tool": "High Availability services", "restores": "Para y desactiva pve-ha-lrm, pve-ha-crm y corosync. Los grupos HA y las definiciones de recursos existentes no se eliminan — quítalos desde la UI web si ya no los necesitas." }, { "tool": "Ceph repository", "restores": "Purga los paquetes Ceph instalados por esta opción, elimina /etc/apt/sources.list.d/ceph.sources en PVE 9 (o la lista Ceph tradicional en PVE 8) y actualiza la caché de APT." }, { "tool": "OVH RTM (monitoring)", "restores": "Ejecuta apt purge sobre cualquier paquete ovh-* que el instalador RTM añadió y borra los manifests puppet que dejó bajo /etc/puppet/. En hosts no-OVH nunca se instaló nada, así que no se elimina nada." } ] } ] }, "edge": { "heading": "Casos límite y matices", "packageTitle": "La reinstalación de paquetes toca paquetes vivos de Proxmox", "packageBody": "Revertir Subscription Banner Removal reinstala pve-manager, proxmox-widget-toolkit, libjs-extjs y libpve-http-server-perl con --force-confnew. Es generalmente seguro pero sí toca la UI web en ejecución — refresca tu navegador después, y espera unos segundos de reconexión. No lo ejecutes a mitad de una migración o una operación de clonado.", "rebootTitle": "Los nombres persistentes y VFIO necesitan reinicio", "rebootBody": "Eliminar los archivos 10-proxmenux-*.link propios de ProxMenux (Persistent Interface Names) y revertir IOMMU/VFIO no afectan al sistema en ejecución — solo importan tras un reinicio. ProxMenux activa el flag de reinicio automáticamente para estos.", "perItemTitle": "Puedes revertir una cosa y mantener el resto", "perItemBody": "El uninstaller opera por item. Si solo quieres eliminar Log2RAM pero mantener el tuning de red y los cambios de bashrc, marca solo Log2RAM. Nada más se toca, y el registro se actualiza en consecuencia." }, "inspect": { "heading": "Inspeccionar el registro manualmente", "intro": "Si quieres ver qué está registrado sin abrir el menú:", "outro": "Cada entrada \"tool\": true se corresponde con algo que ProxMenux aplicó y puede revertir. Eliminar una entrada manualmente no se recomienda — usa siempre el menú, que también ejecuta la función de reversión en lugar de simplemente olvidarse del cambio.", "reinstallTitle": "Reinstalación tras uninstall", "reinstallBody": "Revertir una optimización no te impide volver a aplicarla más tarde. Abre el menú Post-Install de nuevo y ejecuta Automatizado o Personalizable — el registro recogerá el nuevo estado." }, "related": { "heading": "Relacionado", "items": [ { "label": "Automated Post-Install", "href": "/docs/post-install/automated", "tail": " — vuelve a aplicar el baseline de valores por defecto sensatos." }, { "label": "Customizable Post-Install", "href": "/docs/post-install/customizable", "tail": " — elige un subconjunto distinto." }, { "label": "Desinstalar ProxMenux", "href": "/docs/settings/uninstall-proxmenux", "tail": " — operación distinta: elimina el propio ProxMenux, no sus optimizaciones aplicadas." }, { "label": "Resumen de Post-Install", "href": "/docs/post-install", "tail": "." } ] } }