Por qué los administradores de sistemas Linux necesitan habilidades de programación


En términos simples, la administración de sistemas se refiere a la administración de sistemas de hardware y software. Algunas de las principales tareas realizadas por un administrador de sistemas incluyen agregar y quitar hardware, instalar sistemas operativos, crear y monitorear el sistema.

Un administrador del sistema también es responsable de la resolución de problemas, la documentación y, lo que es más importante, la protección del sistema. Por otro lado, la programación se ocupa de escribir scripts, programas para desarrollar aplicaciones de usuario o software.

¿Un administrador de sistemas Linux necesita conocimientos de programación? En este artículo, profundizaremos en la respuesta a esta pregunta. Explicaremos por qué el aprendizaje de conceptos de programación es importante para la administración de sistemas Linux.

Este artículo está preparado específicamente para los usuarios de Linux que aspiran a convertirse en administradores de sistemas profesionales (de ahora en adelante referidos a administradores de sistemas).

Por experiencia personal, desde que comencé a aprender y usar los sistemas operativos Linux (provenientes de Windows), siempre he creído que Linux te brinda más control sobre un sistema informático en comparación con otros sistemas operativos.

Y en segundo lugar, es el entorno más adecuado para el aprendizaje de la programación informática (lamentablemente, no entraremos en explicaciones de algunas de las razones de esto).

Técnicamente hablando, el propósito principal de la programación es crear soluciones a problemas del mundo real. Desde este punto de vista, debemos entender que conocer los fundamentos de la programación puede ayudar a los administradores de sistemas a encontrar soluciones confiables y efectivas para las tareas administrativas.

Los administradores de sistemas profesionales dedican mucho tiempo a escribir scripts, esta es una de las piedras angulares de la administración, principalmente para automatizar las tareas administrativas de rutina. Y la mayoría, si no todos, los trabajos de Linux requieren competencia en al menos un lenguaje de scripting, si no dos, y scripting es básicamente programación.

Hay varios lenguajes de scripting para Linux, pero los más populares incluyen Bash, Perl y Python (aunque muchos administradores de sistemas prefieren Python a Perl). Todos vienen preinstalados en los sistemas operativos Linux. Otra opción es Ruby, que no se usa comúnmente como sus contrapartes.

Uno de los programas más importantes de Linux es el shell (por ejemplo, bash). Es mucho más que un intérprete de comandos, el shell es un poderoso lenguaje de programación, completo con construcciones de programación básicas como declaraciones condicionales, bucles y funciones.

Con él, puede crear nuevas utilidades/herramientas de diversa complejidad, desde scripts simples con unas pocas líneas de comandos para recuperar cierta información de un sistema, realizar copias de seguridad, actualizaciones de software/sistema hasta proyectos a gran escala para administrar configuraciones del sistema, servicios, datos de un sitio completo; auditoría y escaneo de seguridad, y más.

De esta manera, los administradores de sistemas se liberan de las tareas administrativas y tienen tiempo para realizar tareas más importantes. Por lo tanto, las secuencias de comandos de shell son una parte fundamental del entorno de programación de Linux.

A veces, también se puede requerir que los administradores de sistemas realicen tareas de depuración, por lo que esto requiere la necesidad de estar familiarizado con los conceptos de programación de computadoras.

Además, la programación mejora las habilidades generales de resolución de problemas y análisis. Esto se puede aplicar significativamente en la resolución de problemas de Linux y más allá. Desarrolla habilidades de diagnóstico e identificación de problemas efectivas que son obligatorias en los entornos de TI modernos.

Dicho esto, si es nuevo en la programación en Linux, considere aprender lenguajes de scripting populares con las siguientes guías:

    1. Introducción a la programación y las secuencias de comandos de Python en Linux
    2. Comprender las sugerencias del lenguaje de secuencias de comandos de Shell básico y de Shell de Linux

    Los administradores de sistemas de Linux necesitan algún tipo de conocimiento de programación, principalmente para la automatización de tareas administrativas mediante secuencias de comandos. Es posible que no sea un programador o desarrollador experto, pero tiene habilidades en al menos dos de los lenguajes de scripting mencionados anteriormente, es muy recomendable y necesario.

    Con el rápido avance en informática y TI, también se afirma que los administradores de sistemas sin las habilidades de programación necesarias para trabajar en entornos de TI modernos o en la nube, probablemente estarán desempleados dentro de unos años (pero si esto es cierto o no, realmente es discutible).

    Nos gustaría saber de usted sobre este tema, especialmente los administradores de sistemas experimentados, compartir sus pensamientos con aquellos que aspiran a ser como usted.