Linux

ShareThis

Linux es un mundo muyyyy amplio un desconocido para muchos pero que ofrece una gran variedad de posibilidades de uso y funcionalidad casi idéntica a windows que es lo que la mayoría usa (en ciertos casos superior).

Así que con eta sección pretendo intentar mostrar a la gente aplicaciones, configuraciones, etc tanto por el lado de la consola como por el lado gráfico.

Más de 2 SO con lilo


Usualmente uno tiene un arranque doble de Linux con algún otro SO (usualmente windows), lo cual es configurado de manera automática por el cargador de arranque si se sigue el orden de instalación windows-linux. Sin embargo cuando se quiere instalar más de de 2 SO hay realizar una configuración de manera manual para que todos los sistemas carguen adecuadamente.

En este mini tutorial usaré lilo ya que es el cargador de arranque por defecto en Slackware además a modo de ejemplo utilizaré 3 SO: Slackware 13.1, windows 7 y Backtrack 4 R2 (que usa grub).

Instalación

Lo primero es definir las particiones que se necesitarán. De la forma más sencilla, se usarán entre 4 a 5 particiones: 1 por cada sistema operativo más una partición swap que será común a los sistemas que la requieran. En el caso de windows 7, éste agrega una partición extra de 100 mb al instalarse, lo cual es importante ya que habrá que crear particiones extendidas si se excenden las 4 particiones primarias soportadas.
Una vez que se tienen las particiones hechas, es importante anotarlas para realizar un correcto mapeo posterior y evitar problemas en el arranque. En este caso supondré que se tienen las siguientes particiones

  • /dev/sda1 <- windows(sin los 100 mb que crea el instalador)
  • /dev/sda2 <- Backtrack R2
  • /dev/sda3 <- Swap
  • /dev/sda4 <- Slackware 13.1
  • Los tipos de las particiones son irrelevantes en este caso (ext3,ext4,reiserfs,ntfs, etc)

    Ahora procedemos a instalar los sistemas. El orden que usé fue el siguiente:
    Windows se instala en primer lugar, luego Backtrack o alguna otra distribución que no sea la que contiene a lilo. Finalmente se instala Slackware, eligiendo instalar el cargador de arranque en el MBR

    Ensuciándonos las manos

    Al reiniciar se verá que se presentan sólo 2 sistemas: Linux y windows.
    Se carga linux y se procederá a realizar unas pequeñas preparaciones antes de editar lilo.conf.
    Para que lilo pueda saber dónde está la imagen vmlinuz, ésta debe estar accesible al momento de ejecutar el comando. Como probablemente no se haya configurado un acceso a la partición de Backtrack en fstab, hay que crear uno aunque sea temporal

    mkdir backtrack
    mount /dev/sda2 backtrack

    Con la partición cargada, examinamos el directorio boot para ver que archivos contiene
    ls backtrack/boot

    El resultado será algo como:
    System.map-2.6.35.8
    config-2.6.35.8
    grub
    initrid.img-2.6.35.8
    memtest86+.bin
    tmp
    vmlinuz-2.6.35.8

    ¡Bingo! tenemos la información necesaria que ahora se agregará a lilo.conf.

    lilo.conf

    Abrimos lilo.conf con nuestro editor de texto preferido

    nano /etc/lilo.conf

    Buscamos la sección que dice: #Linux bootable partition config begins y agregamos:

    image = backtrack/boot/vmlinuz-2.6.35.8
    root = /dev/sda2
    label = Backtrack
    initrd  = backtrack/boot/initrd.img-2.6.35.8

    La configuración de windows la dejamos igual y la de Slackware también. Finalmente ¡Sin desmontar la partición de la otra distro! ejecutamos

    lilo

    Y reiniciamos. Ahora se deberían ver los 3 sistemas en el cargador de arranque y todos deberían poder cargar.

    Consideraciones finales

  • No hay que olvidar incluir el initrd si la distribución lo requiere
  • No hay que desmontar la partición de la distribución que se quiere agregar a lilo antes de ejecutar lilo ya que no encontrará los archivos necesarios y el comando fallará
  • A menos que se agregue el montaje en fstab, cada vez que se edite cambie lilo.conf debe montarse la partición de la otra distribución
  • Es de perogrullo pero todo el proceso se realiza en el sistema que instala lilo (no backtrack en este caso)
  • Uso de tar

    ShareThis

    Introducción

    Tar ( t ape ar chive) se refiere a dos cosas: Una es un formato que se desarrolló hace mucho tiempo, en los inicios de UNIX con el fin de facilitar los respaldos en cinta. Para ello junta muchos archivos en uno solo, conservando su estructura de directorios y permisos entre otras cosas.
    Otra es el programa que se encarga de trabajar con archivos en formato tar.
    Actualmente su funcionalidad se ha extendido más allá del respaldo en cinta, agregando compresión (bzip2, gzip, etc) o pudiendo dirigir la salida a dispositivos, programas, otros archivos, etc.
    Un uso popular es que prácticamente todo el código fuente que se distribuye está en un formato .tar.gz .

    Compresión

    Dentro de los tipos de archivo que puede manejar tar, se encuentran:

    Para elegir cual usar, se debe pasar un parámetro que indique el método de compresión.
    La comparación entre los diferentes métodos de compresión escapa del tema del uso de esta guía

    Crear un archivo

    Si se revisa el manual de tar (man tar) se puede obtener una lista de todos los parámetros que se pueden pasar
    Una versión en línea se encuentra acá (en inglés)
    Sin embargo las opciones que son usadas más frecuentemente son para creación de archivos son :

    La sintaxis básica de tar es:

    tar (opciones) (nombre_de_archivo_resultante) (nombre_de archivos_a_comprimir)

    Como es de esperarse la opción necesaria es -c. Así si tenemos dos archivos, digamos 1.gif, 2.gif y una carpeta que se llame fotos, podemos hacer lo siguiente:

    Creamos un .tar así:

    tar -cf imagenes.tar 1.gif 2.gif fotos

    Lo que nos dará como resultado imagenes.tar.
    Si queremos agregar un archivo 3.gif a imagenes.tar hacemos:

    tar -rf imagenes.tar 3.gif

    Si queremos agregar compresión, por ejemplo usando gzip. Hacemos:

    tar -cfz imagenes.tar.gz 1.gif 2.gif fotos

    Tambien podemos usar comodines para ahorrarnos mucho trabajo en carpetas con muchos archivos. Si quisieramos hacer un archivo comprimido con bzip2 (por ejemplo) y que sólo contenga archivos .gif hacemos:

    tar -jcf imagenes.tar *.gif

    Incluso podemos fusionar (concatenar)archivos .tar para evitar tener que desempaquetarlos y reempaquetarlos. Por ejemplo si tenemos dos archivos 1.tar y 2.tar, los unimos así:

    tar --concatenate -f 1.tar 2.tar

    Así 1.tar contará con el contenido de 2.tar

    Extracción de un archivo

    Si queremos extraer los contenidos de un archivo 1.tar en el directorio actual. El comando es:

    tar -xf 1.tar

    Para archivos comprimidos en teoría basta con usar el comando anterior, sin embargo podemos especificar la compresión que se usó par amayor seguridad. POr ejemplo para un archivo 1.tar.gz, lo extraemos como:

    tar -xzf 1.tar.gz

    Si sólo queremos extraer un archivo del .tar, agregamos al final del comando el archivo que deseamos. Por ejemplo para extraer readme.txt de 1.tar, hacemos:

    tar -xzf 1.tar readme.txt

    Si en vez de extraer los archivos, sólo queremos listarlos, usamos:

    tar -tf 1.tar

    La opción -v (tanto para crear como para extraer) sirve para que el programa muestre uno por uno los archivos que va procesando y a que directorio se extraen o bien cuales se agregan al paquete. Así:

    tar -xvzf 1.tar.gz

    retornará

    1.gif
    2.gif
    3.gif
    /fotos/1.jpg

    Una opción interesante es -C, la cual permite establecer un directorio de salida para los archivos extraidos para así evitar tener que copiar el .tar respectivo a la carpeta de destino. Un ejemplo práctico es descomprimir el código fuente del kernel. El código fuente del kernel 2.6.27.7 es linux-2.6.27.7.tar.bz2. Si queremos descomprimirlo en /usr/src, usamos :

    tar -C /usr/src -xjf linux-2.6.27.7.tar.bz2

    Borrado de archivos

    Uno puede borrar archivos que estén dentro de un paquete tar (sin compresión) usando --delete. Por ejemplo para borrar 1.gif de el archivo imagenes.tar:

    tar --delete -f imagenes.tar 1.gif