Autonomía digital y tecnológica

Código e ideas para una internet distribuida

Cómo obtener el propietario de una carpeta o archivo en Bash para usarlo en un script

Para obtener el propietario de un archivo o carpeta en Linux se puede usar el comando stat, y de la siguiente manera se puede almacenar en una variable y usarlo cuando se quiera dentro de un script de bash:

owner=${stat -c '%U' /path/to/your/file}

Y para obtener de manera análoga el grupo de una carpeta o un archivo:

group=${stat -c '%G' /path/to/your/file}

Visto en el blog de Mattias Geniar.

Instalar composer 2 en Debian Buster

En Debian Buster la versión disponible de composer es la 1.8.4, en el momento de escribir este artículo:

skotperez@debian-buster:~$ sudo apt-cache policy composer
composer:
  Instalados: 1.8.4-1+deb10u1
  Candidato:  1.8.4-1+deb10u1
 Tabla de versión:
 *** 1.8.4-1+deb10u1 500
        500 http://deb.debian.org/debian buster/main amd64 Packages
        500 http://security.debian.org/debian-security buster/updates/main amd64 Packages
        100 /var/lib/dpkg/status

Cada vez más aplicaciones PHP que funcionan por ejemplo con Symfony, necesitan composer versión 2. Aunque composer 2 no está disponible en los repositorios oficiales de Debian se puede instalar fácilmente. En realidad basta con descargarlo y moverlo a una ubicación apropiada:

skotperez@debian-buster:~$ curl -sS https://getcomposer.org/installer | php
skotperez@debian-buster:~$ sudo mv composer.phar /usr/local/bin/composer2

Visto en DeveLike.

Probar el micrófono y grabar audio en Linux desde la línea de comandos

Imago voragine.net
• Por

Audio Linux Sound Architecture (ALSA) es la parte del núcleo de Linux que se encarga de gestionar el sonido en el sistema. Para facilitar la conexión con el hardware de sonido, ALSA tiene varios comandos.

Para obtener información sobre los dispositivos de captura de audio disponibles en el sistema se puede usar arecord.

Contexto

Configurar en Linux el editor de línea de comandos por omisión

Hay muchos programas que al ejecutarse en la línea de comandos usan un editor externo. Eligen el editor externo que esté configurado para ser llamado por omisión.

Para saber cuál es el editor por defecto y cambiarlo se puede usar update-alternatives:

skotperez@joy:~$ sudo update-alternatives --config editor
Existen 3 opciones para la alternativa editor (que provee /usr/bin/editor).

  Selección   Ruta                Prioridad  Estado
------------------------------------------------------------
  0            /bin/nano            40        modo automático
  1            /bin/nano            40        modo manual
* 2            /usr/bin/vim.basic   30        modo manual
  3            /usr/bin/vim.tiny    15        modo manual

Pulse <Intro> para mantener el valor por omisión [*] o pulse un número de selección:

Imprimir y escanear con la impresora Brother DCP-1610W en Linux usando CUPs

Imago voragine.net
[actualizado el ] • Por

Desde hace años uso CUPs para configurar impresoras en Linux. Mediante una interfaz web permite de manera sencilla de instalar y configurar impresoras locales y en red. Voy a usar CUPs para configurar la Brother DCP-1610W. Si no tienes instalado CUPs, puedes encontrar cómo hacerlo en esta otra entrada.

Un buen recurso para configurar impresoras, e incluso para elegir marca y modelo, es Open Printing. Es una web que recopila información sobre el nivel de compatibilidad de las impresoras con Linux, sobre qué controladores usar y cómo instalar. Open Printing nos dice que la Brother DCP-1610W es completamente compatible con sistemas Linux y recomiendo funcionar con el controlador oficial del fabricante.

Así que para configurar la impresora Brother DCP-1610W voy a usar el controlador oficial que se puede descargar de la página de Brother, como recomiendo Open Printing. Es posible descargar un paquete que contiene todos los controladores necesarios para imprimir y escanear. También es posible descargar cada controlador por separado. Al descargar cada paquete se muestran en la web las instrucciones precisas para instalar los controladores.

Anoto a continuación cómo instalar los controladores para imprimir y escanear, de manera separada, en un sistema Debian Testing Bookworm.

Maneras de vaciar y borrar un enorme archivo de varios gigabytes en Linux

Imago voragine.net
• Por

Hay veces que un archivo es tan grande que un sistema Linux no permite borrarlo con el procedimiento habitual: usando el comando rm. En una pequeña receta en Tecmin cuentan varias estrategias para vaciar un archivo y así poder borrarlo después.

Un caso típico es encontrarse con un log --un archivo de registro de actividad-- de varios gigabytes, por ejemplo, el registro de acceso del servidor web, que típicamente se llama access.log.

Cómo saber tu IP pública desde la línea de comandos

Imago voragine.net
• Por

La IP pública es aquella desde la que estamos saliendo a internet; la que conecta una red privada, como por ejemplo una red local, a la parte pública de internet. Hay muchos comandos en linux que permiten obtener este dato. El procedimiento siempre es el mismo: el comando consulta un servidor DNS, un servicio en internet, que le devuelve el dato. Personalmente prefiero usar host porque viene instalado por omisión en la mayoría de las distribuciones linux.

Gitlab en Apache2 con conexión segura sobre HTTPS usando reverse_proxy

Imago voragine.net
[actualizado el ] • Por

Explico en esta entrada cómo instalar Gitlab usando el paquete Omnibus, que es la manera más fácil de poner en marcha una instancia y mantenerla actualizada. Luego explico cómo configurar la conexión segura HTTPS usando un certificado Let's Encrypt. En mi caso la instalación se hace en un servidor Debian en el que hay más servicios funcionando bajo un servidor web Apache2. Así que configuro un proxy inverso para la conexión segura ya que el puerto 443 está siendo usando por Apache2.

Si no se está familiarizado con la generación de certificados TLS de Let's Encrypt usando certbot, es aconsejable leer antes este otro artículo.