Blog gratis
Reportar
Editar
¡Crea tu blog!
Compartir
¡Sorpréndeme!
Blog de la Escuela de Educación Secundaria Técnica N 8 de Quilmes
Administrador Prof. Claudio Enrique Alonso Alvite
img
31 de Marzo, 2015    General

Homepage » Black Hat » Cómo crear tu propio sistema operativo libre Cómo crear tu propio sistema operativo libre

Esta vez te explicaremos paso a paso cómo modificar/personalizar/rehacer una versión de GNU+Linux derivada de Debian.

Tomaremos el caso de Huayra, la distro estatal realizada por el Programa Conectar Igualdad que pretende ser instalada en las máquinas que resta repartir (unas cientos de miles) y en las ya repartidas (algo difícil de lograr si tenemos en cuenta que son más de 3 millones). De todas formas, este tutorial sirve para casi cualquiera de las cientos de distribuciones derivadas de Debian (Ubuntu, Mint, Musix, etc.).

Te traemos 11 pasos para crear un sistema operativo libre

Método
* El método elegido es relativamente rápido y cómodo para hacer cambios «en vivo», sobre todo dentro del sistema previamente a ser terminado, como si estuviera ya listo para usar. Otro método sería el de usar las herramientas de Debian Live.

Nivel de conocimientos
* En verdad esto lo puede hacer cualquier persona con algo de tiempo y ganas, no es necesario que se trate de un usuario avanzado, aunque sí es ideal que esté familiarizado con la consola de comandos de GNU/Linux. Pero te aseguro que es como seguir cualquier receta, como hacer canelones en casa.

Materiales
* Computadora personal con GNU+Linux instalado (cualquier netbook del PCI serviría, ya sea que trajera RxArt, Ubuntu, Mint o Huayra)
En caso de no contar con un sistema libre preinstalado, recomiendo descargar e Instalar Lunar GNU+Linux, que viene con todas las herramientas para remasterizar.
* Espacio en disco rígido: 10 GB aprox.
* Pendrive USB de 2 o 4 GB para grabar la imagen ISO (el sistema operativo comprimido) con unetbootin
O un DVD virgen.
* Una imagen ISO del sistema operativo a modificar: podría ser Lunar  o Huayra  mismo… pero si trabajás sobre Huayra quizá querrías invertir un tiempo en eliminar el software privativo, así que te aconsejamos Lunar, el cual ha zanjado esa tarea.
* Unetbootin

Pasos
Si en tu sistema no tenés instalado squashfs-tools y genisoimage, deberás incorporarlos; en este tutorial supondremos que estás utilizando una distribución Debian o derivada, con lo cual emplearías apt-get para instalar programas. El comando es:

sudo apt-get install squashfs-tools genisoimage

Desde ahora, abriremos una consola de comandos (konsole, xterm, lxterm, mrxvt, la que
quieras) y será cuestión de ejecutar paso tras paso como si fuera una receta.  Lógicamente no explicaré qué significa cada comando porque el tutorial sería más largo y aburrido que la Biblia, pero el usuario puede investigarlo utilizando el comando man (ej: man mkdir)
1) Crear directorios y descomprimir el archivos

mkdir nueva_distro
cd nueva_distro
sudo mount LA_DISTRO_QUE_DESCARGASTE.iso /mnt -o loop
mkdir extract-cd
rsync –exclude=/live/filesystem.squashfs -a /mnt/ extract-cd
sudo unsquashfs /mnt/live/filesystem.squashfs
sudo mv squashfs-root edit

2) Utilizar funcionalidades de nuestro actual sistema operativo

sudo cp /etc/resolv.conf edit/etc/
sudo cp /etc/hosts edit/etc/
sudo mount –bind /dev/ edit/dev

# Este paso es importante: aquí nos metemos dentro del nuevo sistema
sudo chroot edit
mount -t proc none /proc
mount -t sysfs none /sys
mount -t devpts none /dev/pts
export HOME=/root
export LC_ALL=C

dbus-uuidgen > /var/lib/dbus/machine-id
dpkg-divert –local –rename –add /sbin/initctl
ln -s /bin/true /sbin/initctl

 

3) Comenzar a instalar o desinstalar programas, modificar estéticas, configuraciones, etc.

apt-get update

Ahora podemos instalar algo, por ejemplo algunas utilidades para redes, copia de archivos y monitoreo de procesos

apt-get install htop nmap slurm rsync

Es sólo un ejemplo, Debian contiene algo así como 30.000 paquetes en su base de datos, si necesitás una forma cómoda de ver qué hay disponible, utilizá Synaptic en modo gráfico, luego podés volver al sistema en proceso de modificación e instalar las aplicaciones con apt-get

Por no ser tan aburridos, instalemos algunas aplicaciones para músicos:

apt-get install hydrogen solfege rosegarden zynaddsubfx qsynth lmms qjackctl
En fin: insisto en que son sólo ejemplos, vos podés encontrar algo que te interese particularmente.

 

3b) Escritorio

Algo muy importante a tener en cuenta, es que todo lo relativo al escritorio se modifica en /etc/skel/Escritorio/ , esa carpeta contiene un esqueleto de el o los escritorios que serán configurados para cada usuario del sistema. Es decir que todo lo que hagamos ahí, será copiado cada vez que se inicie el sistema Live o cuando creemos otro usuario.

Por ejemplo, en Huayra encontramos:

ayuda-mate.desktop      huayra-chat.desktop           huayra-tda.desktop
huayra-bullets.desktop  huayra-flash-install.desktop  www-browser.desktop

Son los iconos que lanzan aplicaciones, en mi caso quité huayra-flash-install.desktop por ser una sugerencia a instalar software privativo/peligroso.
3c) Configurar GRUB para que no inicie Linux con el generador de números al azar de INTEL y la NSA

No es un paso obligatorio, pero te dará más seguridad al no usar la instrucción de la agencia de espionaje en tu sistema para cifrar datos. Es decir: será menos probable que la NSA te espíe. Entonces, como usuario administrador ejecutamos:

nano /etc/default/grub
Agregamos o modificamos la siguiente línea:
GRUB_CMDLINE_LINUX=”nordrand”
Guardamos con control+o y salimos con control+x.
3d) Personalizar el fondo de escritorio

Podemos hacer 1000 modificaciones a nuestra nueva distro, pero algo que le dará identidad es el fondo de escritorio, en Huayra o Lunar, esto se encuentra dentro del directorio: edit/usr/share/images/huayra-desktop/ y posee los siguientes archivos:
huayra-login.jpg  huayra-splash.png  huayra-syslinux.png  huayra-wallpaper.png

Podrías reemplazarlos con tus propios diseños, sólo tené en cuenta el formato de cada uno (resolución y extensión .png o .jpg) para que luego no existan mayores problemas. Un buen programa es GIMP, otro interesante es Inkscape para diseño vectorial.

 

3e) Para usuarios avanzados/curiosos: lógicamente podríamos iniciar una sesión de escritorio dentro el nuevo sistema y realizar cualquier cambio de modo gráfico como si la distro estuviera ya terminada y andando. Para eso es prudente copiar nuestra configuración de Xorg dentro del nuevo sistema, o quitar la existente con el fin de evitar cuelgues… también es prudente utilizar la misma distro como sistema host y sistema a modificar, porque de lo contrario es posible que también se quede congelado el sistema.
Para iniciar una sesión de escritorio, podríamos copiar antes el /etc/skel a /root/Escritorio (cualquier cosa que de allí nos interese…) instalar xinit (apt-get install xinit), presionar control+alt +F1, loguearnos como root y luego ejecutar algo así:

startx — :4 vt12

Si tenemos suerte, estaremos dentro de un entorno de escritorio predefinido y podremos divertirnos un rato: queda en vos experimentar.

 
4) SALIR de nuestro nuevo sistema: volver atrás al sistema de siempre para poder recomprimir los archivos y crear la imagen ISO; ejecutamos:

cd /
aptitude clean
rm -rf /tmp/* ~/.bash_history
rm /etc/resolv.conf
rm /var/lib/dbus/machine-id
rm /sbin/initctl
dpkg-divert –rename –remove /sbin/initctl
dpkg -l > packages.txt
umount /proc
umount /sys
umount /dev/pts
exit
6) Prepararse para Remasterizar (finalizar la nueva distribución GNU+Linux)

sudo umount edit/dev
sudo mv edit/packages.txt extract-cd/live/

* dentro del directorio nueva_distro ejecutamos:
sudo touch extract-cd/live/filesystem.manifest
sudo chmod a+w extract-cd/live/filesystem.manifest
sudo chroot edit dpkg-query -W –showformat=’${Package} ${Version} ’ > extract-cd/live/filesystem.manifest
sudo cp extract-cd/live/filesystem.manifest extract-cd/live/filesystem.manifest-desktop
sudo sed -i ‘/ubiquity/d’ extract-cd/live/filesystem.manifest-desktop
sudo sed -i ‘/live/d’ extract-cd/live/filesystem.manifest-desktop
7) Modificar la pantalla de inicio del Live-USB/DVD para que hable de nuestra distro

En el directorio extract-cd/isolinux/ hay varios archivos.cfg, los podés editar con nano o cualquier otro editor de textos para que representen la identidad de lo que estás haciendo.
También se encuentra ubicada una imagen llamada extract-cd/isolinux/splash.png que podría ser fácilmente reemplazada por un diseño propio, solamente tiene que ser en 640×480 y en formato png.

8)  Comprimir el sistema de archivos:

sudo rm extract-cd/live/filesystem.squashfs

sudo mksquashfs edit extract-cd/live/filesystem.squashfs

(esa acción es crucial y tardará un buen tiempo…)

Darle un nombre a la imagen:
nano extract-cd/README.diskdefines

9) Remover el viejo md5sum.txt y hacer uno nuevo:

cd extract-cd
sudo rm md5sum.txt
find -type f -print0 | sudo xargs -0 md5sum | grep -v isolinux/boot.cat | sudo tee md5sum.txt

* si trabajamos con Huayra, conviene borrar algunas cosas no libres:

rm -f -r pool/contrib/l/linux-wlan-ng/
rm -f -r pool/non-free/*
10) Finalizar y crear la imagen ISO de nuestro nuevo sistema:

sudo genisoimage -D -r -V “Nombre_y_version” -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o ../Nombre_y_version.iso .
11) Testear la ISO: en una primera instancia no es mala idea ahorrarse el quemar un DVD o crear un USB Live de gusto, para eso podríamos utilizar QEMU, un emulador que nos permite correr el nuevo sistema dentro de nuestro sistema.

 

apt-get install qemu

qemu -cdrom nombre_del_archivo.iso

Si todo sale bien, veremos la pantalla de bienvenida y luego se cargará el sistema… a veces QEMU no es muy confiable, por lo cual si vemos algún error demasiado raro (el escritorio no se carga, etc.), convendrá hacer las cosas bien y quemar un DVD (yo uso k3b) con nuestra imagen ISO o grabar un USB Live mediante Unetbootin.

En fin, eso es todo, se trata de muchos comandos pero les garantizo que funciona y sólo necesitan tener ganas para lograrlo,

¡FELIZ HACKEO!


Palabras claves
publicado por alonsoclaudio a las 20:35 · Sin comentarios  ·  Recomendar
 
Más sobre este tema ·  Participar
Comentarios (0) ·  Enviar comentario
Enviar comentario

Nombre:

E-Mail (no será publicado):

Sitio Web (opcional):

Recordar mis datos.
Escriba el código que visualiza en la imagen Escriba el código [Regenerar]:
Formato de texto permitido: <b>Negrita</b>, <i>Cursiva</i>, <u>Subrayado</u>,
<li>· Lista</li>
CALENDARIO
Ver mes anterior Agosto 2017 Ver mes siguiente
DOLUMAMIJUVISA
12345
6789101112
13141516171819
20212223242526
2728293031
BUSCADOR
Blog   Web
TÓPICOS
» General (2606)
NUBE DE TAGS  [?]
SECCIONES
» Inicio
ENLACES
MÁS LEÍDOS
» Cómo espiar WhatsApp
» Cómo usar Metashield protector for Client y por qué utilizarlo
» Ejecución remota de código arbitrario en OpenSSH
» Ganar dinero con 1.200 Millones de identidades robadas
» Hardware y sus 4 Funcionamientos Basicos y Principales en una Computadora
» #Phishing masivo a #BancoFrances, #PagoMisCuentas y #Movistar (110 afectados en 4 horas)
» Redes de la Deep Web: CJDNS y la Red Hyperboria
» Unidad Central de Procesamiento CPU
» Vulnerabilidad en Youtube permitió borrar cualquier video
» Wassap, la aplicación que permite usar WhatsApp desde la PC
SE COMENTA...
» Cómo espiar WhatsApp
15 Comentarios: lucia, wilson, spider hackers, [...] ...
» SoftPerfect WiFi Guard permite saber quién esta conectado a mi WiFi
1 Comentario: carlos lopez
» Analizando el LiveBox 2.1 de Orange
2 Comentarios: Nadie, brahim
» Antenas WiFi de gran potencia. Enlaces a 1.000 Km.
2 Comentarios: julio enoy, julio enoy
» Cómo liberar software – guía para principiantes :)
1 Comentario: seo plugin
SOBRE MÍ
FOTO

Prof. Claudio Enrique Alonso Alvite



» Ver perfil

AL MARGEN
Escuela de Educacion Secundaria Tecnica N 8 de Quilmes
(Técnicos en Informática Personal y Profesional)
FULLServices Network | Blogger | Privacidad