Download Gentoo Linux
Document related concepts
Transcript
2009 Gentoo Linux Una pequeña guía de instalación Sin duda Gentoo se caracteriza por brindarnos un nivel de personalización a otro nivel para nuestro sistema operativo, a continuación veremos todo el proceso de construcción de éste SO, desde el particionado de nuestro disco duro…hasta la instalación de software usando una Shell gráfica, en este caso KDE. Manuel Josué Carrillo Ordoñez 200412975 Universidad de San Carlos de Guatemala, Facultad de Ingeniería Sistemas Operativos 1 15/02/2009 Que no es Gentoo… Gentoo no es igual a todas las distribuciones disponibles, llámese Suse, Ubuntu, etc.…ya que éstas se instalan de manera similar en cualquier computadora dando como resultado un sistema operativo genérico que difícilmente será el más optimizado para nuestra arquitectura en particular. Gentoo es una distribución de Linux pensada específicamente para las personas que desean construir su sistema operativo optimizado completamente para la arquitectura de su computadora, dicho proceso conlleva compilar todo el código fuente desde el núcleo del sistema o kernel hasta cualquier aplicación que se desee instalar. La compilación de todos los componentes puede resultar en horas y horas de tiempo de máquina, así que si no cuentas con dicho tiempo…instala otra distro =) Ahora, para la gente valiente que quiera construir Gentoo en su máquina, tiene dos caminos posibles: Una instalación mediante un Live CD de Gentoo. Una instalación utilizando el CD Minimal de la distribución. Una instalación mediante el Live CD puede ser hecha por cualquier Noob, así que no tocaremos dicho tema, nos centraremos mediante la instalación utilizando el CD Minimal. Dicho CD lo podemos descargar del sitio oficial de Gentoo: http://www.gentoo.org/main/en/where.xml Antes de descargar la imagen, debemos ver la arquitectura de nuestro sistema, en mi caso seleccione el CD disponible para máquinas X86, si disponemos de una arquitectura distinta será seleccionar simplemente la imagen correspondiente a la misma. Una vez tenemos el .ISO lo grabamos en un CD, les recomiendo este software: http://projects.gnome.org/brasero/ Incluido en varias distribuciones que utilizan la Shell gráfica Gnome como Ubuntu. Comienza a construir Cuando tengamos nuestro medio de instalación, configuramos nuestra máquina para que pueda iniciar desde la unidad de CD y…veremos a un amigable pingüinito en la parte superior, mas un buen número de líneas en donde se muestra la carga de todo lo relacionado con el sistema base de Gentoo: Cuando todas las herramientas necesarias sean cargadas, el siguiente paso es la creación de un esquema de particionado para nuestro disco duro, es recomendable hacer una partición para /boot, una para la raíz del sistema “/root” y una para el manejo del área de intercambio “swap”. Esquema de particionado: /boot (/dev/hda1) swap (/dev/hda2) NTFS(/dev/hda3) /root (/dev/hda4) Si no estamos seguros de que dispositivo asignar, podemos utilizar el comando #fdisk –l, el cual mostrara todos los dispositivos de almacenamiento conectados a la computadora, ya sean discos duros o La partición NTFS es la que ocupa Windows XP, la de boot será necesaria para que el sistema Gentoo pueda iniciar, la de Swap es utilizada para intercambio con la memoria, mientras que la de /root será la partición principal…en donde será construida toda la estructura de directorios de nuestro sistema Linux. El Live CD nos brinda una herramienta para poder realizar el particionado, dicha herramienta es CFDISK, acá tenemos una imagen de la misma: El uso de esta herramienta hará que la tabla de particiones sea escrita en el disco, para poder tener el esquema de particionado mencionado anteriormente. Lo que hay que tomar en cuenta: El uso de la herramienta CFDISK no debe tomarse a la ligera, ya que destruirá la tabla de particiones y con ello la asignación lógica de las particiones existentes, por ello se debe estar seguro de su uso. Hay que tener en mente que la partición “/boot” debe poder arrancar, por ello debe ser marcada como “bootable”, hay que establecer el tipo de cada partición, en este caso todas son Físicas, y por ultimo, establecer el código para la partición swap (82). Según nuestro esquema de particionado, debería verse de esta manera: Cuando nuestra tabla de particiones este lista, llego la hora de preparar las particiones para que puedan albergar un sistema de archivos, en este caso crearemos las particiones de tipo ext2 y ext3, dichos sistemas de archivos prepararán toda la estructura de i-nodos para que el sistema Linux pueda ser instalado. Comenzando con la partición de /boot: El formato puede aplicarse de la siguiente manera: #mke2fs <partición> en este caso la partición era la correspondiente a /dev/hda1, dicha partición ahora puede albergar el sistema de archivos ext2. Comando utilizado: #mke2fs /dev/hda1 Siguiendo con la partición de /root: El comando debe aplicarse casi de igual manera que para la partición de /boot, únicamente que debe especificarse un parámetro adicional para poder utilizar el sistema ext3. Comando utilizado: #mke2fs –j /dev/hda4 Finalizando con la activación de la partición SWAP El último paso para poder terminar con la fase de creación de particiones es la de la activación de la partición de intercambio SWAP. Comando utilizado: #mkswap /dev/hda2 Comando utilizado: #swapon /dev/hda2 Montar las particiones recién hechas Una vez que las particiones han sido formateadas, es necesario montarlas para poder hacer uso de ellas, acá está dicho proceso: Gentoo Stage Los diferentes Stages que existen de Gentoo son diferentes niveles de configuración y optimización que podemos dar a nuestro sistema Linux, en este caso utilizaremos el Stage 3 de dicha distribución. Como obtener el Stage? El Stage debe seleccionarse en función de la arquitectura de nuestra computadora, en mi caso seleccione el archivo correspondiente a la arquitectura X86. Dicho Stage podemos descargarla de los repositorios oficiales de Gentoo que se encuentran en servidores por todo el mundo, acá esta una lista de ellos: http://www.gentoo.org/main/en/mirrors2.xml Acá podemos ver el archivo Stage que necesitamos: El árbol PORTAGE Los usuarios que estamos acostumbrados a sistemas Linux podemos hacer la comparación con el árbol Portage a una lista de repositorios, es decir…Portage tendrá toda la estructura necesaria para poder instalar tanto aplicaciones como las diferentes dependencias que pudieran tener. Acá esta el archivo que necesitamos: Mmm…ya tengo los archivos…ahora que? Teniendo ambos archivos, el archivo Stage y el archivo Portage…procedemos a copiarlos a nuestro directorio de instalación /mnt/gentoo. Podemos utilizar el navegador Lynx para poder navegar desde nuestro sistema Linux (el que estamos usando con el CD Minimal) o podemos usar una técnica adicional, dicha técnica consiste en grabar los archivos a un dispositivo extraíble (llámese memoria USB :P), montar dicha memoria y copiar los archivos hacia los directorios de instalación. Pasos para copiarlo desde nuestra memoria USB: 1) Crear un punto de montaje para nuestra memoria USB. Comando: #mkdir /mnt/memoria 2) Montar la memoria en el punto creado anteriormente. Comando: #mount –t vfat /dev/sda1 /mnt/memoria 3) Copiar el archivo Stage a /mnt/Gentoo Comando: #cp stage3-x86-2008.0.tar.bz2 /mnt/gentoo Con el archivo Stage en el directorio /mnt/gentoo, procedemos a descomprimirlo utilizando la siguiente instrucción: Comando: #tar xvjpf stage3-x86-2008.0.tar.bz2 En donde: x=descomprimir, v=que es lo que está pasando durante la extracción del paquete, j=descomprimir con bz2, p=preservar los permisos de todos los archivos, f=para poder indicar que estamos descomprimiendo un archivo. En esta etapa, tenemos ya los archivos Stage y Portage ya en el directorio de instalación, el archivo Stage ya fue descomprimido, tenemos que realizar un proceso similar para poder extraer el árbol Portage. Comando (Portage): #tar xvjf /mnt/gentoo/portage-2008.0.tar.gz –C /mnt/gentoo/usr Listo, descomprimiendo esos dos archivos, estamos listos para poder continuar con la siguiente etapa…la configuración de nuestro archivo MAKE, base fundamental para la optimización de nuestro sistema Gentoo Linux ;). CFLAGS y archivo MAKE.CONF En el comienzo de este pequeño manual de instalación se dijo que la piedra angular de Gentoo es su habilidad de poder ser optimizado para una arquitectura en particular, dicha acción se lleva a cabo mediante un simple archivo de configuración…llamado “make.conf” que se encuentra en el directorio /etc. Algunas de las cosas primordiales que podemos encontrar en el son las siguientes: CFLAGS, CXXFLAGS: Son todos los parámetros que podemos indicar para la optimización de la instalación de aplicaciones en nuestro entorno Gentoo, a un nivel más profundo podemos decir que son parámetros formales para el compilador gcc. CHOST: Esta variable define el sistema objetivo, es decir la arquitectura de la máquina en donde el sistema operativo será construido, en mi caso es i486-pc-linux-gnu, NO HAY QUE MODIFICARLA, ya que rompería la integridad del sistema, en caso de que no aparezca lo correcto es porque el archivo Stage es incorrecto. Para poder saber que parámetros debemos colocar, Gentoo ofrece mediante su wiki una página de “safe flags”, la cual podemos ver acá: http://en.gentoo-wiki.com/wiki/Safe_Cflags . Servidores de Réplica: Para poder descargar de una manera más rápida todo el software correspondiente tanto a las fuentes de Gentoo como a las aplicaciones, podemos utilizar la herramienta mirrorselect: # mirrorselect -i -o >> /mnt/gentoo/etc/make.conf Información de DNS: Es necesario copiar la información del DNS, para poder asegurarnos de que la red sea funcional dentro del entorno del sistema que estamos instalando: (La opción "-L" es necesaria para asegurarnos que no copiamos un enlace simbólico) # cp -L /etc/resolv.conf /mnt/gentoo/etc/ Montar los sistemas PROC y DEV: Esto es necesario para que toda la información correspondiente al kernel sea accesible desde el nuevo entorno de nuestro sistema operativo. # mount -t proc none /mnt/gentoo/proc # mount -o bind /dev /mnt/gentoo/dev Entrando en nuestro nuevo entorno: Antes de esta etapa, nos encontrábamos en el entorno proporcionado por el CD Minimal, ahora es necesario cambiarnos a nuestro sistema Gentoo inicializado: # chroot /mnt/gentoo /bin/bash # env-update >> Regenerating /etc/ld.so.cache... # source /etc/profile # export PS1="(chroot) $PS1" La variable USE: Dicha variable es necesaria para poder brindar nuestra personalización sobre el soporte que queramos dar sobre las aplicaciones a instalar, esto nos provee la capacidad de dar soporte únicamente a las aplicaciones que necesitamos sin tener servicios innecesarios como en un sistema genérico. Dicha variable es configurada también en el archivo /etc/make.conf (si, el mismo de las CFLAGS :P) En mi caso en particular, mi variable USE esta configurada de la siguiente manera: USE="-gtk -gnome qt3 qt4 kde dvd alsa cdr java X" El Kernel Linux Mucho se ha hablado del kernel de Linux, pero…básicamente es un componente que realiza la integración entre el hardware de nuestra máquina y el sistema operativo, dicha unión se ve mejor en la siguiente gráfica: Kernel Software Hardware Básicamente necesitamos una versión estable del kernel para poder continuar con la construcción de nuestro sistema Gentoo, para poder descargar las fuentes de dicho kernel es necesario escribir la siguiente instrucción: #emerge gentoo-sources Modos de Compilación del Kernel Básicamente hay dos formas de compilar un kernel, una es usando Genkernel…una instrucción que construirá un kernel genérico para nuestro sistema. Una opción mucho más interesante e infinitamente mejor es seleccionando los módulos necesarios para la compilación de nuestro propio kernel. El único inconveniente es que para poder realizar este tipo de compilación es necesario que tengamos un conocimiento bastante profundo del hardware de nuestra computadora. Si no seleccionamos un modulo correcto, por ejemplo el encargado de manejar los discos duros…nos encontraremos con un bello “kernel panic” y mmm…créanme, no es nada divertido =). Con un par de compiladas manuales, se va aprendiendo a seleccionar los módulos correctos :P, así que suponiendo que ya tenemos la fuente del kernel con el comando anterior, procedemos a ver el menú de configuración del mismo con la siguiente instrucción: # cd /usr/src/linux # make menuconfig Lamentablemente la selección de los módulos correctos depende de la persona que este instalando y obviamente del hardware instalado, así que aunque pusiera una lista acá, serviría de poco…porque cada maquina es una historia diferente e increíble… Acá algunas secciones vitales: Processor Type Bus Options Device Drivers (créanme, sino le echan un ojo a esta sección,….se avecinan problemas)… File Systems Networking Una vez los módulos sean seleccionados, procedemos a compilar el kernel con la siguiente instrucción: #make && make modules_install Mientras el kernel se compila, puedes ir a tomar un café o algo así… ;). Cuando por fin termine, lo único restante será copiar la imagen compilada a tu carpeta de /boot: # cp arch/i386/boot/bzImage /boot/kernel-2.6.24-gentoo-r5 El archivo fstab Este archivo contiene el punto de montaje de todas las particiones de nuestro sistema Linux, debe ser configurado para poder reconocer los diferentes sistemas de archivos que hemos dado a nuestras particiones, en nuestro caso en particular debería de quedar de la siguiente forma: /dev/hda1 /boot /dev/hda2 none /dev/sda4 / ext2 defaults,noatime swap sw ext3 noatime 12 00 01 /dev/cdrom /mnt/cdrom auto noauto,user 00 Información de Red Debemos configurar el archivo /etc/conf.d/net para que pueda darse una dirección de red a nuestra interfaz, en mi caso dicha dirección es asignada por mi router mediante el protocolo DHCP: #esto va en el archivo: config_eth0= ( "dhcp" ) dhcp_eth0="nodns nontp nonis" Luego ejecutamos esta instrucción: # rc-update add net.eth0 default para que la red se cargue al inicio del sistema. Password para el usuario Root: A estas alturas creo que todos sabemos quien es el usuario Root, pero….en fin, es el tipo encargado de todo el sistema…al cual irán los usuarios cuando algo no funcione…para establecer su password basta con escribir la siguiente instrucción: #passwd Bitácora del sistema Una bitácora instalada será una valiosa herramienta, nos proporcionará información de todo lo ocurrido en caso de falla o algo similar, podemos instalar dicha bitácora con la ejecución de lo siguiente: # emerge syslog-ng # rc-update add syslog-ng default DHCP Importante, importante, si no se instala un cliente de DHCP ahora, puede que no podamos conectarnos a internet luego, basta con ejecutar la siguiente instrucción: # emerge dhcpcd Gestor de Arranque Mmmm, quizá te estés preguntando que es un gestor de arranque, es esa pantalla bonita que aparece cuando enciendes tu PC y te muestra los sistemas operativos instalados…en este caso vamos a instalar GRUB, para ello basta con ejecutar la siguiente instrucción: # emerge grub Cuando termine, es necesario configurar su archivo de configuración, mediante lo siguiente: # nano -w /boot/grub/grub.conf Cuando el archivo anterior este configurado, debemos instalar dicho cargador de arranque en nuestro disco duro, para ellos utilizamos las siguientes instrucciones: # grep -v rootfs /proc/mounts > /etc/mtab # grub-install --no-floppy /dev/hda Listos, ya!!!! Creo que a estas alturas quieren ver algo funcionando, basta con desmontar las unidades y reiniciar el sistema: # exit cdimage ~# cd cdimage ~# umount /mnt/gentoo/boot /mnt/gentoo/dev /mnt/gentoo/proc /mnt/gentoo cdimage ~# reboot Un usuario mortal… Necesario para poder entrar al sistema con privilegios limitados, en fin…el usuario de “todos los días”: # useradd -m -G users,wheel,audio -s /bin/bash many # passwd many Password: (Introduzca la contraseña para many) Re-enter password: (Vuelva a introducir la contraseña para verificar) Listo!!!! Gentoo Funciona!!!! Si ves esta pantalla, es porque seleccionaste los módulos correctos ;): X Server: Siiiii, bonito pero….a todos nos gustan mas las Shell gráficas, así que el primer paso es configurar el Servidor X, que es el responsable del manejo y manipulación de todo el sistema gráfico de nuestra máquina. Primero: Agregar las variables necesarias al archivo /etc/make.conf. Estas son las variables en cuestión: (For mouse and keyboard support) INPUT_DEVICES="keyboard mouse" VIDEO_CARDS="sis" Luego, basta con descargar los paquetes correspondientes al servidor X: # emerge xorg-x11 Luego de mucho tiempo (y entiéndase mucho tiempo) la descarga terminara, es necesario actualizar algunas variables de entorno con las siguientes instrucciones: # env-update # source /etc/profile Luego, debemos crear un archivo de configuración para la correcta inicialización de la resolución y aspecto de nuestro entorno grafico, afortunadamente el servidor X trae una herramienta que permite crear dicho archivo: # Xorg –configure Esperando en Dios que funcione, copiamos el archivo generado a /etc/X11 para poder iniciar el modo grafico son un simple “startx”. # cp /root/xorg.conf.new /etc/X11/xorg.conf Si ejecutamos “startx” deberíamos ver el manejador de ventanas llamado twm. Acá esta una imagen de dicho sistema: Si, ya se lo que estas pensando…”tanto para esa cosa asquerosa de modo grafico!!!?” Eso pensé yo también, pero bueno…llegar a ese nivel es algo bueno, por lo menos sabes que el servidor X funciona y ya puedes instalar un gestor grafico mucho más bonito. Acá es en donde vienen las peleas clásicas entre dos de los gestores mas populares, por un lado tenemos a los fanáticos del piecito (Gnome ianos) y los amantes de los colorcitos (los KDE ianos), los dos sistemas tienen lo suyo, ambos tienen aplicaciones muy buenas… yo en lo particular he usado Gnome toda mi vida, pero instale KDE como un pequeño tributo a alguien muy especial. Lo que has de tener en mente, es que no importando que tan poderosa sea tu conexión a internet, si decides instalar KDE o Gnome…te esperan varias horas de compilación. KDE 3.5.8 Hay diversos paquetes, obviamente los mas grandes tardaran más en compilar, si quieres un entorno simple, debes ejecutar la siguiente instrucción: #emerge kdebase-startkde Luego, debes indicar que KDE es el gestor gráfico: $ echo "exec startkde" > ~/.xinitrc Ahora, un simple “startx” debe iniciar KDE, lo primero que se mostrará es un wizard llamado “KPersonalizer”, el cual nos dirá el aspecto de ventanas, etc. Sobre nuestro recién y flamante escritorio KDE. KDM KDM es básicamente una aplicación que nos permite iniciar el modo grafico desde el inicio del sistema, instalamos dicha aplicación de la siguiente forma: #emerge kdm Luego, debemos indicar que kdm es el gestor de inicio de sesión para el sistema, para ello editamos el archivo /etc/conf.d/xdm: # nano -w /etc/conf.d/xdm (Modifique la siguiente variable) DISPLAYMANAGER="kdm" Basta con agregar a xdm al nivel de ejecución por default: # rc-update add xdm default Reinicias el sistema y listo, tu nuevo KDE is up and running!!! ;) Cualquier comentario es bienvenido… [email protected]