Algunos comandos obsoletos en GnuLinux y las herramientas que deberías usar en su lugar

En el desarrollo de software, las cosas cambian a una velocidad increíble debido a las mejoras en el hardware y los entornos. Por la misma razón, las herramientas cambian. En ocasiones, las antiguas no se adaptan bien a los cambios, por lo que acaban desvaneciéndose y siendo sustituidas por otras utilidades (con el punto discutible de que las nuevas herramientas son mejores que las anteriores y el clásico, si funciona no lo toques).

A continuación un puñado de herramientas antiguas que es posible que aún estés usando, otras qué deberías usar en su lugar y por qué debería cambiar a estas alternativas mejoradas que brindan la misma funcionalidad o actualizadas, por lo tanto bien mantenidas.

Parte de la filosofía Unix, y que identifica a muchos programas. Entre ellos el venerable comando grep. Puedo resumirlo en: «escribe un programa que haga una sola cosa, pero que lo haga bien y que sea universal».

egrep y fgrep

La herramienta egrep (grep extendido) usa expresiones regulares para hacer coincidir una línea. Sin embargo, egrep quedó en desuso a favor del uso de grep regular con la bandera grep -E. Por ejemplo:

$ grep -E '^[fj]' /etc/passwd
ftp:x:14:50:User FTP:/var/ftp:/sbin/nologin
user:x:1000:3000:user:/home/user:/bin/bash

Ambos ejemplos coinciden con las líneas que comienzan con la letra j o f en el archivo /etc/passwd.

Otro ejemplo de agregar una nueva bandera es fgrep. El comando grep, usa una cadena fija para hacer coincidir (sin optimizaciones, por lo que es más rápido que una expresión regular) en lugar de -E. Ha sido reemplazado por grep -F. Aquí hay una comparación:

Como vez, tiene más sentido usar flags para que una herramienta proporcione un comportamiento similar. Solo necesita saber que grep con una flag bandera puede usar expresiones regulares o realizar una búsqueda exacta.

nslookup: Vive, pero….

Seguramente alguna vez ha intentado obtener la dirección IP de un servidor como este:

Una alternativa para nslookup es dig. Aquí hay un ejemplo similar al anterior:

El modo interactivo muestra cómo obtener el registro del pointer (PTR) del mismo servidor (esta es una búsqueda inversa para obtener el nombre del servidor proporcionando la dirección IP):

El comando equivalente en dig se ve así:

El comando dig puede hacer cosas que nslookup no puede. Como solicitar una transferencia de DNS de una zona de dominio (incluidos todos los tipos de registro) para hacer una copia de seguridad de su dominio DNS:

Sin embargo, nslookup puede hacer cosas que dig no puede, como el modo interactivo amigable, que es muy útil cuando se exploran dominios DNS. También puede ejecutarse en modo no interactivo. Existe un diferencia fundamental entre ambas utilidades, dig usa las bibliotecas de resolución del sistema operativo (las bibliotecas que realizan búsquedas de direcciones en DNS) y nslookup no. Por lo tanto, las dos pueden comportarse de manera diferente al resolver direcciones.

ifconfig, netstat, route: Ip ya llego.

Puedes usar ifconfig para obtener información sobre las interfaces de red y cambiar su configuración. Sin embargo, fue reemplazado por ip. A continuación, cómo enumerar sus interfaces de red usando ip:

Por aquí te te dejo una entrada anterior que te puede servir, para poder dar solución a problemas de red en linux https://h4ckseed.wordpress.com/2020/09/14/problemas-de-red-en-linux-cli-5-al-rescate/.

Otra herramienta útil es route. Puedes usar, route -n para verificar la tabla de enrutamiento (la información sobre cómo su máquina se conecta a otras máquinas):

Pero el comando ip también puede mostrar la tabla de enrutamiento. Por ejemplo:

Otra utilidad que fue reemplazada es netstat. Con netstat, puedes ver la lista de conexiones activas, entre otras cosas. Su reemplazo, es el comando ss. Por ejemplo:

Para estos tres casos, la falta de mantenimiento fue la ruina de estas herramientas. Las herramientas más nuevas tomaron su lugar, muchas distros han desaprobado el uso de ifconfig y route a favor del paquete de software iproute2, como ArchLinux o RHEL desde la versión 7. Esta herramienta incluye soporte para todas las funciones comunes de ifconfig, route, arp y netstat. También incluye compatibilidad con la configuración de multidifusión, administración de enlaces virtuales y túneles, control de tráfico y configuración de IPsec de bajo nivel, entre otras funciones.

Recortado de de Wikipedia

Conclusión

Es una buena idea mantenerse al día con las herramientas más recientes, ya que los desarrolladores corrigen errores y agregan funcionalidades útiles que pueden no estar presentes en versiones anteriores. Se trata de ser más productivo. El software antiguo tiende a no obtener correcciones de errores. Si se dejan desatendidos, algunos de ellos podrían comprometer el sistema. De todas formas mantén al día la información que tienes sobre tus aplicaciones preferidas, y se te agrada una en especial, apoyala, mimala, quierela, y no te olvides de donar, que ayudas al developer a sobrevivir. Hasta otro post lector. Buenas vibras.

Happy Hacking!

Deja un comentario