10 Útiles Ejemplos de NetStat

 

¿Que es el comando NetStat?

El Comando NetStat nos permite conocer información relacionada con nuestra red, las conexiones activas tanto de salida como de entrada. Podemos conocer el protocolo que utilizan, las tablas de ruteo, estadísticas de interfaces, estado de conexión y demás. Hoy veremos 10 útiles ejemplos de NetStat para administrar mejor nuestra red en nuestro equipo.

Leer más » 3 Comentarios

Explain Shell, entendiendo cada comando (ampliación)

explain_shell_linuxhispano

Me encuentro en la red este curioso proyecto, ExplainShell.com. El proyecto, que ya nos adelantó el pasado año Manuel Ignacio mediante su entrada Aprende Shell de Ubuntu Linux con Explain Shell, se trata de un servicio en la nube que nos brinda la posibilidad de descomponer un comando y explicárnoslo paso a paso.

Es muy útil para usuarios nóveles o para los que le pica la curiosidad de cómo se haría esto o aquello por shell scripting y deciden ver el comportamiento por esta vía. Útil y curioso al mismo tiempo, en la imagen que encabeza esta entrada simplemente mostramos la descomposición del comando ping -c 3 linuxhispano.net pero las posibilidades son múltiples. Abajo algunos ejemplos: read more

Leer más » 3 Comentarios

Lo mejor de mi timeline del 24 al 30 de marzo

  • @emsLinux El reproductor de música multiplataforma #Banshee acaba de lanzar su versión 2.4
  • @M1ndCr4ck Más de 400 comandos que deberías conocer en GNU/Linux
  • @3NCR1PT4  encripta.org sigue facilitándonos compartir mensajes cifrados
  • @HackFwd HolaLabs lanza HolaIO.
  • @Korso10 Empecé a hojear este libro de Python por curiosidad y llevo un rato ya

Especial atención a Alberto Elías @aeliasnet y Luis Iván Cuende @licuende, la van liar con HolaIO.

Leer más » 1 Comentario

Comprobar estado del disco duro con S.M.A.R.T. Monitoring Tools

No es la primera vez que hablamos del estado de los discos en Linux Hispano. Lo que esta vez os planteo es una fácil y, al mismo tiempo, completa herramienta para la comprobación del estado del disco.

Es un tema que me preocupa bastante, vivo rodeado de copias de seguridad pero nunca dejará de molestarme reemplazar un disco por no conocer su estado.

Bien, la aplicación que os planteo es smartmontools, la podéis instalar desde el repositorio oficial de Debian (también en Ubuntu

ahornero@6581-D:~$ sudo apt-get install smartmontools

Una vez instalado, con el comando DF y el parámetro -h (humans) vemos las paticiones montadas en el sistema:

ahornero@6581-D:~$ df -h

Filesystem Size Used Avail Use% Mounted on
/dev/sda5 54G 3.3G 48G 7% /
tmpfs 1.5G 0 1.5G 0% /lib/init/rw
udev 1.5G 212K 1.5G 1% /dev
tmpfs 1.5G 140K 1.5G 1% /dev/shm
/dev/sda6 92G 51G 37G 58% /home

Leer más » 2 Comentarios

Controlar el estado de la batería por línea de comandos

Ayer tarde me estaba conectado de manera remota (por SSH) a mi portátil, pero estaba en otra habitación y me resultaba un poco engorroso tener que ir hacia allí simplemente para ver el tiempo de batería que me quedaba.

Fácil y sencillo. Usamos ACPI, sí, por línea de comandos. Abrimos un terminal y:

ahornero@6581-D:~$ acpi
Battery 0: Discharging, 40%, 00:44:46 remaining

Leer más » 5 Comentarios

Monitorizar disco duro en Linux

Quizás muchos de vosotros conocerán top, la herramienta para monitorizar el sistema por defecto en GNU/Linux, y es posible que en esta aplicación el único aspecto que podemos echar en falta es el hecho de poder conocer el estado de nuestros discos duros en el momento de ejecutar un programa.

Para ello, existe una herramienta llamada iotop, que con un aspecto similar a top presenta el estado nuestros dispositivos de entrada/salida, es decir, nuestro disco duro (todos los discos, particiones y, evidentemente, la swap) y todos los dispositivos de E/S que tengamos conectados. read more

Leer más » 15 Comentarios

10 buenos hábitos para manejar la consola (2/2)

Si el otro día os comentábamos los primeros 5 buenos hábitos para manejar la consola, hoy os traemos los siguientes 5 con lo que terminamos esta serie, que como es digo, es una traducción adaptada del original de la librería técnica de IBM.

6. Agrupa tus comandos en una lista

Muchas shells nos proporciona métodos para agrupar conjuntos de comandos juntos en una lista de forma que podamos pasar el total de la suma de sus salidas a través de pipelines o redirigir todos los flujos hacia el mismo lugar. Veamos dos formas de hacerlo.

Ejecutar una lista de comandos en una shell secundaria

Se usan paréntesis para encerrar una lista de comandos en un grupo simple. Haciéndolo de esta forma, los comandos se ejecutan en una nueva shell secundaria y te permite redirigir o si no, recoger la salida del conjunto, como en el siguiente ejemplo.

~ $ ( cd tmp/a/b/c/ || mkdir -p tmp/a/b/c && \
> VAR=$PWD; cd ~; tar xvf -C $VAR archivo.tar ) \
> | mailx admin -S "Archivo"

En este ejemplo, el contenido del archivo es extraído en el directorio tmp/a/b/c mientras que la salida de los comandos agrupados es enviada por correo al administrador.

Ejecuta una lista de comandos en la shell actual

Utiliza las llaves para marcar la lista de comandos que deben ejecutar en la shell actual. Estate seguro que incluyes espacios entre las llaves y los comandos (sino puedes tener problemas de interpretación). También, debes tener cuidado poniendo un punto y coma al final de la lista. Veamos un ejemplo para este caso:

~ $ { cp ${VAR}a . && chown -R guest.guest a && \
> tar cvf newarchive.tar a; } | mailx admin -S "Nuevo archivo"

7. Utiliza xargs además de find

Utiliza xargs como filtro para hacer un mejor uso de la salida de la orden find. De esta forma, podemos hacer algo con la salida de find. La estructura básica es la siguiente:

~ $ find criterio-búsqueda-archivos ruta | \
> xargs acción-a-realizar-con-salida

Podríamos usarlo por ejemplo para borrar todos los ficheros MP3 de un directorio en particular:

find /tmp -maxdepth 1 -name '*.mp3' -maxdepth 1 | xargs rm

Por ejemplo, los del directorio temporal sin mirar en subdirectorios (maxdepth es1).

8. Aprende a conocer cuando grep debería hacer la cuenta

Aunque con el parámetro -c le indicamos a grep que nos devuelva la cantidad de ocurrencias, no siempre funciona de forma correcta porque devuelve una salida por cada fichero, que a su vez muestra en diferentes líneas.

Para ello usamos:

~ $ grep -o and ruta | wc -l
3402

Siendo 3402, para este ejemplo, el número de ocurrencias.

9. Compara algunos campos en la salida, no sólo las líneas al completo

Para búsquedas en las que queremos definir que sólo haga comparaciones para ciertos campos, deberemos utilizar awk en lugar de grep. Veamos un ejemplo muy claro: estamos buscando ficheros cuya última modificación fue en diciembre. Sin embargo, tenemos un fichero de nombre “December”, aunque la modificación no sea en diciembre sí aparecería en el resultado usando grep.

~/tmp $ ls -l /tmp/a/b/c | grep Dec -rw-r--r-- 7 joe joe 12043 Jan 27 20:36 December_Report.pdf -rw-r--r-- 1 root root 238 Dec 03 08:19 README -rw-r--r-- 3 joe joe 5096 Dec 14 14:26 archive.tar ~/tmp $ read more

Leer más » 10 Comentarios

10 buenos hábitos para manejar la consola (1/2)

Esta serie de buenos hábitos al manejar la consola son una traducción adaptada aoriginal titulado: UNIX tips: Learn 10 good UNIX usage habits, aparecido en la parte de desarrolladores del portal de IBM.

1. Crea árboles de directorios de un sólo golpe

En vez de hacer:

~ $ mkdir tmp
~ $ cd tmp
~/tmp $ mkdir a
~/tmp $ cd a
~/tmp/a $ mkdir b
~/tmp/a $ cd b
~/tmp/a/b/ $ mkdir c
~/tmp/a/b/ $ cd c
~/tmp/a/b/c $

Podemos hacer directamente:

~ $ mkdir -p tmp/a/b/c

E incluso podemos hacer árboles definiendo más de una rama por nivel, con las llaves definimos más de un hijo por nivel:

~ $ mkdir -p project/{lib/ext,bin,src,doc/{html,info,pdf},demo/stat/a}

2. Descomprime indicando la ruta, no muevas primero el fichero y luego lo descomprimas
Imaginad que queremos descomprimir el fichero newarc.tar.gz en el directorio tmp/a/b/c pero tenemos dicho fichero en un directorio que no es ése. La solución más típica es mover el fichero y luego descomprimirlo. Esto supone una carga extra que en el caso de ficheros muy grandes supone un problema. Con el parámetro “-C” de tar le podemos indicar la ruta de descompresión:

~ $ tar xvf -C tmp/a/b/c newarc.tar.gz

3. Combina tus comandos con operadores de control
En una misma línea podemos utilizar más de un comando. La forma más simple de hacerlo es con el punto y coma “;”. El problema deriva cuando los comandos que ejecutas dependen el uno del otro, si el primero falla, afecta a los siguientes.

Veamos cómo solucionarlo.

Ejecuta el comando sólo si el anterior ha devuelto un cero (se ha ejecutado de forma exitosa)
Para este caso tenemos el operador &&:

~ $ cd tmp/a/b/c && tar xvf ~/archive.tar

Caso contrario
Si queremos controlar el caso en que el primer comando falle tenemos el operador :

~ $ cd tmp/a/b/c || mkdir -p tmp/a/b/c

Tenemos la opción de controlar ambos casos de una vez:

~ $ cd tmp/a/b/c || mkdir -p tmp/a/b/c && tar xvf -C tmp/a/b/c ~/archive.tar

4. Utiliza las comillas cuando trabajes con variables
Si utilizas variables, al asignarles valores alfanuméricos, texto; deberías utilizar siempre comillas dobles (a no ser que tengas razones para no hacerlo). También puedes poner el nombre de la variable entre llaves para asegurarte que se ejecutan bien las llamadas.

Veamos una serie de ejemplos y casos diferentes, con sus respectivas salidas:

~ $ ls tmp/ a b ~ $ VAR="tmp/*" ~ $ echo $VAR tmp/a tmp/b ~ $ echo "$VAR" tmp/* ~ $ echo $VARa ~ $ echo "$VARa" ~ $ echo "${VAR}a" tmp/*a ~ $ echo ${VAR}a tmp/a read more

Leer más » 8 Comentarios