Las personas son criaturas de hábito. Esa afirmación tiene connotaciones buenas y malas. Lo bueno es que tendemos a hacer las cosas de la misma manera cada vez que las hacemos. Lo malo es que no solemos aventurarnos a salir de nuestras rutinas. Esa rutina mantiene los cambios constantes y las sorpresas al mínimo. Lo último que cualquier administrador de sistemas quiere escuchar a otro administrador de sistemas decir "Vaya". Pero, esa es otra historia. El tema de hoy son los comandos desconocidos. Seis comandos desconocidos para ser exactos. Creo que le gustarán porque son útiles y están fuera de la visión periférica de la mayoría de los administradores de sistemas. Se presentan en orden alfabético.
[ También te pueden interesar:11 comandos de Linux sin los que no puedo vivir ]
1. ca (Contabilidad)
El comando de contabilidad de usuario, ac
, proporciona al administrador del sistema estadísticas de tiempo de conexión para todos los usuarios del sistema tal como se lee en /var/log/wtmp
expediente. Esto es útil si un administrador de sistemas o un administrador desea registrar el tiempo de conectividad de un usuario en un sistema. Por supuesto, solo realiza un seguimiento de la conectividad y no de la actividad, así que no suponga que un usuario que se muestra como conectado durante seis horas en realidad ha trabajado las seis horas completas en una tarea en particular.
Cualquier usuario puede ejecutar el ac
dominio. Las opciones más útiles para ello son -dp
. El -d
La opción muestra los "totales diarios" del tiempo de conexión. El -p
La opción proporciona estadísticas de conexión por usuario. Puede usar las opciones individualmente o combinadas para dar un análisis más detallado.
$ ac -d
Apr 21 total 8.16
Apr 26 total 119.99
Apr 27 total 18.41
Today total 0.06
$ ac -p
bob 2.28
root 140.48
khess 3.87
total 146.62
$ ac -dp
root 8.16
Apr 21 total 8.16
root 119.99
Apr 26 total 119.99
root 12.33
bob 2.28
khess 3.80
Apr 27 total 18.41
khess 0.12
Today total 0.12
Como puede ver, el ac
El comando le proporciona información interesante y útil sobre la conectividad. La estadística más reveladora de la pantalla anterior es cuánto tiempo de conectividad ha registrado el usuario raíz. Las implicaciones son que un administrador de sistemas ha iniciado sesión en un sistema mientras estaba fuera o ha habido una brecha de seguridad. En ambos casos, la situación debe investigarse más a fondo.
2. delv
Once, doce, excavar y profundizar o eso dice la canción de cuna. Parece encajar con el hecho de que dig
y delv
ambos están relacionados con DNS, así que voy con eso. El delv
el comando está relacionado con dig
y nslookup
pero profundiza más en el registro de DNS no solo enviando una consulta de DNS sino también validándola.
Es probable que reciba muchas respuestas sin firmar mensajes en sus respuestas. Si una zona DNS no incluye registros DS (requeridos cuando (Seguridad de DNS) DNSSEC está activado), se supone que es DNS sin firmar en lugar de DNSSEC. Las respuestas se dan como totalmente validadas, sin firmar o no válidas. Si no especifica un servidor DNS en su consulta, delv
utiliza los de su /etc/resolv.conf
local . Si un registro no es válido, delv
normalmente da una razón de por qué el registro no es válido.
No pretendo conocer todos los detalles de DNSSEC o delv
, solo sé para aquellos que necesitan saber, es un comando muy útil. Aquí hay tres ejemplos de prácticas delv
uso. El primero es un ejemplo de un dominio completamente validado, dnsworkshop.org.
$ delv dnsworkshop.org mx +multi
; fully validated
dnsworkshop.org. 3600 IN MX 10 smtp5.strotmann.de.
dnsworkshop.org. 3600 IN MX 200 smtp3.strotmann.de.
dnsworkshop.org. 3600 IN RRSIG MX 8 2 3600 (
20210530204044 20210430195221 63654 dnsworkshop.org.
t+sjQNNTOD0q3cCAqUlmzs2OaRapez++9HnjQ0zbYYP7
go3pu6xUjFmGP1OrDhI+Udhfma1BGxqmHTwHo7UotXDx
S9emNuDZVESV6D07HxHbhNqFYjt2jHc8dpLtKjAOmWpA
Lf8fhHRjfNpkng5zoTBKLmghWlLnBPpXy0p6gU8= )
El segundo, uno sin firmar, que quizás es más común de ver:
$ delv pbs.org mx +multi
; unsigned answer
pbs.org. 300 IN MX 10 mxb-00303201.gslb.pphosted.com.
pbs.org. 300 IN MX 10 mxa-00303201.gslb.pphosted.com.
El tercero es un ejemplo de un dominio "estacionado".
$ delv sillygoose.org mx +multi
;; resolution failed: ncache nxrrset
; negative response, unsigned answer
; sillygoose.org. 300 IN \-MX ;-$NXRRSET
; sillygoose.org. SOA ns1.namefind.com. dns.jomax.net. 2019022600 28800 7200 604800 300
Por favor, siéntase libre de explorar delv
más para todas sus necesidades de DNS y DNSSEC.
3. directorio
No, este no es uno de mis chistes malos de papá. El dir
El comando es real. Sí, es realmente una copia del ls
comando pero es para aquellos de ustedes que pueden escribir accidentalmente dir
en lugar de ls
porque ha trabajado con la línea de comandos de Microsoft Windows y no puede dejar el hábito.
$ ls -la /usr/bin/dir
-rwxr-xr-x. 1 root root 143368 Apr 14 2020 /usr/bin/dir
$ ls -la /usr/bin/ls
-rwxr-xr-x. 1 root root 143368 Apr 14 2020 /usr/bin/ls
Y, no, no es un enlace duro. Los dos comandos tienen diferentes números de inodo. Por favor, prueba eso si no me crees.
4. dos2unix
Aquí hay otro comando que intenta ayudar con la compatibilidad entre plataformas. Me ha pasado más veces de las que puedo contar que creo o recibo un archivo creado en Microsoft Windows que parece fallar si lo uso en Linux. Los archivos de texto suelen tener caracteres de "control" invisibles al final de las líneas que impiden el análisis en Linux. Aquí es donde el dos2unix
El comando se apresura a arreglar esas cosas. Dos2unix
elimina esos ^M y ^V caracteres de control ubicados al final de las líneas que puede ver cuando vi
/vim
un archivo. Claro, puede eliminarlos si sabe cómo reemplazar globalmente dichos caracteres con vi
, pero de lo contrario es un fastidio.
one^M^V
two^M^V
three^M^V
four^M^V
five^M^V
o
one^M
two^M
three^M
four^M
five^M
Estos caracteres de "control" a menudo aparecerán en un color diferente que no puedo reproducir aquí. El dos2unix
el comando las quita por ti. Antes de descubrirlo, tuve que ingresar y eliminarlos manualmente con una macro de reemplazo global o usar sed
en la línea de comando.
5. doblar
El fold
El comando es nuevo para mí, pero es útil para aquellos de nosotros que tendemos a escribir líneas muy largas de código o documentación dentro de un archivo. Este comando tiene un solo propósito:"ajustar cada línea de entrada para que se ajuste al ancho especificado (desde la página del manual de plegado)". En otras palabras, si tiene una limitación de 80 caracteres en un sistema de gestión de contenido (CMS) o visualización, entonces puede ajustar el ancho de un archivo al plegar en el carácter 80. El plegado de 80 caracteres es el predeterminado.
$ cat test.txt
This is a folding test.
obomb9jdf;amfd;asmf;dasjpsdaoddsofdsfmdsfmdsofsdjsdmfl.dsfmsdhsdlfsdlfjmds.fmsd.fndsdjdsf;djs;fmdslfmdslfm.dsfsl
$ fold test.txt
This is a folding test.
obomb9jdf;amfd;asmf;dasjpsdaoddsofdsfmdsfmdsofsdjsdmfl.dsfmsdhsdlfsdlfjmds.fmsd.
fndsdjdsf;djs;fmdslfmdslfm.dsfsl
El fold
El comando no vuelve a escribir el archivo. Si ejecuta cat test.txt
, la salida se ve igual que el cat
el comando anterior lo hace. Para reescribir el archivo doblado, debe redirigirlo a un nombre de archivo.
$ fold test.txt > folded.txt
$ cat folded.txt
This is a folding test.
obomb9jdf;amfd;asmf;dasjpsdaoddsofdsfmdsfmdsofsdjsdmfl.dsfmsdhsdlfsdlfjmds.fmsd.
fndsdjdsf;djs;fmdslfmdslfm.dsfsl
Si no desea utilizar el valor predeterminado de 80 caracteres, puede especificar un ancho como 50 mediante -w
. opción.
$ fold -w 50 test.txt
This is a folding test.
obomb9jdf;amfd;asmf;dasjpsdaoddsofdsfmdsfmdsofsdjs
dmfl.dsfmsdhsdlfsdlfjmds.fmsd.fndsdjdsf;djs;fmdslf
mdslfm.dsfsl
Puede especificar el número de bytes o caracteres para doblar líneas largas si no le gustan las columnas. También puedes retirarte en los espacios.
6. capa zip
La zipcloak
El comando cifra el contenido de los archivos zip. El comando es fácil de usar y funciona sin problemas ni dramatismo. Por problemas y drama, me refiero a que no tiene que proporcionar muchas opciones o preocuparse por la sintaxis compleja para hacer el trabajo. Simplemente zipcloak
un archivo, proporcione una contraseña y listo. Solo puede cifrar archivos zip. No puedes usar zipcloak
para cifrar archivos tar, por ejemplo.
$ zipcloak zipfile.zip
Enter password:
Verify password:
encrypting: eight
encrypting: five
encrypting: four
encrypting: nine
encrypting: one
encrypting: seven
encrypting: six
encrypting: ten
encrypting: three
encrypting: two
$ ls
eight five four nine one seven six ten three two zipfile.zip
Cuando descomprima el archivo, se le solicitará la contraseña que utilizó cuando cifró el archivo zip.
$ unzip zipfile.zip
Archive: zipfile.zip
[zipfile.zip] eight password:
extracting: eight
extracting: five
extracting: four
extracting: nine
extracting: one
extracting: seven
extracting: six
extracting: ten
extracting: three
extracting: two
Como puede ver, zipcloak
es fácil de usar y funciona sin problemas.
[ Aprenda los aspectos básicos del uso de Kubernetes en esta hoja de trucos gratuita. ]
Resumir
Espero que encuentre estos seis comandos tan útiles y prácticos como yo. No, no cifro un archivo comprimido todos los días, a menudo no necesito convertir un archivo de texto creado en Windows a uno compatible con Unix, y ciertamente no tengo la necesidad de doblar un archivo sino una vez o dos veces al año, pero cuando necesito estos servicios, los necesito. Y necesito que estén libres de problemas, que son estos. No hay un montón de opciones para ninguno de ellos ni son engorrosos de ninguna manera. Estos seis comandos son excelentes para agregar a su caja de herramientas personal de administrador de sistemas.