Herramientas para crear su propia distribución de Linux

Herramientas para crear su propia distribución de Linux
Este artículo describe las herramientas más populares para crear su propia distribución de Linux.

Si necesita crear una distribución de Linux, este tutorial aclarará los problemas importantes al tiempo que ofrece una visión rápida de los procesos de creación.

Este artículo se centra en Linux desde Scratch y Ubuntu Live como formas de crear su distribución personalizada de Linux. LFS (Linux desde cero) es un gran método para usuarios avanzados, mientras que Ubuntu Live es bueno para los inexpertos.

Los pasos y los comandos que se muestran no están destinados a ser funcionales, sino retratar el nivel de dificultad de cada proceso.

Linux desde cero

LFS (Linux desde cero) es la herramienta más popular para crear distribuciones de Linux personalizadas desde la fuente. Crear su propia distribución de Linux puede incluir algunas ventajas (y desventajas también). Entre las ventajas, durante el proceso, aprenderá mucho en Linux. Sabrá cómo interactúan los módulos de Linux y cómo personalizar el sistema.

El tamaño del sistema operativo también es una ventaja dependiendo de sus recursos de hardware o el uso que desea dar al sistema.

En su sitio web LFS, los desarrolladores dicen que crearon un servidor web para trabajar con Apache con un tamaño de 5 MB. Junto con Gentoo Linux, Linux desde cero es la forma más flexible de configurar un sistema Linux. Construirlo es bastante simple y el proceso se describe paso a paso. Solo mostraremos los pasos iniciales para retratar una idea de la dificultad y un enlace a la documentación oficial desde la etapa de construcción.

Para comenzar con Linux desde cero, debe crear primero una partición (proceso mínimo de compilación de 3 GB). También es recomendable crear una partición de intercambio o compartir la existente (para instrucciones sobre la partición, verificar los discos duros de división bajo Debian/Ubuntu y verdulizar particiones).

Una vez que cree la partición, cree la variable $ LFS ejecutando el siguiente comando:

Exportar lfs =/mnt/lfs

Puede verificarlo ejecutando el siguiente comando:

Echo $ lfs

Cree el directorio como se muestra en el siguiente:

sudo mkdir -pv $ lfs

Nota: Reemplazar para tu partición.

monte -v -t ext3 /dev / $ LFS

Luego, corre para la partición de intercambio:

/sbin/swapon -v/dev/

Debe descargar los paquetes a un directorio específico llamado LFS/Fuentes. Para crear el directorio, ejecute el siguiente comando:

sudo mkdir -v $ lfs/fuentes

Hazlo escrito y pegajoso.

sudo chmod -v a+wt $ lfs/fuentes

Descargar y guardar dentro del directorio todos los paquetes desde
https: // www.Linuxfromscratch.org/LFS/View/Development/Capítulo03/paquetes.html

Y de https: // www.Linuxfromscratch.org/LFS/View/Development/Capítulo03/Patches.html

Alternativamente, puede usar la lista wget: https: // www.Linuxfromscratch.org/LFS/View/Development/Wget-List

Cree el directorio de herramientas y el enlace simbólico ejecutando el siguiente commnand:

sudo mkdir -v $ lfs/herramientas

Luego, ejecute el siguiente comando:

sudo ln -sv $ lfs /herramientas /

Ejecute los siguientes comandos para crear el usuario de LFS, dándole derechos sobre los directorios de herramientas y fuentes. Escriba la contraseña cuando se solicite como se muestra en la siguiente captura de pantalla:

sudo groupadd lfs
sudo useradd -s /bin /bash -g lfs -m -k /dev /null lfs
sudo passwd lfs
sudo chown -v lfs $ lfs/herramientas
sudo chown -v lfs $ lfs/fuentes
sudo su - lfs

Inicie sesión como usuario de LFS y ejecute el siguiente comando:

Cat> ~/.bash_profile << "EOF"

Luego, ejecute lo siguiente:

EXEC env -i home = $ home Term = $ Term PS1 = '\ u: \ w \ $' /bin /bash

Finalmente, escriba el siguiente comando:

EOF

Cree un nuevo BASHRC ejecutando el siguiente comando:

Cat> ~/.bashrc << "EOF"
establecer +H
Umask 022
Lfs =/mnt/lfs
LC_ALL = POSIX
Lfs_tgt = $ (uname -m) -lfs-linux-gnu
Ruta =/herramientas/bin:/bin:/usr/bin
Exportar lfs lc_all lfs_tgt ruta
EOF

Luego, ejecute el siguiente comando:

fuente ~/.bash_profile
establecer makeflags = '-j 2'

Luego, puede guardar las herramientas para comenzar a construir su distribución de Linux siguiendo los pasos en https: // www.Linuxfromscratch.org/LFS/View/Development/Capítulo05/Introducción.html.

Después de terminar, cambie la propiedad del directorio de herramientas ejecutando el siguiente comando:

sudo chown -r raíz: raíz $ lfs/herramientas

La documentación oficial para construir su distribución, prepare el núcleo. El software base se puede encontrar aquí. Es una secuencia de pasos que necesita para crear una distribución personalizada. Los siguientes pasos son:

  • Preparación de un sistema de archivos de kernel virtual
  • Gestión de paquetes
  • Entrando en el entorno chroot
  • Creación de directorios
  • Creación de archivos esenciales y enlaces simbólicos
  • Instalación de software adicional que se enumera aquí
  • Desnudando de nuevo
  • Limpiar

Para comenzar a personalizar el sistema, visite los siguientes capítulos:

  • LFS-Bootscripts-20220723
  • ¿Cómo funcionan estos bootscripts??
  • Creación de script setlock
  • Configuración de la consola de Linux
  • Configuración del script sysklogd
  • Creación del archivo /etc /inputRC
  • Los archivos de inicio de shell bash
  • Manejo de dispositivos y módulos en un sistema LFS
  • Creación de enlaces simbólicos personalizados a dispositivos
  • Configuración del script localnet
  • Personalización del archivo /etc /hosts
  • Personalización de la red general
  • Creación del archivo /etc /fstab
  • Instalación del núcleo

Finalmente, instale grub usando grub para configurar el proceso de arranque y siga los pasos antes de reiniciar por primera vez.

Creando su propia distribución de Linux basada en Ubuntu

Crear un Linux personalizado basado en Ubuntu es bastante fácil. Se puede hacer muy rápido. Es extremadamente simple en comparación con el Linux desde cero, pero no es flexible en absoluto. Podrá agregar el software y personalizar los antecedentes y algunos detalles. Pero las personalizaciones básicas como la edición del menú Aplicaciones no son compatibles.

Sudo DeBootstrap

Agregue el siguiente comando:

--Arch = AMD64
--variante = minbase
biónico
$ Home/live-ubuntu-from-scratch/chroot

Establecer los puntos de montaje.

Montaje sudo ---ing/dev $ home/live-ubuntu-from-scratch/chroot/dev
Sudo Mount --- Bind/Run $ home/Live-Ubuntu-From-Scratch/Chroot/Run
sudo chroot $ home/live-ubuntu-from-scratch/chroot
montar ninguno -t proc /proc
montar Ninguno -T SYSFS /SYS
montar ninguno -t devpts /dev /pts
Exportar hogar =/root
Exportar lc_all = c
Echo "Ubuntu-Fs-Live"> /etc /nombre de host

Luego, deberá actualizar los repositorios y ejecutar la actualización APT usando el siguiente comando:

apt-get install -y systemd-sysv
dbus-uuidgen> /etc /máquina-id
ln -fs/etc/máquina-id/var/lib/dbus/máquina-id
dpkg-divert --local --rename --add /sbin /initctl
ln -s /bin /true /sbin /initctl
APT-GET Instale -Y Ubuntu-Standard Casper Lupin-Casper Descubre la computadora portátil Detect OS-Probe Network-Manager Resolvconf Toolas de redes inalámbricas WPagui Locos Linux-Generic

Al solicitar las pantallas de configuración como grub, presione ENTER a las opciones predeterminadas para continuar. Luego, ejecute el siguiente comando:

sudo apt instalación -y ubiquidad ubiquity-casper ubiquity-frontend-gtk ubiquity-slideshow-ubuntu ubiquity-ubuntu-artwork

Instale cualquier administrador de ventana X que desee.

sudo apt instalación -y plymouth-theme-ubuntu-logo ubuntu-gnome-desktop ubuntu-gnome-wallpapers

Agregue cualquier software adicional que desee en su distribución. Luego, ejecute lo siguiente:

actualización de sudo apt-get
código de instalación de sudo apt -get -y

Seleccione sus locales y reconfigure la resolución.Conf y administrador de redes.

sudo DPKG-Reconfigure Locales
sudo dpkg-reconfigure resolv.confusión
Sudo DPKG-Reconfigure Network-Manager

Luego, ejecute lo siguiente:

Truncate -S 0 /etc /Machine -ID
rm /sbin /initctl
APT-PANGAR CIMPIL
rm -rf/tmp/* ~/.bash_history

Desmontar todos los sistemas de archivos.

Umount /Proc
Umount /sys
Umount /dev /pts
Exportar histsize = 0exit
sudo Umount $ home/live-ubuntu-from-scratch/chroot/dev
sudo Umount $ home/live-ubuntu-from-scratch/chroot/run

Cree los directorios y copie el núcleo y los binarios.

CD $ Home/Live-Ubuntu-From-Scratch
Imagen mkdir -p/Casper, Isolinux, install
sudo cp chroot/boot/vmlinuz-**-**-imagen genérica/casper/vmlinuz
sudo cp chroot/boot/initrd.IMG-**-**-Imagen genérica/casper/initrd
sudo cp chroot/boot/memtest86+.Bin Image/Install/Memtest86+
wget --progress = dot https: // www.memtest86.com/downloads/Memtest86-USB.ZIP -O Imagen/Install/Memtest86 -USB.Zipunzip -p Image/Install/Memtest86 -USB.zip memtest86-USB.IMG> Imagen/Install/Memtest86rm Image/Install/Memtest86-USB.cremallera

Para terminar, configure la grub ejecutando lo siguiente:

CD $ Home/Live-Ubuntu-From-Scratch
sudo mksquashfs chroot imagen/casper/sistema de archivos.squashfs
printf $ (sudo du -sx --block -size = 1 chroot | Cut -f1)> Image/Casper/FileSystem.tamaño
CD $ Home/Live-Ubuntu-From-Scratch
CD $ Home/Live-Ubuntu-From-Scratch/Imagen
Grub-mkstandalone--format = x86_64-efi --output = isolinux/bootx64.efi --locales = "" ---fonts = "" "Boot/grub/grub.CFG = Isolinux/Grub.CFG "
grub-mkstandalone--format = i386-pc --output = isolinux/core.IMG --install-Modules = "Linux16 Linux Normal ISO9660 Biosdisk MemDisk Búsqueda Tar LS"--Modules = "Linux16 Linux Normal ISO9660 Biosdisk Búsqueda"--Locales = "" ---Fonts = "" "Boot/Grub/Grub/Grub/Grub.CFG = Isolinux/Grub.CFG "
Cat/usr/lib/grub/i386-pc/cdboot.IMG Isolinux/Core.img> Isolinux/BIOS.img
sudo /bin /bash -c "(encontrar . -Tipo F -print0 | XARGS -0 MD5SUM | GREP -V "./md5sum.txt "> md5sum.TXT)"
sudo xorriso -as mkisofs -ISO -nivel 3 -full -iso9660 -filenames -volid "" -eleltorito -boot boot/grub/bios.IMG -NO-EMUL-BOOT -BOOT-Load-Size 4 -Boot-Info-Table --elelTorito-Catalog Boot/Grub/Boot.gato
--Grub2-Boot-Info --GRUB2-MBR/USR/LIB/Grub/I386-PC/Boot_hybrid.img -eltorito -alt -boot -e Efi/Efiboot.img -no -emul -boot -append_partition 2 0xef Isolinux/Efiboot.img -output "... /.ISO "-Points de injerto"."/Boot/Grub/BIOS.img = Isolinux/BIOS.IMG /EFI /EFIBOOT.img = Isolinux/Efiboot.img

Como puede ver, el proceso con Ubuntu Live es mucho más rápido y más fácil. Pero no es más que una distribución de Ubuntu con personalizaciones ligeras en contraste con Linux desde cero, que es completamente personalizable.

Conclusión

Como puede ver, crear una distribución de Linux puede ser una tarea muy difícil, pero un buen objetivo para comprender completamente cómo funcionan los sistemas de Linux. Esto sucede especialmente con el primer método descrito basado en Linux desde cero. La alternativa de Ubuntu también es un buen punto de partida para los nuevos usuarios que buscan una distribución de Linux personalizada basada en Ubuntu. El proceso LFS es desordenado; No se rinda antes de los errores que son comunes al comenzar. Después de todo, está creando un sistema operativo.

Esperamos que hayas encontrado este tutorial útil. Siga a Linuxhint para obtener consejos y actualizaciones adicionales sobre Linux y Networking.