Autonomía digital y tecnológica

Código e ideas para una internet distribuida

Cómo configurar el autocompletado para git en su versión línea de comandos, en Linux claro

Imago voragine.net
[actualizado el ] • Por Enlace permanente

Personalmente uso git desde la línea de comandos. Me resulta lo más rápido: me basta dejar vim en segundo plano y commitear; también lo más ligero ya que no tengo que tener otro programa GUI abierto para git.

Para que el uso de git en línea de comandos sea aún más ágil es fundamental activar el autocompletado de comandos de git.

Para ello basta bajarse el script de bash que añade esta función al paquete básico de git, alojarlo en nuestro directorio personal o donde se quiera, y añadir la siguiente línea al archivo .bashrc ubicado en nuestra carpeta personal:

source ~/.git-completion.bash

La línea anterior añade el script de autocompletado a la configuración de bash del usuario. La ruta hasta el archivo descargado tiene que ser correcta. En el ejemplo anterior hemos guardado el script como oculto en la carpeta personal del usuario.

Instalar paquetes 32-bits en un Debian 64-bits, versión Wheezy o superior

Imago voragine.net
[actualizado el ] • Por Enlace permanente

Casi cualquier ordenador personal que puedas usar hoy tiene un procesador 64-bits. Esto incluye ordenadores producidos hace cinco, seis y quizás hasta diez años. Un ordenador con procesador de 64 bits puede hacer correr software de 64 bits y de 32 bits. Lo mismo ocurre con el software: un entorno de 64 bits acepta software de 32 bits, pero no a la inversa.

En un sistema Linux es fácil saber si nuestra máquina funciona con 32 ó 64 bits, tanto a nivel de hardware como de software.

Desde su versión 7, llamada Wheezy, Debian es multiarquitectura, y permite la instalación de programas de 32 y 64 bits simultáneamente. Si tenemos una instalación 64-bits, podemos activar el modo multiarquitectura:

su
dpkg --add-architecture i386
apt-get update

La siguiente sucesión de comandos, sugerida por alex.r.l.f en los comentarios (¡gracias!), evita problemas en algunos sistemas:

su
dpkg –add-architecture i386
apt-get update
apt-get dist-upgrade
apt-get -f install
apt-get clean

Actualizar Linux Debian Squeeze, o versión 6, a Wheezy, o versión 7

Imago voragine.net
[actualizado el ] • Por
Hace un mes que se ha liberado la nueva versión de Debian, Jessie, la número 8. Mientras tanto, yo me he dedicado a actualizar de la versión 6 a la 7: ya estoy más cerca de estar al día. Cuento aquí el procedimiento que he seguido para actualizar GNU/Linux Debian desde la versión 6, Squeeze, a la 7, Wheezy en mi portátil Lenovo Thinkpad X61S. El proceso es relativamente sencillo ya que se trata de una actualización de un sistema local; para una actualización de una máquina remota, las precauciones y la preparación del entorno de trabajo son mucho más complejas.

32 ó 64 bits: ¿qué tipo de procesador CPU y Linux tengo?

¿Tengo un ordenador con un procesador de 32 o de 64 bits? En Linux, teclea lo siguiente en una terminal:

grep flags /proc/cpuinfo

Cada línea de la salida te está dando información de un procesador: si tienes un procesador de dos núcleos, verás dos líneas. Si la salida del comando incluye lm, el procesador es de 64 bits. Por ejemplo:

flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm lahf_lm ida tpr_shadow vnmi flexpriority
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm lahf_lm ida tpr_shadow vnmi flexpriority

¿Tengo una instalación de Linux de 32 o de 64 bits? De nuevo abrimos una terminal y tecleamos:

uname -m

Si la salida es x86_64, la instalación es de 64 bits; si es i386, i486, i586 o i686, la instalación es de 32.

Por último, el comando lscpu nos da las dos informaciones juntas. Al teclear lscpu nos fijamos en las dos líneas siguientes:

Architecture:          i686
CPU op-mode(s):        32-bit, 64-bit

En este caso, tenemos un sistema de 32 bits (i686) instalado en una máquina con un procesador de 64 bits.

Cómo actualizar WordPress, instalar plugins o themes en localhost automáticamente

Imago voragine.net
• Por
WordPress se puede actualizar de dos maneras: automáticamente mediante el botón Actualizar del panel de administración, o sustituyendo los antiguos archivos por los nuevos vía FTP. Hay veces que usando el primer método, WordPress nos pide las credenciales de conexión con el servidor, y hay veces que aunque se las demos, la actualización no se produce. Esto es común en instalaciones de WordPress en localhost aunque se puede dar en cualquier servidor. Cuando esto ocurre la causa es una configuración del servidor incompatible; generalmente el problema está relacionado con los permisos y propietarios de los archivos.

Migrar grandes (y pequeñas) bases de datos, fácilmente y sin limitaciones, usando la línea de comandos

Imago voragine.net
[actualizado el ] • Por
Si se tiene acceso SSH al servidor donde queremos migrar la base de datos, recomiendo hacerlo usando únicamente comandos. La línea de comandos nos evita lidiar con las limitaciones de PHPMyAdmin, el servidor web o el navegador. Por mi experiencia, tras probar otros métodos para migrar grandes bases de datos, he comprobado que hacerlo en la línea de comandos es la manera más segura y rápida.

Canonical intenta cerrar Fixubuntu, sitio que critica Ubuntu por compartir datos de sus usuarios con otras empresas

Imago voragine.net
• Por
Hace unas semanas, Micah Lee, parte de la EFF lanzó el sitio fixubuntu, en el que advierte sobre la vulneración por parte de Canonical a la privacidad de los usuarios de Ubuntu. Además publicó un script que desactiva la búsqueda remota para recuperar la privacidad en el sistema. La respuesta de Canonical ha consistido en intentar cerrar fixubuntu, argumentando infracción a su propiedad intelectual, en vez de afrontar la crítica y solucionar el problema.

Instalar GNU/Linux desde un pendrive: cómo grabar una imagen en un USB con la línea de comandos

Imago voragine.net
[actualizado el ] • Por Enlace permanente

Hace tiempo que no utilizo CDs para instalar Linux, bien lo hago mediante arranque remoto PXE si el equipo no permite arrancar desde un dispositivo extraíble, bien desde un pendrive USB.

Esta última opción requiere preparar el dispositivo USB para que el equipo lo detecte como bootable y grabar en él una imagen del sistema que queremos instalar. Hay multitud de herramientas que hacen esto, pero todavía no he encontrado una tan fácil, rápida y eficaz como el programita cat de UNIX, disponible en todas las distribuciones GNU/Linux. Tan sencillo como ejecutar la siguiente orden como usuario root:

cat nombre.archivo.imagen.iso > /dev/sdX; sync

La X en /dev/sdX hay que sustituirla por la letra correspondiente a la unidad USB en la que se quiere grabar la imagen. Para saber cuál es la ubicación de la unidad USB se puede usar el comando df:

df -h

Cómo saber la distribución y versión de GNU/linux de una máquina

Para saber la distribución y versión de GNU/linux que está corriendo en una máquina:

$ cat /proc/version
Linux version 2.6.32-5-686 (Debian 2.6.32-48squeeze3) (dannf@debian.org) (gcc version 4.3.5 (Debian 4.3.5-4) ) #1 SMP Fri May 10 08:33:48 UTC 2013

El archivo /proc/version nos permite saber también la versión del kernel que se está utilizando (Linux version).

Contexto

Cómo interactuar con el servidor de base de datos sql mediante comandos, desde un script de bash

Imago voragine.net
• Por
Aunque generalmente nos comuniquemos con el servidor de base de datos SQL mediante PHP u otro lenguaje para generar una salida HTML, hay veces que es muy útil hacerlo usando un script de bash. Por ejemplo cuando queremos automatizar en nuestro servidor la creación de bases de datos, o ejecutar una búsqueda con reemplazo (search and replace) de un registro completo o de un cadena concreta. Para ejecutar consultas al servidor SQL en modo no interactivo, cosa que necesitamos para hacerlo desde un script, debemos acompañar la orden mysql con el modificador -e, al que daremos como valor la consulta en cuestión.