Para encontrar archivos en lugar de comandos consulte el Capítulo 3.25.
Raspberry Pi a veces puede funcionar un poco lento, por lo que desea ver qué está acaparando el procesador.
Utilice el Administrador de tareas, lo encontrará dentro del menú de inicio en el grupo de programas Herramientas del sistema (Figura 3.8).
Figura 3.8. Administrador de tareas.
El Administrador de tareas le permite ver cuánta CPU y memoria se está utilizando. También puede hacer clic con el botón derecho del ratón en un proceso y seleccionar la opción para eliminarlo en el menú emergente.
Los gráficos de la parte superior de la ventana muestran el uso total de la CPU y la memoria. Los procesos se enumeran debajo, y puede ver la CPU que cada uno está utilizando.
Si prefiere hacer este tipo de cosas desde la línea de comandos, utilice el comando top de Linux para mostrar datos similares sobre el procesador y la memoria y los procesos que utilizan más recursos (Figura 3.9). Puede utilizar el comando kill para detener un proceso. Tendrá que hacerlo como superusuario.
En este caso, puede ver que es un programa de Python que utiliza el 97 % de la CPU. La primera columna muestra el ID del proceso (2447). Para detener este proceso, introduzca el comando:
$ kill 2447
Es posible eliminar procesos vitales del sistema operativo de esta manera. Si lo hace, apagar y volver a encender su Pi restablecerá las cosas a la normalidad.
Figura 3.9. Utilizar el comando top para ver el uso de los recursos.
A veces, es posible que tenga un proceso en ejecución que no sea visible inmediatamente cuando utilice top. Si este es el caso, puede buscar todos los procesos que se ejecutan usando el comando ps y canalizando (Capítulo 3.32) los resultados con el comando grep, que buscará los resultados y resaltará los elementos de interés.
Por ejemplo, para encontrar el ID del proceso de Python que acapara la CPU, ejecutaríamos el siguiente comando:
$ ps -ef | grep "python"
pi 2447 2397 99 07:01 pts/0 00:00:02 python speed.py
pi 2456 2397 0 07:01 pts/0 00:00:00 grep --color=auto python
En este caso, el ID del proceso del programa speed.py de Python es 2447. La segunda entrada en la lista es el propio proceso del ps.
Una variación en el comando kill es el comando killall. Utilícelo con precaución, ya que elimina todos los procesos que coinciden con su argumento. Así, por ejemplo, el siguiente comando eliminará todos los programas de Python que se estén ejecutando en Raspberry Pi:
$ sudo killall python
Puede consultar las páginas de la documentación para top, ps, grep, kill y killall. Puede verlas escribiendo man seguido del nombre del comando, como se muestra aquí:
$ man top
Ha descargado un archivo comprimido y desea descomprimirlo.
Dependiendo del tipo de archivo, necesitará utilizar los comandos tar o gunzip.
Si el archivo que desea descomprimir solo tiene la extensión .gz, puede descomprimirlo usando el comando:
$ gunzip myfile.gz
También puede encontrar archivos (llamados tarballs) que contienen un directorio que ha sido archivado con la utilidad de Linux tar y luego son comprimidos con gzip en un archivo con un nombre como myfile.tar.gz.
Puede extraer los archivos y las carpetas originales de un tarball utilizando el comando tar:
$ tar -xzf myfile.tar.gz
Puede obtener más información sobre tar desde las páginas de la documentación, a las que puede acceder mediante el comando man tar.
Ha conectado un dispositivo USB y quiere asegurarse de que Linux lo reconoce.
Utilice el comando lsusb. Esto mostrará todos los dispositivos conectados a los puertos USB de su Raspberry Pi:
$ lsusb
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 004: ID 15d9:0a41 Trust International B.V. MI-2540D [Optical mouse]
Este comando le indicará si un dispositivo está conectado o no, pero no garantiza que esté funcionando correctamente. Puede haber drivers para instalar y cambios de configuración para hacer en el hardware.
Para obtener un ejemplo de uso de lsusb al conectar una webcam externa consulte el Capítulo 4.6.
Desea crear rápidamente un archivo con algo de texto o grabar una lista de directorios en un archivo.
Utilice el comando > para redirigir la salida que aparecería en la línea de comandos.
Por ejemplo, para copiar una lista de directorios en un archivo llamado myfiles.txt, haga lo siguiente:
$ ls > myfiles.txt
$ more myfiles.txt
Desktop
indiecity
master.zip
mcpi
Puede usar el comando > en cualquier comando de Linux que produzca una salida, incluso si está ejecutando, por ejemplo, un programa de Python.
También puede usar el comando opuesto (<) para redirigir la entrada del usuario, aunque esto no es tan útil como >.
Para utilizar cat para unir varios archivos consulte el Capítulo 3.31.
Usted tiene un número de archivos de texto y desea unirlos en un archivo grande.
Utilice el comando cat para concatenar un numero de archivos en un archivo de salida (output). Por ejemplo:
$ cat file1.txt file2.txt file3.txt > full_file.txt
Unir archivos es el verdadero propósito del comando cat. Puede proporcionar tantos nombres de archivos como desee, y todos se escribirán en el archivo al que los dirija. Si no redirecciona la salida, aparecerá en la ventana del terminal. Si son archivos grandes, puede tardar.
Consulte también el Capítulo 3.8, donde se utiliza cat para mostrar el contenido de un archivo.
Desea utilizar la salida de un comando de Linux como entrada de otro comando.
Utilizar el comando pipe, que es el símbolo de barra (|) en el teclado, para canalizar la salida de un comando a otro. Por ejemplo:
$ ls -l *.py | grep Jun
-rw-r--r-- 1 pi 226 Jun 7 06:49 speed.py
Aquí encontrará todos los archivos con la extensión py que también tengan Jun en su lista de directorios, indicando que fueron modificados por última vez en junio.
A primera vista, esto se parece bastante a la redirección de salida usando > (Capítulo 3.30). La diferencia es que > no funcionará si el objetivo es otro programa. Solo funcionará para redirigir a un archivo.
Puede encadenar tantos programas como quiera, como se muestra aquí, aunque no es algo que hará a menudo.
$ command1 | command2 | command3
Puede consultar el Capítulo 3.27 para un ejemplo de uso de grep para encontrar un proceso.
Véase el Capítulo 3.26 para buscar en su historial de comandos, usando un pipe y grep.
Desea ejecutar un comando, pero no quiere que la salida aparezca en pantalla.
Redireccione la salida a /dev/null utilizando >. Por ejemplo:
$ ls > /dev/null
Este ejemplo ilustra la sintaxis, pero es bastante inútil. Un uso más común se da cuando está ejecutando un programa y el desarrollador deja muchos mensajes de rastreo en su código que realmente no quiere ver. El siguiente ejemplo oculta la salida innecesaria del comando find (véase el Capítulo 3.35).
$ find / -name gemgem.py 2>/dev/null
/home/pi/python_games/gemgem.py
Para más información acerca de cómo redirigir la salida estándar, consulte el Capítulo 3.30.
Desea ejecutar un programa, pero también trabaja en otras tareas.
Ejecute el programa o el comando en segundo plano utilizando el comando &.
Por ejemplo:
$ python speed.py &
[1] 2528
$ ls
En lugar de esperar hasta que el programa haya terminado de ejecutarse, la línea de comandos muestra el ID del proceso (el segundo número) e inmediatamente le permite continuar con cualquier otro comando que quiera ejecutar. Puede utilizar el ID del proceso para eliminar procesos en segundo plano (Capítulo 3.27).
Para llevar un proceso del segundo plano al primer plano utilice el comando fg:
$ fg
python speed.py
Esto informa del comando o programa que se está ejecutando y luego espera a que finalice.
La salida del proceso en segundo plano seguirá apareciendo en el terminal.
Una alternativa para poner procesos en segundo plano es simplemente abrir más de una ventana de terminal.
Para obtener información sobre cómo administrar procesos consulte el Capítulo 3.27.
Desea crear alias para los comandos que utiliza con frecuencia.
Edite el archivo ~/.bashrc utilizando nano (Capítulo 3.7) y luego muévase al final del archivo y añada tantas líneas como desee como estas:
alias l='ls -a'
Esto crea un alias llamado l que, cuando lo introduzca, será interpretado como el comando ls -a.
Guarde y salga del archivo usando Ctrl-X y Ctrl-Y, y luego, para actualizar el terminal con el nuevo alias, escriba el siguiente comando:
$ source .bashrc
Muchos usuarios de Linux configuran un alias para rm como el siguiente para que confirme las eliminaciones.
$ alias rm='rm -i'
No es una mala idea, siempre y cuando no se olvide cuando utilice el sistema de otra persona que no tenga este alias configurado.
Para más información sobre rm, consulte el Capítulo 3.11.
Desea configurar manualmente la fecha y la hora de su Raspberry Pi, porque no tiene conexión a Internet.
Utilice el comando de Linux date.
El formato de fecha y hora es MMDDHHMMYYYY, donde MM es el número del mes, DD es el día del mes, HH y MM son las horas y los minutos, respectivamente, y YYYY es el año.
Por ejemplo:
$ sudo date 010203042013
Wed Jan 2 03:04:00 UTC 2013
Si Raspberry Pi está conectada a Internet, a medida que arranque, automáticamente establecerá la hora utilizando un servidor de tiempo de Internet.
También puede utilizar date para mostrar la hora UTC simplemente introduciendo date (fecha):
$ date
Wed Jan 2 03:08:14 UTC 2013
Si desea que su Raspberry Pi mantenga la hora correcta incluso cuando no hay red, puede utilizar un módulo de reloj a tiempo real (RTC) (Capítulo 12.14).
Desea saber cuánto espacio hay libre en la tarjeta SD.
Utilice el comando de Linux df:
$ df -h | ||||
Filesystem | Size | Used | Avail | Use% Mounted on |
rootfs | 3.6G | 1.7G | 1.9G | 48% / |
/dev/root | 3.6G | 1.7G | 1.9G | 48% / |
devtmpfs | 180M | 0 | 180M | 0% /dev |
tmpfs | 38M | 236K | 38M | 1% /run |
tmpfs | 5.0M | 0 | 5.0M | 0% /run/lock |
tmpfs | 75M | 0 | 75M | 0% /run/shm |
/dev/mmcblk0p1 | 56M | 19M | 38M | 34% /boot |
En cuanto a la primera línea de los resultados, puede ver que hay 3,6 GB de almacenamiento en la tarjeta SD, de los cuales se utilizan 1,7 GB.
Cuando se quede sin espacio en el disco es probable que obtenga un comportamiento inesperado, como mensajes de error que indiquen que no se pudo escribir un archivo.
Puede encontrar la página de la documentación para df utilizando man df.
Este capítulo contiene una serie de fórmulas para utilizar softwares preconfigurados en Raspberry Pi.
Algunas fórmulas de este capítulo están relacionadas con la conversión de Raspberry Pi a un solo uso, mientras que otras utilizan piezas específicas de softwares en Raspberry Pi.
Desea convertir su Raspberry Pi en un centro multimedia.
Para utilizar su Raspberry Pi como centro multimedia debe tener una Raspberry Pi 3 o el modelo B de la Raspberry Pi 2, ya que la reproducción de vídeo es muy intensa en los procesadores.
Puede configurar su Raspberry Pi como centro multimedia durante el proceso de instalación de NOOBS (Capítulo 1.6). En lugar de seleccionar Raspbian como la distribución a instalar, seleccione OpenELEC_Pi1 si tiene la Raspberry Pi 1 o OpenELEC_Pi2 si tiene la Raspberry Pi 2.
OpenELEC es una distribución que optimiza su Raspberry Pi como centro multimedia. Incluye el software del centro multimedia Kodi, basado en el proyecto de código abierto XBMC que fue desarrollado originalmente para convertir las consolas Xbox en centros multimedia. Desde entonces, el código ha sido llevado a muchas plataformas, incluyendo Raspberry Pi (Figura 4.1).
Figura 4.1. Raspberry Pi como centro multimedia.
Raspberry Pi es perfectamente capaz de reproducir vídeos en full HD, así como música en streaming, archivos MP3 y radio por Internet.
Kodi es una potente pieza de software con muchas características. Quizás la manera más simple de comprobar que está funcionando es poner algunos archivos de música y/o vídeo en una unidad flash USB o en un disco duro externo y conectarlo a Raspberry Pi. Debería poder reproducirlos desde Kodi.
Puesto que Raspberry Pi es probable que esté cerca de su TV, puede ver si su TV tiene un puerto USB que pueda proporcionar corriente suficiente para ejecutar Raspberry Pi. Si este es el caso, no necesitará una fuente de alimentación aparte.
Es una buena idea tener un teclado y un ratón inalámbricos, si los compra como un conjunto usarán un solo puerto USB para el dongle, ya que evitará tener los cables por todas partes. También puede comprar miniteclados con trackpads incorporados que son útiles en esta situación.
Una conexión de red por cable ofrece generalmente un rendimiento superior y mejor que una conexión WiFi, pero no siempre es posible tener Pi cerca de una toma Ethernet. Si este es el caso, puede configurar XBMC para utilizar un dongle WiFi para una conexión de red.
La configuración de Kodi es muy intuitiva. Puede encontrar las instrucciones completas sobre el uso del software en http://kodi.wiki/.
Puede agregar un control remoto IR a Raspberry Pi para controlar XBMC.
Necesita abrir procesadores de texto y documentos de hojas de cálculo en Raspberry Pi.
Raspberry Pi es, después de todo, un ordenador Linux, por lo que hay varias aplicaciones de ofimática que puede instalar para utilizar hojas de cálculo y documentos de procesador de textos.
Los programas para Raspberry Pi se descargan de Internet, por lo que necesitará tener una conexión.
Antes de instalar cualquier software nuevo, una buena idea es abrir un terminal y ejecutar el siguiente comando:
$ sudo apt-get update
Para instalar el procesador de texto AbiWord, ejecute este comando:
$ sudo apt-get install abiword
Se le pedirá que confirme la instalación escribiendo Y; después de un minuto aproximadamente la instalación estará completa. Si observa su menú de Inicio, verá una nueva sección llamada Office, donde encontrará AbiWord (Figura 4-2).
AbiWord abrirá .doc, .docx, y otros formatos comunes de documentos de procesadores de textos.
Si necesita usar una hoja de cálculo, Gnumeric es una buena opción. Instálelo utilizando el comando:
$ sudo apt-get install gnumeric
Figura 4.2. AbiWord en Raspberry Pi.