Info
Que Mejoras Tienes?
Version 1 by Proxylivy:
- User: devasc
- Pass: devasc
Mejoras:
- Instalacion Limpia desde la maquina OVA original de Cisco
- Maquina Optimizada para funcionar en Virtualbox, Activando Para-virtualizacion(KVM), virtualbox-guest-image y driver red virtio
- Sistema actualizado de Ubuntu 20.04 LTS a 24.04 LTS
- Todos los paquetes han sido actualizados, Kernel
6.8.12 - Python 3.8 y sus dependencias instaladas para funcionar correctamente en la libreria con venv
- Hora configurada correctamente a America/Santiago y con NTP
- Eliminado SNAPD y reemplazado por aplicaciones nativas (Mejor funcionamiento)
- Actualizado VSCode, Postman, Firefox, Chrome
- Espacio Disco Ajustado: 45GB (Usado 16GB)
- Modo oscuro activado
Notas
- Recuerda activar la virtualizacion en nido
VBoxManage modifyvm "Virtual-Machine-Name" --nested-hw-virt on
- Verifica las instrucciones de la cpu
grep -E 'vmx|svm' /proc/cpuinfo
- Ver version de kernel
cat /proc/version_signature
Configuracion
Instalacion desde 0
- Descargar la imagen original sin ninguna modificacion desde el portal Legacy de Netacad
- Importa el .ova a Virtualbox, cambia la interfaz a “Puente” o “Host-Only” con modo promiscuo permitido
- Pon el driver del adaptador de red “virtio-net”
- Ve a “Administracion de Discos” y selecciona el disco “devasc” y sube el tamaño del disco de 31.5GB a 45GB
- Enciende la maquina de manera normal
- Acepta el contrato de uso por parte de cisco
- Redimensiona la ventana para que se ajuste la ventana automaticamente a tu pantalla del VM
- Ejecuta
apt updatey luegoapt upgrade - Reinicia la maquina con
reboot - Ejecuta
setxkbmap latam - Ejecuta
sudo su, luegopasswd devascy elige una contraseña para ese usuario - Habilita SSH con
sudo systemctl enable --now ssh - Dentro de la sesion SSH ejecuta
export TERM=xterm-256color - Abre “
Language Support” y cambia el idioma de ingles a español - Abre “
Keyboard Preferences”, ve a “layout”, selecciona “Add” y agrega “Country:Chile” y “Variant:Spanish(Latin America)”, luego remueve “English(US)”. - Selecciona el idioma español de chile con
sudo localectl set-locale LANG=es_CL.UTF-8 - Modifica
/etc/locale.aliasy deja comentado todas las entradas - Modifica
/etc/locale.geny solo deja descomentadoes_CL-UTF8.utf8 - (Talvez sea tu ultimo paso) Desactiva el bloqueo de fondo de pantalla desde “Control Center” > “Screensaver” > “Move to 2 Hour and deactivate Activate screen saver and Lock Screen when screensaver is active”
- Desactiva las opciones de optimizacion de bateria desde “Control Center” > “Power Manager” > “Put in Never every option”
Haz una copia de la libreria
Instalar Paquetes especificos de Python 3.8
sudo apt install python3.8 python3.8-venv python3.8-distutils python3-pip iptables
Modificar Permisos de la libreria
chmod 755 -R /opt/API-SIMULATOR
chown devasc:devasc -R /opt/API-SIMULATOR
Copiar exactamente los elementos de PIP para despues
source /opt/API-SIMULATOR/venv/bin/activate
pip freeze > requeriments2.txt
deactivate
Crear copia offline de la libreria para tener un respaldo
tar czvf api-simulator-backup.tar.gz /opt/API-SIMULATOR
Mover venv a venv-old para tener un respaldo
mv venv/ venv-old
Crear nuevo venv basado en python 3.8 exclusivamente
python3.8 -m venv venv
Activar nuevo venv
source venv/bin/activate
Instalar paquetes basicos de pip
pip install --upgrade pip setuptools wheel
Instalar requerimientos del sistema de respaldo
pip install -r requeriments2.txt
Desactivar venv
deactivate
Opcional: Dar permisos a devasc para usar iptables
sudo chgrp devasc /usr/sbin/iptables
sudo chmod u+rxs,o= /usr/sbin/iptables
Elimina SNAPD de raiz
Lista los paquetes de Snap para eliminarlos 1 a 1
sudo snap list
Elimina Chromium, Postman, Drawio, Cups, Core, Core20, Gnome3, Gnome42, Core22, GTK-Common-themes, Bare, Core18
sudo snap remove --purge chromium postman drawio cups core core20 gnome-3-28-1804 gnome-42-2204 core22 gtk-common-themes bare core18
Elimina Snapd
sudo snap remove --purge snapd
Elimina los paquetes instalados desde Snap
sudo apt purge snapd
Limpia APT
sudo apt clean
Haz que Snapd no se instale como una actualizacion
sudo apt-mark hold snapd
Elimina Archivos residuales de Snap
rm -rf ~/snap
sudo rm -rf /snap
sudo rm -rf /var/snap
sudo rm -rf /var/lib/snapd
Bloquea la instalacion de snap con el archivo
/etc/apt/preferences.d/nosnap.pref
Package: snapd
Pin: release a=*
Pin-Priority: -10
Bloquea tambien de forma extra con el archivo
/etc/apt/apt.conf.d/99snap
APT::Get::Always-Include-Phased-Updates "false";
APT::Install-Suggests "false";
APT::Install-Recommends "false";
Actualiza la version de Ubuntu
El comando do-release-upgrade buscara una nueva version del sistema operativo Ubuntu que esta corriendo, hara una tabla resumen con los nuevos cambios, actualmente estas en la version “20.04 LTS”, ejecutar el comando por primera vez te instalara la version “22.04.5 LTS” y luego a la version “24.04 LTS”
Estas descargas se demoran entre 10-30 minutos, todo depende de la velocidad de internet que tengas, hay momentos donde se queda pegado pero es normal, solo esta calculando cosas.
Nota
Si en algun momento te dice un mensaje “
Commands detached from windows”, te pedira activar la ventana y apretar “r”, empezara otra vez, ni idea porque sucede, pero lo peor que hace es enlentecer la actualizacion
- Siempre asegurate de actualizar el sistema con
sudo apt updateysudo apt upgrade - Ejecutas
do-release-upgrade - Escribes
yy luego presionasenter - Empezara a descargar los nuevos paquetes para el sistema, para luego instalarlos
- En medio de las instalaciones, te pedira modificar archivos de configuracion, simplemente apreta “
O” para denegar todos los cambios - Luego que termine de instalar todos los paquetes, te pedira remover los paquetes que no tienen soporte, ES IMPORTANTE QUE LE DES A ESA OPCION “NO” con “
n” - Ocasionalmente te pedira reiniciar sockets (Dockers, etc) y solo le das que si a todos los servicios que se reinician
- Grub te pedira instalarse para poder actualizarse, es necesario instalarlo en
/dev/sdasolamente - Dice que debes reiniciar la maquina para terminar con la actualizacion, le dices
y - Cuando la maquina termine de reiniciar, te dira que hay una actualizacion pendiente, cierra todas las pestañas
- Abre una ventana del navegador chrome y verifica que “
library.demo.local” continua funcionando - Abre una nueva terminal y vuelve al paso 1 hasta llegar a la version “24.04 LTS”
- Cuando encienda, estaras en Ubuntu Mate 24.04 LTS. “!FELICIDADES!”
- Ejecuta
sudo apt update,sudo apt upgradeysudo apt autoremove
Instalar y Actualizar Paquetes
Extra del Sistema
sudo apt install linux-base virtualbox-guest-additions-iso virtualbox-guest-utils virtualbox-guest-x11 autofs mom libvirt0 libvirt-clients resource-agents-base xinetd micro git tree xclip xsel neofetch kitty iperf3 mousepad wget gpg apt-transport-https btop duf fish
Instala CODE - Fuente
Descarga las llaves gpg de Microsoft
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
Instala y verifica las llaves gpg de Microsoft
sudo install -D -o root -g root -m 644 packages.microsoft.gpg /etc/apt/keyrings/packages.microsoft.gpg
Añade los repositorios basados en la llave gpg
echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" | sudo tee /etc/apt/sources.list.d/vscode.list > /dev/null
Elimina las llaves locales de gpg
rm -f packages.microsoft.gpg
Actualiza la base de datos e instala code
sudo apt update && sudo apt install code
Extensiones de VSCode
- Python - Marketplace
- Python Debugger - Marketplace
- Postman VsCode - Marketplace / Docs
Instala Postman 11.45.5 - Fuente - Release Notes - Guide (Se demora como 1 minuto y medio en abril, se podra abrir mas rapido??) (Talvez tambien activando la aceleracion por hardware desde el menu “Help”)
Descarga el Tarball
wget https://dl.pstmn.io/download/latest/linux64 -O postman.tar.gz
Extrae el Tarball
sudo tar -xzf postman.tar.gz -C /opt
Haz un Link simbolico para el binario
sudo ln -s /opt/Postman/Postman /usr/bin/postman
Elimina el Tarball
rm postman.tar.gz
Crea un launcher de escritorio en la ruta
/usr/share/applications/postman.desktop
[Desktop Entry]
Type=Application
Name=Postman
Icon=/opt/Postman/app/resources/app/assets/icon.png
Exec="/opt/Postman/Postman"
Comment=Postman Desktop App
Categories=Development;Code;
Soluciona un posible error de lentitud - Fuente
sudo openssl req -subj '/C=US/CN=Postman Proxy' -new -newkey rsa:2048 -sha256 -days 365 -nodes -x509 -keyout ~/.var/app/com.getpostman.Postman/config/Postman/proxy/postman-proxy-ca.key -out ~/.var/app/com.getpostman.Postman/config/Postman/proxy/postman-proxy-ca.crt
Instala Chromium-Browser - Fuente
Agrega el repositorio xtradeb
sudo add-apt-repository ppa:xtradeb/apps -y
Actualiza la base de datos e instala chromium
sudo apt update && sudo apt install chromium chromium-sandbox
Instala Firefox - Fuente
Instala las llaves dentro de los keyrings
sudo install -d -m 0755 /etc/apt/keyrings
Descarga las llaves gpg de Mozilla
wget -q https://packages.mozilla.org/apt/repo-signing-key.gpg -O- | sudo tee /etc/apt/keyrings/packages.mozilla.org.asc > /dev/null
Verififa las firmas gpg localmente
gpg -n -q --import --import-options import-show /etc/apt/keyrings/packages.mozilla.org.asc | awk '/pub/{getline; gsub(/^ +| +$/,""); if($0 == "35BAA0B33E9EB396F59CA838C0BA5CE6DC6315A3") print "\nThe key fingerprint matches ("$0").\n"; else print "\nVerification failed: the fingerprint ("$0") does not match the expected one.\n"}'
Añade el repositorio de firefox basado en las llaves
echo "deb [signed-by=/etc/apt/keyrings/packages.mozilla.org.asc] https://packages.mozilla.org/apt mozilla main" | sudo tee -a /etc/apt/sources.list.d/mozilla.list > /dev/null
Actualiza la base de datos e instala firefox
sudo apt update && sudo apt install firefox
Instala Librewolf - Fuente
Añade el repositorio extrepo
sudo apt update && sudo apt install extrepo -y
Activa el paquete Librewolf desde extrepo
sudo extrepo enable librewolf
Actualiza el repo e instala Librewolf
sudo apt update && sudo apt install librewolf -y
Instala Nerd Fonts (Hack) - Fuente
Descarga la ultima version de las fuentes en el formato que mas te agrade
wget https://github.com/ryanoasis/nerd-fonts/releases/download/v3.3.0/Hack.zip
Descomprime la fuente
unzip Hack.zip
Crea la carpeta de las fuentes
sudo mkdir /usr/share/fonts/truetype/Hack-Nerd-Fonts
Mueve todas las fuentes ttf a esa carpeta
sudo mv *.ttf /usr/share/fonts/truetype/Hack-nerd-Fonts
Actualiza el cache de fuentes del sistema
fc-cache -fv
Instala Packet Tracer :o
Desinstala la antigua version de packettracer
sudo apt remove --purge packettracer
Arregla unos problemitas de dependencias
sudo apt --fix-broken install
- Descarga Packet Tracer 8.2.2 desde Netacad ingresando tu cuenta estudiantil
Instala Packet tracer .deb
sudo dpkg -i Packet_Tracer822_amd64_signed.deb
- Lee y acepta el contrato de uso
Descarga DRAWIO
Descarga la ultima version de Drawio desde su github
curl -s https://api.github.com/repos/jgraph/drawio-desktop/releases/latest | grep browser_download_url | grep 'amd64' | cut -d '"' -f 4 | wget -i -
Instala Drawio
sudo dpkg -i drawio-amd64-26.2.15.deb
Configurar Hora
Haz un enlace a la zona local
sudo ln -sf /usr/share/zoneinfo/America/Santiago /etc/localtime
Elije la zona desde timedatectl
sudo timedatectl set-timezone America/Santiago
Habilita NTP
sudo timedatectl set-ntp true
Actualiza Ansible Correctamente
Remueve la version instalada
sudo apt remove ansible
Actualiza los repositorios
sudo apt update
Instala el siguiente paquete
sudo apt install software-properties-common
Instala y actualiza el repositorio
sudo apt-add-repository --yes --update ppa:ansible/ansible
Instala Ansible correctamente
sudo apt install ansible
Optimizacion del sistema
Systemctl
Desabilitar Apport - Crash Report
sudo systemctl disable apport.service
Desabilitar Whoopsie - Crash Report
sudo systemctl disable whoopsie.service
Desabilitar Avahi
sudo systemctl disable avahi-daemon avahi-daemon.socket
Desabilitar Actualizador de Firmware
sudo systemctl disable fwupd
Desabilitar SSD
sudo systemctl disable sssd
Desabilitar APT-Daily
sudo systemctl disable apt-daily.service apt-daily.timer
Desabilitar APT-daily-Upgrade
sudo systemctl disable apt-daily-upgrade.service apt-daily-upgrade.timer
Desabilitar Vboxadd (Temporal)
sudo systemctl disable vboxadd.service
Desabilitar Rsyslog
sudo systemctl disable rsyslog.service
Desabilititar GPU-MANAGER
sudo systemctl disable gpu-manager.service
Desabilitar MOTS news timer
sudo systemctl disable motd-news.timer
Enmascarar MOTD news
sudo systemctl mask motd-news.service
Bajar el Timer de Network-Online-Config
De 2:30 Minutos a 10 segundos
Crea las carpetas necesarias
sudo mkdir -p /etc/systemd/system/systemd-networkd-wait-online.service.d
Crea el archivo de sobreescritura en
/etc/systemd/system/systemd-networkd-wait-online.service.d/override.conf
[Service]
ExecStart=
ExecStart=/lib/systemd/systemd-networkd-wait-online --timeout=10
Actualiza los daemon
sudo systemctl daemon-reload
Vuelve a ejecutar los daemon
sudo systemctl daemon-reexec
Delete Packages
Delete extra packages
sudo apt remove --purge apport whoopsie cups cups-* avahi-daemon fwupd ubuntu-advantage-tools popularity-contest sssd-*
Autoremover Paquetes
sudo apt autoremove --purge
Limpieza
Borrar Archivos Temporales
sudo rm -drf /tmp/
Borrar mas archivos temporales
sudo rm -drf /var/tmp/
Poner todos los logs en 0
sudo find /var/log -type f -exec truncate -s 0 {} \;
Limpiar espacio vacio en real 0
sudo dd if=/dev/zero of=/zerofile bs=1M
Eliminar el archivo 0
sudo rm -f /zerofile
Vaciar Historial
echo "" > ~/.bash_hostory
history -wc
Configuracion de Virtualbox con la maquina
General
- Basico
- Ubuntu (64 Bits)
- Avanzado
- Portapapeles Compartido: Inhabilitado
- Arrastrar y Soltar: Inhabilitado Sistema
- Placa Base
- Memoria Base
- Ram: 4096MB
- Chipset: ICH9
- Dispositivo Apuntador: Tableta USB
- Caracteristicas Extendidas
- Habilitar I/O APIC
- Habilitar reloj hardware en tiempo UTC
- Procesador
- Procesadores: Todos los que puedas
- Habilitar PAE/NX
- Habilitar VT-x/AMD-V Anidado
- Aceleracion
- Interfaz de paravirtualizacion: KVM
- Hardware de virtualizacion: Habilitar paginacion anidada Pantalla
- Memoria Base
- Pantalla
- Memoria de Video: 128MB o 256MB
- Controlador Grafico: VMSVGA
- Caracteristicas extendidas: Habilitar Aceleracion 3D Almacenamiento
- Dispositivos (Controlador)
- Nombre: SATA
- Tipo: AHCI
- Cantidad de Puertos: 2
- Usar cache de I/O anfitrion
- Disco (DEVASC-LABVM-disk001.vdi)
- Unidad de estado solido (Solo si tienes SSD, HDD desmarcar) Red
- Adaptador 1
- Conectado a: Adaptador puente
- Nombre: “Tu NIC de red”
- Tipo de adaptador: virtio-net
- Modo promiscuo: Permitir todo
- Direccion MAC: “Aleatoria” USB
- Habilitar controlador USB
- Controlar USB 2.0 (OHCI + EHCI)