Configuración de Rocky Linux 9#
Note
- Asegúrate de haber instalado la máquina virtual de Rocky Linux 9
Configuración en VirtualBox#
![]() |
Quitar imagen ISO de instalación#
![]() |
![]() |
Agregar interfaz host-only#
![]() |
![]() |
Configuración del portapapeles y drag and drop#
![]() |
Configuración de aceleración 3D#
![]() |
Creación de snapshot#
Configuración de la máquina virtual#
Información del sistema#
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Configuración de repositorios#
-
Eleva privilegios utilizando
su[tonejito@rocky-9 ~]$ su - Password: [root@rocky-9 ~]# -
Actualiza la lista de paquetes disponibles
[root@rocky-9 ~]# dnf makecache ... Metadata cache created.
Repositorio EPEL#
-
Instala el paquete
epel-releasepara agregar el repostorio EPEL al sistema.[root@rocky-9 ~]# dnf install epel-release ... Install 2 Packages Total download size: 35 k Installed size: 38 k Is this ok [y/N]: y ... Importing GPG key 0x8483C65D: Userid : "CentOS (CentOS Official Signing Key) <security@centos.org>" Fingerprint: 99DB 70FA E1D7 CE22 7FB6 4882 05B5 55B3 8483 C65D From : /etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial Is this ok [y/N]: y Key imported successfully ... Installed: epel-next-release-9-7.el9.noarch epel-release-9-7.el9.noarch Complete!
-
Actualiza la lista de paquetes disponibles
[root@rocky-9 ~]# dnf makecache ... Metadata cache created.
Repositorio devel#
-
Habilita el repositorio
develpara instalar el paquetenetwork-scripts[root@rocky-9 ~]# dnf config-manager --enable devel[root@alma-linux-9 ~]# dnf -y install almalinux-release-devel ...[root@alma-linux-9 ~]# dnf-config-manager --add-repo https://repo.almalinux.org/almalinux/9/devel/almalinux-devel.repoWarning
Rocky Linux 9 no tiene el repositorio
develni el paquetenetwork-scripts, pero se puede utilizar el RPM de Rocky Linux 9 o Alma Linux 9- https://blog.racknerd.com/how-to-install-network-scripts-on-almalinux-9-rockylinux-9-and-centos-stream-9/
-
Actualiza la lista de paquetes disponibles
[root@rocky-9 ~]# dnf makecache ... Metadata cache created.
Configurar sudo#
-
Eleva privilegios utilizando
su[tonejito@rocky-9 ~]$ su - Password: [root@rocky-9 ~]# -
Instala el paquete de
sudo[root@rocky-9 ~]# dnf install sudo Last metadata expiration check: 0:06:35 ago on Tue 22 Feb 2022 01:43:37 AM CST. Package sudo-1.8.29-8.el9.x86_64 is already installed. -
Edita el archivo
/etc/sudoers# visudoDanger
- Utiliza únicamente el programa
visudopara editar el archivo/etc/sudoers, no lo intentes editar a mano con otro editor común de texto. - Si necesitas cambiar el editor, puedes exportar el nombre como variable de entorno:
export EDITOR=vim
- Utiliza únicamente el programa
-
Modifica la línea para no requerir contraseña al ejecutar
sudo# Allows people in group wheel to run all commands # %wheel ALL=(ALL) ALL ## Same thing without a password %wheel ALL=(ALL) NOPASSWD: ALL -
Agrega a tu usuario al grupo
wheelpara que pueda elevar privilegios[root@rocky-9 ~]# usermod -aG wheel tonejito -
Verifica que el usuario esté en el grupo
wheel[root@rocky-9 ~]# groups tonejito tonejito : tonejito wheel -
Reinicia la máquina virtual para aplicar los cambios
[root@rocky-9 ~]# reboot ...
Instalar SSH#
-
Instala el servicio de SSH
[root@rocky-9 ~]# dnf install openssh-server Last metadata expiration check: 0:03:25 ago on Tue 22 Feb 2022 01:43:37 AM CST. Package openssh-server-8.0p1-12.el9.x86_64 is already installed. Dependencies resolved. Nothing to do. Complete -
Habilita el servicio de SSH
root@debian-12:~# systemctl enable sshd -
Agrega una regla al firewall de host para permitir el tráfico de entrada SSH
[root@rocky-9 ~]# firewall-cmd --zone=public --permanent --add-service=ssh Warning: ALREADY_ENABLED: ssh success [root@rocky-9 ~]# firewall-cmd --reload success
Configura la interfaz de red host-only#
-
Revisa que el sistema operativo reconozca la interfaz de red y que esta no se encuentre configurada
Note
En este ejemplo, la asignación de interfaces de red es la siguiente:
lo: loopbackenp0s3: NATenp0s8: host-only (esta es la interfaz que vas a configurar)
[root@rocky-9 ~]# ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 08:00:27:3c:7d:19 brd ff:ff:ff:ff:ff:ff inet 10.0.2.15/24 brd 10.0.2.255 scope global dynamic noprefixroute enp0s3 valid_lft 83813sec preferred_lft 83813sec inet6 fe80::a00:27ff:fe3c:7d19/64 scope link noprefixroute valid_lft forever preferred_lft forever 3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 08:00:27:2a:29:14 brd ff:ff:ff:ff:ff:ff 4: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000 link/ether 52:54:00:7b:94:83 brd ff:ff:ff:ff:ff:ff inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0 valid_lft forever preferred_lft forever -
Crea el archivo
/etc/sysconfig/network-scripts/ifcfg-enp0s8con el siguiente conetenidoNote
- Verifica el nombre de tu interfaz de red
- Este ejemplo utiliza la interfaz de red
enp0s8
DEVICE=enp0s8 TYPE=Ethernet BOOTPROTO=dhcp DEFROUTE=no NAME=enp0s8 ONBOOT=yes -
Instala los paquetes de compatibilidad para tener los comandos
ifupeifdown[root@rocky-9 ~]# dnf install network-scripts NetworkManager-initscripts-updown ...No existe el paquete
network-scriptsen Rocky Linux 9,- https://pkgs.org/search/?q=network-scripts
- https://pkgs.org/search/?q=NetworkManager-initscripts-updown
Warning
Rocky Linux 9 no tiene el repositorio
develni el paquetenetwork-scripts, pero se puede utilizar el RPM de Rocky Linux 9 o Alma Linux 9Instalar manualmente las dependencias para
network-scripts[root@centos-stream-9 ~]# dnf install wget initscripts bc hostname ipcalc iproute kmod ...Descargar alguno de estos RPM e instalarlo
- https://dl.rockylinux.org/pub/rocky/9/devel/x86_64/os/Packages/n/network-scripts-10.11.8-4.el9.x86_64.rpm
- https://repo.almalinux.org/almalinux/9/devel/x86_64/os/Packages/network-scripts-10.11.8-4.el9.x86_64.rpm
[root@centos-stream-9 ~]# wget -c -nv https://dl.rockylinux.org/pub/rocky/9/devel/x86_64/os/Packages/n/network-scripts-10.11.8-4.el9.x86_64.rpm [root@centos-stream-9 ~]# rpm -ivh network-scripts-10.11.8-4.el9.x86_64.rpm ... [root@centos-stream-9 ~]# rm -v network-scripts-10.11.8-4.el9.x86_64.rpm ... -
Levanta de manera manual tu interfaz de red
[root@rocky-9 ~]# ifup enp0s8 WARN : [ifup] You are using 'ifup' script provided by 'network-scripts', which are now deprecated. WARN : [ifup] 'network-scripts' will be removed in one of the next major releases of RHEL. WARN : [ifup] It is advised to switch to 'NetworkManager' instead - it provides 'ifup/ifdown' scripts as well. -
Verifica que la interfaz de red esté configurada
Note
En este ejemplo, la asignación de interfaces de red es la siguiente:
lo: loopbackenp0s3: NATenp0s8: host-only
[root@rocky-9 ~]# ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 08:00:27:3c:7d:19 brd ff:ff:ff:ff:ff:ff inet 10.0.2.15/24 brd 10.0.2.255 scope global dynamic noprefixroute enp0s3 valid_lft 83693sec preferred_lft 83693sec inet6 fe80::a00:27ff:fe3c:7d19/64 scope link noprefixroute valid_lft forever preferred_lft forever 3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 08:00:27:2a:29:14 brd ff:ff:ff:ff:ff:ff inet 172.28.128.8/24 brd 172.28.128.255 scope global dynamic noprefixroute enp0s8 valid_lft 592sec preferred_lft 592sec inet6 fe80::a00:27ff:fe2a:2914/64 scope link valid_lft forever preferred_lft forever 4: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000 link/ether 52:54:00:7b:94:83 brd ff:ff:ff:ff:ff:ff inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0 valid_lft forever preferred_lft foreverNote
Puede que no te aparezca la interfaz de red
virbr0
Instalar software#
-
Instala las herramientas de Python en el sistema
[root@rocky-9 ~]# dnf install python3 python3-devel python3-pip ... -
Instala las herramientas de red en el sistema
[root@rocky-9 ~]# dnf install tcpdump nmap netcat ngrep dsniff wget curl whois bind-utils net-tools iproute iptables iptables-services iputils traceroute ethtool ...
Instalar wireshark#
-
Instala
wiresharkutilizandodnf[root@rocky-9 ~]# dnf install wireshark wireshark-cli ... -
Verifica que exista el grupo de usuarios
wireshark[root@rocky-9 ~]# getent group wireshark wireshark:x:972: -
Agrega tu usuario al grupo
wireshark[root@rocky-9 ~]# usermod -aG wireshark tonejito -
Verifica que tu usuario pertenezca al grupo
[root@rocky-9 ~]# groups tonejito tonejito : tonejito wheel wireshark
Configuración de las herramientas de VirtualBox para Linux#
-
Instala las herramientas de desarrollo para compilar los módulos de kernel
[root@rocky-9 ~]# dnf groupinstall "Development tools" ... [root@rocky-9 ~]# dnf install make zstd dkms kernel-headers kernel-devel kernel-devel-$(uname -r) -
Inserta la imagen ISO de las utilerías de VirtualBox en la máquina virtual
![]() |
-
Verifica que la imagen ISO se encuentre montada en
/run/media/tonejito/VBox_GAs_7.1.12/o/media/cdromWarning
- El nombre de la carpeta puede ser diferente en otras versiones de VirtualBox
Note
- Monta la imágen ISO en el directorio si es necesario
-
En este caso tendrás que utilizar el directorio
/media/cdromo similar en lugar del directorio auto-montado en/run/media/tonejito/VBox_GAs_7.1.12[root@rocky-9 ~]# mkdir -vp /media/cdrom mkdir: created directory '/media/cdrom' [root@rocky-9 ~]# mount -t iso9660 /dev/cdrom /media/cdrom mount: /media/cdrom: WARNING: source write-protected, mounted read-only.
[root@rocky-9 ~]# ls -lA /run/media/tonejito/VBox_GAs_7.1.12/ total 46923 dr-xr-xr-x 2 root root 792 Nov 22 09:24 cert dr-xr-xr-x 2 root root 1824 Nov 22 09:24 NT3x dr-xr-xr-x 2 root root 2652 Nov 22 09:24 OS2 -r--r--r-- 1 root root 763 Feb 20 2020 AUTORUN.INF -r-xr-xr-x 1 root root 6384 Nov 22 09:17 autorun.sh -r-xr-xr-x 1 root root 4821 Nov 22 09:17 runasroot.sh -r--r--r-- 1 root root 592 Nov 22 09:24 TRANS.TBL -r--r--r-- 1 root root 3991991 Nov 22 09:21 VBoxDarwinAdditions.pkg -r-xr-xr-x 1 root root 3949 Nov 22 09:16 VBoxDarwinAdditionsUninstall.tool -r-xr-xr-x 1 root root 7443891 Nov 22 09:18 VBoxLinuxAdditions.run -r--r--r-- 1 root root 9420288 Nov 22 09:10 VBoxSolarisAdditions.pkg -r-xr-xr-x 1 root root 16890912 Nov 22 09:21 VBoxWindowsAdditions-amd64.exe -r-xr-xr-x 1 root root 270840 Nov 22 09:18 VBoxWindowsAdditions.exe -r-xr-xr-x 1 root root 9998128 Nov 22 09:19 VBoxWindowsAdditions-x86.exe -r--r--r-- 1 root root 259 Oct 4 10:48 windows11-bypass.reg -
Ejecuta el script de instalación para compilar los módulos de kernel y habilitar los servicios
[root@rocky-9 ~]# cd /run/media/tonejito/VBox_GAs_7.1.12/ [root@rocky-9 VBox_GAs_7.1.12]# bash ./VBoxLinuxAdditions.run Verifying archive integrity... 100% MD5 checksums are OK. All good. Uncompressing VirtualBox 7.1.12 Guest Additions for Linux ... VirtualBox Guest Additions installer VirtualBox Guest Additions: Starting. VirtualBox Guest Additions: Setting up modules VirtualBox Guest Additions: Building the VirtualBox Guest Additions kernel modules. This may take a while. VirtualBox Guest Additions: To build modules for other installed kernels, run VirtualBox Guest Additions: /sbin/rcvboxadd quicksetup <version> VirtualBox Guest Additions: or VirtualBox Guest Additions: /sbin/rcvboxadd quicksetup all VirtualBox Guest Additions: Building the modules for kernel 5.14.0-570.37.1.el9_6.x86_64. VirtualBox Guest Additions: Look at /var/log/vboxadd-setup.log to find out what went wrong VirtualBox Guest Additions: reloading kernel modules and services VirtualBox Guest Additions: kernel modules were not reloaded VirtualBox Guest Additions: kernel modules and services were not reloaded The log file /var/log/vboxadd-setup.log may contain further information.Warning
- El error que se lanza es por una característica que tiene el kernel de Rocky Linux
- Este error no debería afectar la funcionalidad de las utilerías de VirtualBox
-
Si aparece un error
Kernel headers not found for target kernelactualizar el kernel actual, reiniciar la máquina e intentar de nuevo[root@rocky-9 ~]# dnf update kernel kernel-*
Danger
Si necesitas reintentar la instalación, desinstala las utilerías de VirtualBox, reinicla la máquina e intenta de nuevo
[root@rocky-9 ~]# /usr/sbin/vbox-uninstall-guest-additions ... [root@rocky-9 ~]# reboot - El error que se lanza es por una característica que tiene el kernel de Rocky Linux
-
Lista los módulos de kernel para revisar que se hayan compilado.
[root@rocky-9 ~]# ls -l /lib/modules/$(uname -r)/misc/ total 7972 -rw-r--r-- 1 root root 3234688 Sep 8 22:52 vboxguest.ko -rw-r--r-- 1 root root 2154488 Sep 8 22:52 vboxsf.ko -rw-r--r-- 1 root root 2770264 Sep 8 22:53 vboxvideo.koNote
No importa que falte el módulo
vboxvideo.ko, sólo se utiliza para las siguientes características- Redimensionar la pantalla de la máquina virtual para que se ajuste al tamaño de la ventana
- Soporte drag and drop para copiar archivos entre la máquina física y la virtual y viceversa
-
Reinicia el equipo y verifica que los módulos de kernel se carguen
Note
- En este punto ya podrías utilizar las funciones de resolución automática, portapapeles compartido, carpetas compartidas y arrastrar desde y hacia la máquina virtual para copiar archivos.
[root@rocky-9 ~]# lsmod | egrep -i 'v(irtual)?box' [root@rocky-9 ~]# lsmod | grep -i vbox vboxsf 90112 0 vboxvideo 32768 0 vboxguest 385024 3 vboxsf drm_vram_helper 20480 1 vboxvideo drm_ttm_helper 16384 2 drm_vram_helper,vboxvideo drm_kms_helper 266240 3 vmwgfx,drm_vram_helper,vboxvideo drm 585728 9 vmwgfx,drm_kms_helper,drm_vram_helper,vboxvideo,drm_ttm_helper,ttmWarning
Si no te aparecen los módulos de kernel, intenta compilar para todas las versiones de kernel que tienes y reinicia la máquina
[root@rocky-9 ~]# /sbin/rcvboxadd quicksetup all ...Note
Si aún después de reiniciar la máquina no te aparecen los módulos de VirtualBox, intenta forzar la carga desde el directorio
/etc/modules-load.d/y reiniciar la máquina[root@rocky-9 ~]# ls -1 /lib/modules/$(uname -r)/misc/ | sed -e 's/.ko//g' > /etc/modules-load.d/99-virtualbox [root@rocky-9 ~]# dracut --regenerate-all -f ... [root@rocky-9 ~]# reboot
Servicios de VirtualBox en la máquina virtual#
Revisa que los servicios de las utilerías de VirtualBox estén iniciados en el sistema después de haber reiniciado la máquina
[root@rocky-9 ~]# systemctl list-units | egrep 'UNIT|v(irtual)?box'
UNIT LOAD ACTIVE SUB DESCRIPTION
vboxadd.service loaded active exited vboxadd.service
vboxadd-service.service loaded active running vboxadd-service.service
Warning
Habilitar los servicios en caso de que no esten iniciados, reiniciar la máquina y verificar de nuevo
[root@rocky-9 ~]# systemctl daemon-reload
[root@rocky-9 ~]# systemctl enable vboxadd.service vboxadd-service.service
Revisa el estado del servicio vboxadd.service
[root@rocky-9 ~]# systemctl status --full --no-pager vboxadd.service
● vboxadd.service
Loaded: loaded (/opt/VBoxGuestAdditions-7.1.12/init/vboxadd; enabled; preset: disabled)
Active: active (exited) since Fri 2025-09-28 00:01:02 UTC; 1min ago
Process: 602 ExecStart=/opt/VBoxGuestAdditions-7.1.12/init/vboxadd start (code=exited, status=0/SUCCESS)
Main PID: 602 (code=exited, status=0/SUCCESS)
CPU: 1.234s
Sep 28 00:01:02 rocky-9 systemd[1]: Starting vboxadd.service...
Sep 28 00:01:02 rocky-9 vboxadd[602]: VirtualBox Guest Additions: Starting.
Sep 28 00:01:02 rocky-9 systemd[1]: Finished vboxadd.service.
Revisa el estado del servicio vboxadd-service.service
[root@rocky-9 ~]# systemctl status --full --no-pager vboxadd-service.service
● vboxadd-service.service
Loaded: loaded (/opt/VBoxGuestAdditions-7.1.12/init/vboxadd-service; enabled; preset: disabled)
Active: active (running) since Fri 2025-09-28 00:01:02 UTC; 1min ago
Process: 937 ExecStart=/opt/VBoxGuestAdditions-7.1.12/init/vboxadd-service start (code=exited, status=0/SUCCESS)
Tasks: 9 (limit: 11078)
Memory: 4.0M
CPU: 567ms
CGroup: /system.slice/vboxadd-service.service
└─123 /usr/sbin/VBoxService --pidfile /var/run/vboxadd-service.sh
Sep 28 00:01:02 rocky-9 systemd[1]: Starting vboxadd-service.service...
Sep 28 00:01:02 rocky-9 vboxadd-service[937]: vboxadd-service.sh: Starting VirtualBox Guest Addition service.
Sep 28 00:01:02 rocky-9 vboxadd-service.sh[950]: Starting VirtualBox Guest Addition service.
Sep 28 00:01:02 rocky-9 vboxadd-service.sh[978]: VirtualBox Guest Addition service started.
Sep 28 00:01:02 rocky-9 systemd[1]: Started vboxadd-service.service.
Configuración de carpeta compartida con la máquina física#
- Una vez que las utilerías de VirtualBox se encuentren configuradas en la máquina virtual, puedes compartir carpetas
![]() |
![]() |
![]() |
Note
Para montar la carpeta compartida de manera manual se utiliza este comando
[root@rocky-9 ~]# mkdir -vp /mnt/shared
[root@rocky-9 ~]# mount -t vboxsf Public /mnt/shared
Puedes usar este comando para probar la carpeta compartida, pero las utilerías de VirtualBox deberían montarla de manera «automágica» al reiniciar la máquina virtual.
-
Verifica que la carpeta compartida esté en la ubicación que seleccionaste
-
Puedes crear algunos archivos o directorios y ver que aparezcan en la máquina física y en la virtual
[root@rocky-9 ~]# mount | grep vbox Public on /mnt/shared type vboxsf (rw,nodev,relatime,iocharset=utf8,uid=0,gid=973,dmode=0770,fmode=0770,tag=VBoxAutomounter)
Warning
- La carpeta compartida se monta de manera predeterminada con privilegios restrictivos
- Puedes agregar una entrada a
/etc/fstabcon la información de montaje que está en/etc/mtaby ajustarla con los identificadoresuidygidde tu usuario
-
Info
- Cuando hayas terminado de configurar la máquina Rocky Linux, captura la información de los entregables y envíala en un merge request al repositorio de tareas

















