Archivo de la etiqueta: linux

Listado de comandos muy útiles en Linux

Hay muchas páginas en Internet con listados de comandos básicos en Linux. Si googleáis un poco lo comprobaréis.

Sin embargo, un día me llamó la atención una en concreto en la que se incluyen no sólo los comandos básicos sino otros más avanzados. Lo que más me gusta de esta página es, por un lado, que el listado está ordenado y clasificado por secciones, siendo muy fácil de seguir; por otro lado, los ejemplos son muy muy prácticos. Lo que quiero decir con esto último es que en lugar de mostrar un comando y sus 1500 opciones (al final no te quedas con ninguna, por lo que vale de poco), te muestra los 3 ó 4 ejemplos más prácticos de ese comando.

Así, por ejemplo, vemos cómo saber cuántas horas lleva en funcionamiento nuestro disco duro:

smartctl -A /dev/sda | grep Power_On_Hours

o cuánta RAM tiene nuestro equipo:

grep MemTotal /proc/meminfo

o, por ejemplo, cómo obtener un listado ordenado por tamaño del contenido de un directorio:

du -hs /home/* | sort -k1,1h

El artículo completo con todos los comandos lo tenéis aquí.

Si estáis empezando a usar la terminal de Linux os vendrá muy bien. Si sois usuarios más avanzados, no dejéis de echarle un vistazo porque seguro que hay comandos y opciones que no conocíais.

Sincronizando directorios entre GNU/Linux y Android con BitTorrent Sync

Hace tiempo os comenté de una posibilidad «sencilla» de intercambiar ficheros entre un dispositivo Android y vuestro sistema GNU/Linux. Me refiero a aquél artículo sobre sshdroid que seguro que todos recordáis perfectamente por lo interesantísimo y útil que fue -lógico-.

Bien, pues aquí os propongo otra forma mucho más sencilla de hacerlo. Además, esta opción permite, no sólo intercambiar archivos sino que va un paso más allá permitiendo sincronizar dos directorios entre nuestro sistema GNU/Linux y nuestro dispositivo Android. Se trata de Bittorrent Sync.

En este caso, más que simplemente copiar, ofrece una solución mucho más útil: la de sincronizar dos directorios: uno en el PC y otro en el dispositivo Android.

Es algo como Dropbox, sólo que en lugar de estar el directorio en la nube, está en vuestro PC. Además, hay que tener en cuenta que Dropbox, en la parte de Android, no descarga todos los archivos, es decir, cuando accedéis a vuestra carpeta de Dropbox desde Android lo hacéis siempre a la nube; en ese momento se descargan al móvil y ya los veis. Esto lo hacen, según indican, para no consumir mucho ancho de banda 3G, pero lo cierto es que podrían dar la interesantísimoposibilidad de descargarlo todo (vía 3G o vía Wifi) para tenerlo en local en el móvil.

En cualquier caso, con BitTorrent Sync esto lo tenéis ya, es decir, tendréis una copia idéntica del directorio (con todos sus subdirectorios y archivos) en vuestro móvil.

A partir de ahí, si borráis/añadís/modificáis algún fichero tanto en el PC como en el móvil, el cambio se verá reflejado en el otro dispositivo cuando tengáis visibilidad por red, es decir, cuando estéis en la misma Wifi.

La idea básica es simple: una vez instalado el software en vuestro PC (existe para Linux, Mac y Windows), entráis en el navegador y tecleáis la siguiente URL (*):

http://localhost:8888

Es el sencillo interfaz web mediante el que seleccionaréis y compartiréis vuestros directorios. El interfaz es bastante auto-explicativo. De todas formas, sabed que cuando seleccionéis un directorio de vuestro PC que queréis compartir con Android, le tenéis que dar a «generate-secret» para que os genere una clave. Esta clave se muestra también en forma de código QR para que, una vez arrancada también la aplicación en vuestro Android, lo seleccionáis y ya tenéis sincronizados los directorios (también tenéis que elegir el directorio en vuestro Android).

Aquí tenéis un sencillo tutorial en español de cómo usarlo en Ubuntu y similares (en openSUSE el paquete «btsync» lo tenéis disponible).

Si no usáis ni Ubuntu, ni Debian, ni openSUSE… podéis instalar btsync como se indica aquí.

Si queréis saber cómo usarlo en Android, aquí tenéis info.

En general, en la web oficial tenéis más información.

 

(*) Podéis cambiar el puerto donde escuchará el interfaz web así como usuario y password de acceso en el fichero btsync.config. Más info aquí (ver «Step 3» -paso 3-).

Ventajas de usar KDE

En una charla Caldum celebrada hace unos meses, estuve explicando lo que para mí son las ventajas de usar el entorno de escritorio KDE.

Os dejo aquí la presentación para que la veáis si os interesa.

Consultar memoria usada/libre en GNU/Linux con comandos

Existe una forma sencilla de consultar la memoria ocupada/libre de nuestro sistema GNU/Linux desde la línea de comandos. Para ello tenemos el comando free.

Si lo ejecutamos nos mostrará la cantidad de memoria ocupada/libre que hay en el sistema, pero lo hará en bytes, lo cuál es difícil de leer. Para solucionar esto usaremos el parámetro -m. De esta forma (con «free -m») lo vemos en MB. Ejemplo:

Salida del comando free

Salida del comando free

Si nos fimajos en la segunda fila (-/+ buffers/cache) tenemos 1137 MB de memoria en uso y libres 2818 MB. De estos 2818 MB, 845 se están usando para caché de procesos, 72 MB para buffers de I/O y 1900 MB están libres (el sistema no los está usando para nada). Los 72 MB de «buffers» y los 845 MB de «cached» se pueden usar cuando se necesite memoria para algún programa, por lo que se pueden considerar como libres, sumándolos a los otros 1900 MB (lo que nos dán los 2818 MB que nos indica dicha línea (*)).

GNU/Linux usa toda la memoria para cachear procesos y datos de forma que se le saque partido a la misma. De esta forma se aceleran el uso del sistema y la memoria se considera libre al mismo tiempo, pasando a disposición de cualquier proceso que la necesite.

 

(*) La columna «shared», según se indica en la página del manual, es una información obsoleta y se puede obviar.

Un poco de… Emacs (V): números de línea

Introducción

En ocasiones, cuando estamos editando un archivo de texto, nos puede interesar saber el número de línea en el que nos encontramos. Si estamos tecleando código fuente nos puede interesar que se muestre a la izquierda el número de línea (aunque espero que no sea para usar instrucciones de tipo goto… :-P).

Vamos a ver cómo hacer éstas y otras funciones con los números de línea desde nuestro editor de texto favorito (emacs, por supuesto).

Contar líneas, palabras, caracteres

Emacs tiene varias funciones para contar líneas y palabras. Unas de las más útiles son:

count-lines-page

que nos muestra el número total de líneas y luego entre paréntesis muestra las líneas antes de la actual y las que hay después (ejemplo: 53 (50 + 3)).

Si queremos contar palabras y caracteres:

count-words

Esto nos indica el número de líneas, de palabras y de caracteres del documento.

Ambas funciones tienen la opción de usarse para una región (i.e., un fragmento de texto seleccionado): count-lines-region y count-words-region.

Mostrar número de línea actual

Si queremos que siempre que escribamos se muestre el número de línea en la barra de estado (modeline) podemos ejecutar en el minibuffer este comando:

line-number-mode

Esta función es de tipo toggle (conmutador), es decir, que cada vez que la ejecutamos conmuta, en este caso, el modo «número de líneas». Así, si la ejecutamos una vez nos indicará que el modo de número de líneas está activado. Si la ejecutamos otra vez lo desactiva. La siguiente lo vuelve a activar, y así sucesivamente.

Con este modo, como decimos, el número de línea aparece en la barra de estado de emacs (modeline).

Conocer la línea actual

Si queremos conocer el número de línea actual y no tenemos activado el modo «line-number-mode» visto antes, podemos ejecutar esta función en el minibuffer:

what-line

y nos lo dirá (¡qué listo que es este editor! ;-)).

También existe la función what-cursor-position, que en este caso nos dirá en qué caracter está el cursor y qué posición ocupa en el documento.

Mostrar números de línea a la izquierda

Si lo que queremos es mostrar a la izquierda el número de la línea podemos usar uno de los muchos modos que han creado otros usuarios. Aquí tenéis una buena descripción de los modos y funciones disponibles referentes a numeración de líneas en emacs. En particular, yo uso yo uso line-num.el.

Este modo muestra, a la izquierda de cada línea, el número de la misma. Si queréis usar este modo, tenéis que tener el fichero con el código (*) del mismo en el directorio $HOME/.emacs.d por un lado y, por el otro, en el fichero $HOME/.emacs.el incluir esta línea

(load "line-num.el")

Una vez hecho esto, para activar el modo en el editor, ejecutaremos esto en el minibuffer:

linum-mode

Esta función activa el modo linum, que es el que nos mostrará los números de línea a la izquierda. Si queremos desactivarlo haremos como en el caso anterior: volver a ejecutarlo, ya que es, también, una función de tipo conmutador.

Cuando usáis este modo, las líneas os aparecen así:

emacs-linum_mode

Espero que os haya resultado útil el artículo. Si tenéis alguna duda o sugerencia dejadme un comentario.

 

(*) Emacs es un editor extensible, al que se pueden añadir infinidad de funciones nuevas usando el lenguaje de programación emacs-lisp. Simplemente cargando al inicio el fichero con el código fuente de dichas funciones ya las tendremos disponbiles para su uso. Asimismo, se pueden cambiar funciones, comportamientos y combinaciones de teclas para personalizarlo y adaptarlo para nuestra comodidad.