GNU coreutils 9.11 disponible: cat es hasta 15 veces más rápido

Ha visto la luz la versión 9.11 de GNU coreutils, la suite de herramientas básicas para la shell. Es el paquete que engloba programas de terminal como cat, cut, echo, ls… Estos programas son básicos para armar casi cualquier shell script o para darle salida a la terminal.

Una de las novedades más significativas es que ahora al correr sobre el kernel Linux, el comando cat optimizará las operaciones IO. La consecuencia de esto es que, según los benchmarks, puede ser hasta 15 veces más rápida. Otros comandos, como wc, también ven incrementada su velocidad en menor medida.

coreutils es portable y se puede instalar en prácticamente cualquier sistema operativo y es uno de los paquetes de GNU que definen por qué se dice GNU/Linux y no simplemente Linux. Sin embargo, últimamente se está haciendo un escrutinio muy intenso a su existencia. Ubuntu lleva un par de versiones apostando por coreutils-rs, un proyecto que ha reescrito todos los programas que conforman la suite, pero en Rust.

GNU nano 9 ya disponible

Nano 9, la última versión del editor de textos de GNU, ha visto la luz. Del anuncio de novedades, los cambios más interesantes tienen que ver con el desplazamiento lateral: hay un nuevo modo de desplazamiento por defecto. Cuando el cursor llegue al límite derecho de la pantalla, la ventana del editor hará scroll de otro modo para no perder el cursor con lo que estabas escribiendo. También hay nuevos atajos de teclas que se pueden usar para mover horizontalmente el área de escritura a la derecha o a la izquierda.

Otra de las novedades para quien use GNU nano con un ratón es que ahora será posible tratar el borde derecho de la terminal como una barra de scroll si el ratón está activo, permitiendo navegar rápidamente por el documento de forma vertical.

passwd: todo lo que debes saber

Un tutorial para poder utilizar el comando passwd que puede ayudar a las personas que recién llegan a UNIX.

El post en el que explicaba cómo recuperar la contraseña de Debian me dio la idea de profundizar más en el funcionamiento del comando passwd, ya que tiene varias formas de operar según cómo se llame a este comando.

passwd sirve para cambiar la contraseña de una cuenta. Si ejecutas el comando normal en tu terminal, por ejemplo, passwd, bajo tu propia cuenta de usuario solo podrás cambiar tu propia contraseña. Sin embargo, el auténtico poder de este comando está en invocarlo como superusuario (es decir, como root). Cuando la cuenta root ejecuta este comando, puede cambiar cualquier contraseña: la suya o la de otra cuenta.

Cuando invoques passwd con una cuenta normal, lo primero que hará es pedirte la contraseña actual, y así lo veremos cuando dice Current password. Aquí tenemos que meter la contraseña que tenemos ahora mismo. Esto es una medida de precaución para asegurarse de que un script automatizado no trata de cambiar nuestra contraseña sin permiso.

Ten en cuenta que cuando escribas una contraseña, no la verás por pantalla. Igual que pasa con el comando sudo, no habrá feedback. Ni si quiera unos asteriscos. Cuando empieces a escribir la contraseña, hazlo con determinación y no te detengas a medio de teclearla, para no cometer errores.

Después de escribir la contraseña actual y pulsar Enter, el sistema nos preguntará por la contraseña nueva que queramos establecer. En total la tendremos que escribir dos veces, porque nos pedirá confirmación. Así, si la hemos escrito mal, nos avisará para no bloquear nuestro sistema.

$ passwd
Current password:
New password:
Retype new password:
passwd: password updated successfully

Sobre esto, varias notas extra:

  • La configuración del sistema operativo podría traer reglas adicionales que pueden impedir que se guarde la contraseña. Por ejemplo, es posible que rechace cambiar la contraseña si no tiene un número mínimo de caracteres, o incluso si no junta alguna mayúscula o dígito.
  • Es posible que si pones la misma contraseña como nueva contraseña, te lo rechace y te diga que es la misma contraseña de todos modos.

Por último, el auténtico poder de este comando está en lanzarlo como root. Si lo hacemos podremos cambiar la contraseña de cualquier usuario si lo especificamos como parámetro al lanzar el comando. En este caso, de hecho, passwd no preguntará por la contraseña, lo que le convierte también en el comando ideal para usar si tenemos que recuperar una contraseña en concreto:

# passwd ana
New password:
Retype new password:
passwd: password updated successfully