Los 10 mandamientos del sysadmin Linux
Ahora que se acerca la semana santa… están de moda estás cosas, en unos días nos pondrán clasicos en la tele y obviamente no podían faltar, los 10 mandamientos… eso sí, en Linux que lo hace más interesante, estos son bajo mi punto de vista personal 10 puntos que sin imprescindibles para ser un buen administrador de sistemas. Espero que os agrade 🙂 si es así compartirlo sería un detalle.
I – Siempre harás backup de ficheros
Es para mi la primera regla, la fundamental la que todos debemos saber y usar, es cierto que Linux se basa en unos «pocos ficheros» que vamos a modificar por lo tanto no es nada difícil hacer algo así:
nexolinux httpd # cp httpd.conf httpd.conf-20130228
nexolinux httpd # ls
httpd.conf httpd.conf-20130228
¿te ha parecido difícil? Pues esta es de las mejores costumbres que puedes tener, una aplicación o un cambio que se hizo en el sistema no tiene porqué fallar en cuanto lo cambias, puede irse degradando, y pasadas unas horas, puedes no saber que cambios se ha hecho o como restaurarlo
II- Leeras la documentación ( RTFM Read the fucking manual! )
Linux es documentación pura y dura tenemos una maravilla que son las man pages, haciendo man «comando» podemos acceder a su documentación oficial interactivamente sin tener que recurrir a una fuente externa o abrir un navegador. Hay que saber entenderlo, quizás sea un poco lio, pero poco a poco le coges el truco y es la principal fuente de información.
Luego hay muchas páginas oficiales que te dan información excelente en inglés y a veces en castellano estos son unos ejemplos:
III- No abusarás del usuario Root
En este punto me refiero que hay temas básicos de seguridad, debemos dejar los mínimos servicios arrancados con este usuario, por poner un ejemplo, el usuario Apache se crea para gestionar el Servicio Apache que instala él mismo generalmente, si instalamos una aplicación y no tiene usuario, sobre todo una aplicación que necesita recursos de red ¿Qué haremos? efectivamente, crear un usuario y darle los permisos necesarios
Si dejamos un servicio arrancado con este usuario, lo exponemos a ataques de fuerza bruta, y como es obvio si lo perdemos, perdemos la información de ese sistema.
También podemos usar sudo para tareas específicas, que es lo que se debe hacer.
IV – Probarás configuraciones y de forma modular.
Al configurar una aplicación tenemos que modificar/retocar varios ficheros, o ir añadiendo diferentes opciones, si modificamos todo a la vez luego al tener un fallo es un caos saber que ha podido fallar, pero si hacemos cambios poco a poco y los probamos es fácil ver el comportamiento de nuestros actos, saber cuando ocurre la falla, y aprender como funciona el aplicativo.
V- Leerás en detalle los logs en busca de fallos
Una palabra que se repite día tras día en un entorno profesional en Linux es «logs» nos dan un nivel de información altísimo, pero hay que saber interpretarlo claro está y eso se hace con práctica, paciencia y mucho google. Muchos servicios se pueden modificar la información que saca el log, y tendremos que saber gestionarlo para que lo haga como nosotros queremos.
VI – Amarás la comunidad sobre todas las cosas.
Luego además de los comandos o ciertos ficheros, está Internet, En GNU/Linux hay una comunidad enorme dispuesta a resolver tus dudas, a compartir experiencia contigo para que otros aprendan o hasta nos corrijan si hay otra forma mejor para hacerlo más sencillo y efectivo. También te digo que hay que compartir con esa comunidad tu conocimiento, ¿has descubierto algo que te ha encantado usar? ¡¡ pues compartelo !! te invito a que me escribas y me lo cuentes, puede que lo veas publicado aquí
VII- Hacer Backups de todo y validar periódicamente los backups
Hablamos de backup de sistemas enteros o backups bastante grandes, no es sólo hacerlos, de vez en cuando aunque sea una vez al año, hay que comprobar que funcionarían. En aplicaciones críticas pueden hacerse estas pruebas más veces al año, pero creeme se hacen y hay que hacerlas, no veas la cara que se pueden quedar tus jefes cuando al restaurar una máquina no funciona y no parece algo fácil de solucionar.
VIII- Honrarás al scripting
Pues sí, hay que honrarle, y determinadas tareas que son repetitivas nos tienen que llevar a pesar en automatizarlas en la medida de lo posible, quizás el scripting te parezca difícil, pero a medida que sepas más comandos tienes un largo camino hecho y es todo ponerse a probar.
Recupero la frase que mencioné una vez con el comando test
“no hagas una tarea mil veces, haz un script una vez que lo haga mil veces por ti”
IX- Documentarás todo aunque sea impuro
Quizás con el mandamiento anterior hagas un script que te ha costado la del pulpo… sí pero… imagínate que meses después se modifica algo y tienes que retocarlo, se inteligente y documéntalo, en este ejemplo mi consejo sería poner comentarios en determinadas líneas como el siguiente:
### 2013-02-28 – linea que copia todos los críticos al servidor NEXOLINUX009 donde se procesan para verlos a través del Apache. ###
De no ser un script, ten documentación del funcionamiento del aplicativo, en casa empresa se usa y es vital en grupos grandes de gente, piensa que si has buscado algo en internet o te han dicho algún detalle, puedes no saber para que se usa dentro de un tiempo, o hasta otro compañero lo necesite, (y te aseguro que será así)
X- Pensarás antes de insertar un comando
¿Crees que el comando que vas a introducir hace lo que quieres? si tu respuesta es «creo que sí», piensa en el impacto de lo que pasaría si algo sale mal, para hacer algunas pruebas hay que hacerlas en un equipo adecuado, normalmente tu equipo en local en un trabajo o una máquina virtual, si no estás seguro lee la documentación, pero tomate tu tiempo, no serás mejor por teclear más y más rápido, lo serás por ejecutar menos comandos y de forma más efectiva.
Deja un comentario