Dual Boot - Arch & Windows

  1. Desactivar Fast Startup y Hibernación

    Fast Startup puede causar problemas con archivos compartidos entre Windows y Linux en un arranque dual.

    • Abre el Panel de Control y ve a Opciones de Energía.
    • Haz clic en Elegir lo que hacen los botones de encendido.
    • Selecciona Cambiar la configuración actualmente no disponible.
    • Desactiva Activar inicio rápido y guarda los cambios.
    • Locale-gen
      Configuracion de energia en windows
    • Desactivar Hibernación (Opcional):
      ~$powercfg /h off
      Esto asegurará que Windows se apague completamente en lugar de entrar en un estado de hibernación parcial.
  2. Desactivar Secure Boot (si es necesario)

    Algunas distribuciones de Linux, como Arch Linux, no soportan UEFI Secure Boot, por lo que desactivarlo puede ser necesario.

    • Reinicia el equipo y entra en la BIOS/UEFI.
    • Busca la opción Secure Boot en el menú de configuración de seguridad y desactívala.
    • Guarda los cambios y reinicia.
  3. Configurar Windows para usar UTC

    Para habilitar el arranque dual con Linux, se recomienda configurar Windows para que use UTC, en lugar de que Linux use hora local. Windows, por defecto, utiliza hora local.

    • Puedes hacerlo desde un símbolo del sistema con privilegios de administrador ejecutando:
      ~$reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /d 1 /t REG_DWORD /f
  4. Verificar el Tipo de Partición (GPT o MBR)

    Windows y Linux deben compartir el mismo tipo de partición para evitar problemas de compatibilidad.

    • Abre el Administrador de Discos (Win + X y selecciona Administración de Discos).
    • Haz clic derecho en el disco del sistema y selecciona Propiedades.
    • En la pestaña Volúmenes, verifica si el estilo de partición es GPT o MBR.
  5. Crear Espacio Libre para Linux

    Reduce el tamaño de la partición de Windows para hacer espacio para Linux.

    • Abre el Administrador de Discos.
    • Haz clic derecho en la partición de Windows y selecciona Reducir volumen.
    • Asigna el espacio que deseas dejar para Linux y haz clic en Reducir.
  6. Realizar una Copia de Seguridad

    Antes de hacer cambios importantes en el sistema, realiza una copia de seguridad de tus archivos importantes para prevenir pérdida de datos.

  7. Opcional: Convertir MBR a GPT (si estás en BIOS y deseas UEFI)

    Si deseas convertir tu sistema de BIOS/MBR a UEFI/GPT, puedes usar la herramienta MBR2GPT.exe .

    • Asegúrate de cumplir los requisitos previos, como tener suficiente espacio en disco y que el disco actual sea MBR.
  8. Verificar el Modo de Arranque

    Finalmente, verifica que Windows esté configurado en el modo de arranque adecuado (UEFI o BIOS).

    • Pulsa Win + R, escribe msinfo32 y presiona Enter.
    • En la ventana de Información del Sistema, busca el campo Modo de BIOS:
      • Si aparece UEFI, significa que Windows está en modo UEFI.
      • Si aparece Legacy, está en modo BIOS.
  9. Preparación
  10. Cambia la distribucion de Teclado
      ~$loadkeys es
  11. Verificar la modalidad de arranque
      ~$cat /sys/firmware/efi/fw_platform_size
    • Si el comando muestra "64", el sistema se iniciará en modo UEFI de 64 bits. Si muestra "32", también estará en modo UEFI, pero de 32 bits, limitando el gestor de arranque a systemd-boot o GRUB. Si no aparece el directorio, el sistema usará el modo BIOS (o CSM)
  12. Particionar el Disco
    • Crear las particiones necesarias para UEFI:
      • Iniciar la herramienta cfdisk:
      • ~$cfdisk
      • Crear las siguientes particiones:
        • Partición EFI system partition se usará la de Windows
        • Partición SWAP de 4GB mínimo
        • Partición raíz (/) para el resto del espacio (mínimo 23-32 GiB)
        Windows Arch Linux particiones UEFI
        Vista de cfdisk con particiones configuradas para UEFI
      • Guardar los cambios y salir de cfdisk.
  13. Formatear las particiones
    • Formatear la partición raíz:
    • ~$mkfs.ext4 /dev/partición_raiz
    • Formatear la partición swap:
    • ~$mkswap /dev/partición_swap
  14. Montar los sistemas de archivos
    • Montar el volumen raíz:
    • ~$mount /dev/partición_raiz /mnt
    • Para sistemas UEFI, montar la partición del sistema EFI:
    • ~$mount --mkdir /dev/partición_sistema_efi /mnt/boot/efi
    • Si creó un volumen de intercambio, activarlo:
    • ~$swapon /dev/partición_swap
    • Verifica las particiones con lsblk
    • ~$lsblk
      lsblk para UEFI
      Vista de las particiones montadas en UEFI
  15. Instalar el sistema base
    • Instalar paquetes esenciales más el paquete networkmanager para el internet y nano para la edición
    • ~$pacstrap /mnt base linux linux-firmware networkmanager nano
  16. Generar fstab
    • Generar el archivo fstab
    • ~$genfstab -U /mnt >> /mnt/etc/fstab
  17. Chroot
    • Cambiar la raíz al nuevo sistema:
    • ~$arch-chroot /mnt
  18. Zona horaria
    • Definir su zona horaria:
    • ~$ln -sf /usr/share/zoneinfo/Región/Ciudad /etc/localtime
    • Generar /etc/adjtime:
    • ~$hwclock --systohc
  19. Idioma del sistema
    • Edite /etc/locale.gen con nano
    • ~$nano /etc/locale.gen
    • Busque y descomente el necesario
    • Locale.conf
      Locale.conf con es_PE.UTF-8 descomentado
    • Presione ctrl + x para guardar, Y para confirmar sobrescritura y Enter
    • Genere los locales ejecutando la orden:
    • ~$locale-gen
      Locale-gen
      Generando el locale con locale-gen
    • Cree el archivo /etc/locale.conf y defina la variable LANG descomentada:
      ~$echo 'LANG=es_PE.UTF-8' > /etc/locale.conf
    • Definir la distribución de teclado y fuente en /etc/vconsole.conf para que permanezca en cada reinicio:
      ~$nano /etc/vconsole.conf
      vconsole.conf
      Configuración del teclado en vconsole.conf
  20. Instalar y configurar GRUB
    • Instalar GRUB para UEFI también es recomendable instalar ntfs-3g
    • ~$pacman -S grub efibootmgr os-prober ntfs-3g
    • Instalar GRUB en el disco
    • ~$grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=Arch
    • También es recomendable ejecutar
    • ~$grub-install --target=x86_64-efi --efi-directory=/boot/efi --removable
    • Edite el archivo: /etc/default/grub con el nombre de su equipo
    • ~$nano /etc/default/grub
    • Edite el archivo: /etc/default/grub descomente la linea GRUB_DISABLE_OS_PROBER=false
    • Configuración de GRUB
      Vista de /etc/default/grub con la línea de OS Prober descomentada
    • Generar el archivo de configuración de GRUB
    • ~$grub-mkconfig -o /boot/grub/grub.cfg
  21. Configuración de red
    • Establecer el nombre del equipo:
    • ~$nano /etc/hostname
      hostname
      Configuración del nombre del equipo
    • Editar el archivo hosts:
    • ~$nano /etc/hosts
      hosts
      Configuración del archivo hosts
    • Añadir el siguiente contenido:

      127.0.0.1 localhost
      ::1 localhost
      127.0.1.1 myhostname.localdomain myhostname
    • Habilitar el servicio NetworkManager:
    • ~$systemctl enable NetworkManager
  22. Configuración de usuarios
    • Establecer la contraseña de root:
    • ~$passwd
    • Crear un nuevo usuario:
    • ~$useradd -m -G wheel usuario
    • Establecer la contraseña del usuario:
    • ~$passwd usuario
    • Instalar sudo:
    • ~$pacman -S sudo
    • Configurar sudo para permitir al grupo wheel:
    • ~$EDITOR=nano visudo
      sudoers
      Configurando permisos de sudo para grupo wheel
    • Descomente la línea: %wheel ALL=(ALL) ALL
  23. Finalización de la instalación
    • Salir del entorno chroot:
    • ~$exit
    • Desmontar particiones:
    • ~$umount -R /mnt
    • Reiniciar:
    • ~$reboot
    • No olvide retirar el medio de instalación para no arrancar de nuevo desde él.
  24. Windows y Arch en Grub
    • En caso no detecte windows inicia arch con root y genera el archivo de configuración de grub nuevamente
    • Locale-gen
      Configuracion de os-prober