Todo lo que necesitas saber para una certificación Linux

Una de las partes más importantes en aquellos que se enamoran del mundo GNU/Linux es demostrar lo que saben, y no hay mejor manera que obteniendo y luciendo una certificación oficial sea de la propia Linux Foundation o la gran cantidad de instituciones a lo largo del mundo que las ofrecen. Vamos a comentar el programa básico antes de la obtención de la primera categoría o certificación junior.

El examen LPI 101 y LPI 102 son requisito para la certificación LPIC-1, o sea nivel junior . La parte uno y dos previas son un amplio pero importante resumen de todo un sistema UNIX. Aqui solo voy a cubrir los aspectos básicos para la primera categoría, las siguientes categorías son LPIC-2 o nivel avanzado  y LPIC-3 o nivel senior.

Categoría de Hardware

Aquí se exige a los usuarios que puedan configurar lo básico en la BIOS de una maquina x86 como deshabilitar y configurar periféricos, manejar errores y configurar sistemas para permitir el uso de teclados, por ejemplo. El uso y configuración de tarjetas de sonido, modems, uso de comandos como lspci para conocer las especificaciones del hardware pci y el conocido por todos lsusb.
Saber configurar y entender el uso de:

  • /proc/ioports
    /proc/interrupts
    /proc/dma
    /proc/pci
    /proc/dma
    /proc/interrupts
    /proc/ioports
    /proc/pci
    lspci
    lsusb

También se recomienda conocer y saber manejar herramientas para la configuración de dispositivos SATA, conocer la diferencia de dispositivos no-IDE, configurar la BIOS para arrancar con o sin dispostivos no-IDE y/o IDE.
Entre otros aspectos de hardware también exige conocer detalles de configuración de puertos seriales, modems y soporte para dispositivos USB.

La mejor forma de aprender y estar preparado para este módulo y creo que para el resto también, es conocer nuestro equipo, aquí hace falta la practica casi diaria y ser curioso, conocer y manosear nuestro sistema desde hardware y configurarlo desde software, el mejor consejo que me han dado sobre una certificación Linux es que aprenda todo a mi tiempo, sin presiones, sin pensar que tengo un examen que resolver y no trate de memorizar nada a la fuerza; he estado en el mundo GNU/Linux por pocos años, aún asi pienso tomarme otro par para aprender más y sentirme con la confianza necesaria para realizar la certificación.

Instalación de Linux y los paquetes.
Lo más básico y que lo vemos cada vez que realizamos una instalación manual de algún sistema Linux es el particionado de nuestro disco duro, este módulo exige conocer el esquema de particiones usado por Linux, como crear la swap y elegir el sistema de archivos, crear la partición de arranque, etc. El boot manager es otro tema que debemos conocer y saber usar, saber los métodos de arranque como son por CD/DVD o una memoria USB. Conocer y configurar GRUB o LILO.

Importante conocer y usar estos recursos:

  • / (root) filesystem
    /var filesystem
    /home filesystem
    swap space/boot/grub/grub.conf
    /boot/grub/menu.lst
    grub-install
    MBR
    superblock
    first stage boot loader
    /etc/lilo.conf
    lilo
    mount points
    partitions

Otra parte que incluye este módulo es el conocimiento del uso de make, para la instalación de aplicaciones desde el código fuente, debemos conocer como descomprimir hasta como modificar los archivos makefile, compilar, comprobar errores, cambiar rutas, etc. Algunas herramientas son:

  • RPM para Red Hat y DPKG para Debian y derivadas
    /usr/src/
    gunzip
    gzip
    bzip2
    tar
    configure
    make
    unpack
    configure
    /etc/dpkg/dpkg.cfg
    /var/lib/dpkg/*
    /etc/apt/apt.conf%

Comandos de UNIX y GNU

Todos los que usaron, usamos y estamos aprendiendo GNU/Linux al menos una vez en la vida escribimos estos comandos, sea un simple cd, creamos un archivo vacío con touch, usamos pwd, listamos con ls, crear o eliminar directorios, etc. Este módulo quizá sea uno de los más fáciles en este examen, aún asi vale la pena repasarlos, grabarlos en nuestra mente y nuestro corazón, el uso día a día de la terminal en lugar de la GUI hace posible que este módulo sea pan comido.
En la parte avanzada podemos notar el uso de comandos para redireccionar, crear, matar y monitorear procesos así como entender cada parámetro del comando top, saber leer los errores y las advertencias.

El uso básico de VI es contemplado también, enfocándose en comandos de edición, etc:

  • /, ?
    h,j,k,l
    G, H, L
    i, c, d, dd, p, o, a
    ZZ, :w!, :q!, :e!
    :!

Dispositivos y sistema de archivos

Aprender a configurar particiones y a editar las actuales es parte del aprendizaje de cualquier linuxero, algún día todos nosotros nos toparemos con redimensionar, eliminar y borrar alguna partición, saber las particiones de nuestro sistema con fdisk, darle formato a un disco vacío con mkfs o crear una partición de intercambio con mkswap; también este modulo se enfoca en comprobar la integridad de las particiones, monitorear espacio libre y reparar posibles errores que se presenten.

En otro apartado vemos detalles de como administrar los archivos, cambiar sus permisos y localizar los directorios importantes de la raíz del sistema.

El sistema X Window

Aqui nos adentramos a conocer el sistema X Window, instalarlo y configurarlo. Se ven cosas básicas como instalar las fuentes, configurar tarjeta gráfica y vídeo; se ve también una introducción a GNOME, KDE y el uso e instalación de un Window Manager como Openbox u otros. Algunos recursos son:

  • xorgcfg
    xorgconfig
    /etc/X11/xorg.conf XF86Setup
    xf86config
    xvidtune
    /etc/X11/XF86Config
    .Xresources
    .xinitrc
    .Xdefaults
    xhost

Examen LPI 102

La segunda parte es un poco más enfocada en módulos del kernel, algunas tareas administrativas, el genial shell scripting y un poco de seguridad del sistema. Hay un módulo que habla sobre servicios de impresión, es de los más fáciles de este examen. El módulo sobre el kernel considera que sepamos comandos básicos para entender como está estructurado, la configuración actual y versión del kernel. Se enfoca en los comandos necesarios para conocer los módulos cargados; también se adentra en el conocimiento que tengamos sobre configurar el kernel actual, recompilarlo, instalar un nuevo kernel precompilado o compilarlo a mano.
Se deben conocer estos comandos  y utilidades:

  • /usr/src/linux/*
    /usr/src/linux/.config
    /lib/modules/kernel-version/*
    /boot/*
    make
    make targets: all, config, menuconfig, xconfig, gconfig oldconfig, modules, install, modules_install, depmod, rpm-pkg, binrpm-pkg, deb-pkg
    /lib/modules/kernel-version/modules.dep
    /etc/modules.conf
    /etc/modprobe.conf
    depmod
    insmod
    lsmod
    rmmod
    modinfo
    modprobe
    uname

Manuales

Para esta parte podemos aprender mucho de nuestro sistema así como identificar los manuales más importantes para su uso cotidiano. También nos invita a conocer sobre la documentación del sistema en /usr/share/doc/ y elegir cual conservar y cual no. Hay una sección donde nos indica que debemos tener habilidad de poder buscar documentación sobre un sistema Linux en Internet.

Shell scripting

Una de las partes para algunos de lo más divertidas, para otros difícil es la programación en shell, usando en este caso BASH; invita a saber crear y configurar scripts para automatizar tareas usuales del sistema o resolver las necesidades de los usuarios. Considera que debemos conocer y saber usar comandos y utlidades como:

  • ~/.bash_profile
    ~/.bash_login
    ~/.profile
    ~/.bashrc
    ~/.bash_logout
    ~/.inputrc
    function
    export
    env
    set
    lists
    seq
    unset
    for
    while
    test
    chmod

Tareas administrativas

Como todos sabemos, un sysadmin no solo resuelve los problemas que ocurran en un equipo, el soporte técnico también considera eliminar, configurar y crear cuentas de usuario, agregar o revocar privilegios; es necesario conocer el funcionamiento y contenido de ficheros importantes del sistema. Si bien cada módulo exige un número considerable de comandos, con el tiempo, el usuario se acostumbra y puede fácilmente recordar y asociar la gran cantidad de comandos con tareas hechas rutina e incluso hacer uso de comandos combinados para una mayor eficiencia. Conocer lo siguiente:

  • /etc/passwd
    /etc/shadow
    /etc/group
    /etc/gshadow
    chage
    gpasswd
    groupadd
    groupdel
    groupmod
    passwd
    useradd
    userdel
    usermod
    /etc/profile

Fundamentos de redes

Importante no solo en una certificación de Linux, sino para toda carrera en la Informática es conocer y saber configurar los protocolos TCP, IP, UDP, conocer el uso de Ipv4 e Ipv6, resolver errores, configuraciones de redes y saber usar comandos como:

  • /etc/services
    ftp
    telnet
    host
    ping
    dig
    traceroute
    whois
    /etc/hosts
    /etc/networks
    /etc/host.conf
    /etc/resolv.conf
    /etc/nsswitch.conf
    ifconfig
    ifup & ifdown
    route
    dhcpcd
    dhclient

En este módulo puedo recomendar leerte la currícula de CISCO CCNA, que contiene lo básico de redes y un poco de WAN, Wireless y mucho más. Para mi es uno de los módulos con más teoría, puesto que para entender los comandos es necesario conocer detalles como “subneting”.

También hay un modulo sobre los servicios de red, básicamente indicando que debemos saber iniciar o detener servicios como ssh o ftp, limitar el acceso de otros servicios o incluso configurar servicios de correo o configurar Apache o algún servidor.

Seguridad

Por último pero no menos importante está el modulo de seguridad, donde podemos aprender mucho sobre servicios que controlar la seguridad del sistema, el uso del archivo shadow y psswd; también nos pide conocer el uso de nmap, para auditar y verificar paquetes, redes locales, etc. Es importante saber por ejemplo administrar el archivo psswd y también apagar servicios no necesarios.

Comentarios finales

Es posible que aún falten muchas cosas, se incluyan detalles o se remuevan de los exámenes oficiales, pero esta información da una aproximación bastante certera de lo que es un examen, o mejor dicho, los dos exámenes previos a la primer certificación Linux. Espero seguir practicando al igual que ustedes si aún no han tomado estos  exámenes, si han tenido experiencias sobre ellos o han aplicado para alguno; son bienvenidos los comentarios, aportes, aclaraciones. No solo me va a servir a mí, a todo lector que quiera adentrarse a la profesionalización de su conocimiento sobre GNU/Linux le va más que bien.