Categorías
Software Libre

Montando Discos NFS en Arch Linux sin tiempos de espera

Contexto :

Siguiendo con la configuración de la red de la casa, tenemos :

  • Un servidor corriendo Arch, compartiendo archivos desde un disco SSD vía NFS y Samba
  • Una red gigabit por cable ethernet que asegura tasas de transferencia parecidas a un disco duro 120 Mb / s, por lo que ya no tenía sentido tener un disco rápido para cada PC, sino solo uno en el servidor.
  • A este servidor se conectan 2 PC Linux por cable, un notebook Windows y un teléfono android.

El servidor está configurado de esta manera :

[christian@lircay ~]$ cat /etc/exports
# Use `exportfs -arv` to reload.
/mnt/temp 192.168.0.0/24(rw,sync,all_squash,anonuid=1000,anongid=1000)
/mnt/datos 192.168.0.0/24(rw,sync,all_squash,anonuid=1000,anongid=1000)

Los parámetros anonuid y anongid deben ser los mismos que los del cliente. Para conocerlos escribe «id» en un terminal del PC cliente.

y por el lado del cliente tenemos para montar /etc/fstab :

192.168.0.3:/mnt/temp     /home/christian/ssd     nfs    _netdev,rw,relatime,user,noauto 0 0
192.168.0.3:/mnt/datos     /home/christian/datos     nfs    _netdev,rw,relatime,user,noauto 0 0

Problema :

Si usamos el parámetro auto, arch va intentar montar los discos en el inicio, esperando 2 minutos en el arranque .

[**    ] A start job is running for Wait for Network to be Configured (119s / no limit)

traté varias soluciones en los foros.

Solución :

Agregaremos un script en el inicio (en mi caso uso KDE Plasma) , montando los discos al inicio y ELIMINANDO el tiempo de espera :

Creamos el siguiente archivo :

nano .local/montarnfs.sh

Escribimos en él :

#!/bin/bash
set -x
sleep 3
mount /home/christian/datos &
mount /home/christian/ssd &

Lo hacemos ejecutable :

chmod + .local/montarnfs.sh

Y lo agregamos al inico de Plasma :

De esta forma los dos discos nfs quedan montados sin esperas.

Categorías
Software Libre

Instalando freedns freedns.afraid.org en Arch Linux

El servicio https://freedns.afraid.org/ nos permite obtener tener una dirección internet para nuestro servidor casero, es un servicio gratuito y nos entrega libertad para manejar nuestra información encriptada desde fuera de nuestra red doméstica.

Este tutorial debería funcionar también para otras distribuciones Linux que usan systemd.

Requisitos :

  1. Un servidor Arch configurado con con los repositorios del Aur funcionando.
  2. Abrir una cuenta en https://freedns.afraid.org/ y crear un dominio de internet dinámico. Esto es necesario porque los proveedores de internet están permanentemente cambiándonos el número IP de nuestra conexión pública.
  3. Es requisito configurar el router de nuestro proveedor internet para permitir los requerimientos al IP público de nuestra conexión sean traspasados al IP interno de nuestro servidor casero, así existe una comunicación al servidor desde el exterior. Configuras eso en la página de configuración del router (normalmente 192.168.0.1) donde dice Port Forwarding, quedando algo así :
En este ejemplo el IP del servidor interno es 192.168.0.3, y estos abriendo los puerto 80 protocolo http y el puerto 443 protocolo https, esto es solo un ejemplo, todos los router de nuestros proveedores internet son distintos.

Instalación del servicio Freedns :

1 .- Primero que hacemos es instalar el demonio de actualización del IP dinámico

yay -S freedns-daemon

2.- Traemos el link de actualización de freedns, puedes encontrarlo acá :

3.- Luego agregamos al archivo de configuración la en Enlace de actualización copiada en el punto 2:

vi /etc/freedns-daemon/urls

Iniciamos el demonio :

systemctl start freedns-daemon
systemctl enable freedns-daemon

Puedes ver si el demonio está ejecutándose y si se ha actualizado la dirección IP :

systemctl status freedns-daemon

Revisamos en el sitio freedns.afraid.org que esté actualizado.

El servidor DNS de tu proveedor internet puede demorar un par de horas en propagarse con esta configuración.

Categorías
Software Libre

Rotando videos fácilmente con ffmpeg

Para rotar y transponer un video grabado con un celular de retrato a paisaje =

ffmpeg -i nombre_video_origina.mp4 -vf "transpose=2"  nombre_video_rotado.mp4

Antes:

Después :

Parámetros de transpose =

  • 0 – Rota 90 grados en contrasentido de las manecillas del reloj e invierte verticalmente. Esto es por defecto si no se pasan parámetros.
  • 1 – Rota 90 grados en el sentido de las manecillas del reloj.
  • 2 – Rota 90 grados en contrasentido de las manecillas del reloj.
  • 3 – Rota 90 grados en el sentido de las manecillas del reloj e invierte verticalmente.
Categorías
Software Libre

Instalando Nextcloud / Owncloud : Nube Personal en Arch Linux

Contexto

Hace ya un buen tiempo venimos usando servicios en la nube para almecenar nuestros archivos : Google Drive, Onedrive o Dropbox. Estos servicio toman la información de todos para su propio beneficio, de terceros, o del gobierno.

Son servicios tremendamente útiles, y nos obligan a entregar nuestra información a grandes corporaciones con sede en EEUU.

Como cada día tengo menos confianza en nuestras instituciones (COVID, Desinformación, Sistemas de Vigilancia de datos) creo es importante entendamos lo firmado cuando aceptamos los acuerdos de privacidad :

Google

We provide personal information to our affiliates and other trusted businesses or persons to process it for us, based on our instructions and in compliance with our Privacy Policy and any other appropriate confidentiality and security measures. For example, we use service providers to help us with customer support.

We’ll process your data when we have a legal obligation to do so, for example, if we’re responding to legal process or an enforceable governmental request.

Microsoft Onedrive :

We share your personal data with your consent or to complete any transaction or provide any product you have requested or authorized. We also share data with Microsoft-controlled affiliates and subsidiaries; with vendors working on our behalf; when required by law or to respond to legal process; to protect our customers; to protect lives; to maintain the security of our products; and to protect the rights and property of Microsoft and its customers.

Dropbox

Dropbox uses certain trusted third parties (for example, providers of customer support and IT services) to help us provide, improve, protect, and promote our Services. These third parties will access your information only to perform tasks on our behalf in compliance with this Privacy Policy, and we’ll remain responsible for their handling of your information per our instructions.

We may disclose your information to third parties if we determine that such disclosure is reasonably necessary to (a) comply with the law; (b) protect any person from death or serious bodily injury; (c) prevent fraud or abuse of Dropbox or our users; or (d) protect Dropbox’s property rights.”

En resumen pueden compartir esa inforación con terceros, y tu nos has firmado acuerdo con los terceros, por lo que pueden pasarle la información a quien quieran. Y además te hacen pagar por eso.

Instalando una nube personal con Nextcloud :

Entonces, hay una forma de obtener prácticamente estos mismos servicios usando un pequeño servidor en casa con software de código abierto, para esto puedes usar una Raspberry Pi o un computador viejo que esté en desuso.

Algunas recomendaciones previas:

  1. Una raspberry PI , o cualquier PC on al menos 2GB de RAM es suficiente servidor para correr Nextcloud o Owncloud.
  2. En lo posible utiliza un disco de estado sólido (SSD) para almacenar los datos, por experiencia fallan mucho menos y tendrás tiempos de acceso bastante mejores. Si no tienes uno usa discos duros magnéticos, en raid 1 o con backup diario.
  3. Instala una pequeña UPS para porteger el servidor y la conexión a internet de posibles caídas de corriente.
  4. Configura el router de internet para redirigir el puerto 443 desde internet al servidor.
  5. Configura en el servidor un servicio de DNS dinámico para que puedas acceder a tus archivos desde tu celular cuando estés fuera de casa.

Para este tutorial asumimos ya :

  1. Tienes un servidor con Arch Linux instalado
  2. Has configurado la descarga de paquetes desde el AUR
  3. Configurado un servido Nginx
  4. Configurado PHP con FPM con módulos php-intl php-apcu php-pgsql
  5. Configurado un servidor de Base de datos Postgresql

Parámetros de Configuración :

  • Directorio donde se almacenarán los archivos de la nube, el tamaño de almacenaje de la nube será el tamaño de este archivo : /var/data/
  • Nombre de la base de datos postgresql : nextcloud
  • Nombre de usuario de la base de datos postgresql : nextcloud

1.- Crear el sitio de Nextcloud en Nginx, les dejo mis archivos de configuración :

Crear un certificado .crt y una llave .key y dejarlas en el directorio /etc/nginx, debes tener instalado openssl :

cd /etc/nginx
openssl req -newkey rsa:2048 -nodes -keyout server.key -x509 -days 36500 -out server.crt

2.- Agregamos el usuario y la base de datos :

sudo -iu postgres
createuser -h localhost -P nextcloud
createdb -O nextcloud nextcloud

3.- Instalamos Nextcloud

yay -S nextcloud

4.- Creamos la carpeta de configuracion data y cambiamos los permisos de las carpetas que se instalaron el paso 2.

mkdir -p /usr/share/webapps/nextcloud/data
chown -R http:http /usr/share/webapps/nextcloud/{apps,data}
chmod 750 /usr/share/webapps/nextcloud/{apps,data}

5.- Creamos el directorio donde se almacenarán los datos de la nube con permisos al usuario del servidor web, por defecto http :

mkdir /var/data
chown -R http:http /var/data
chmod -R 750 /var/data

6.- Configuramos php-fpm para que pueda escribir los directorios de Nextcloud y el directorio de datos de la nube :

systemctl edit php-fpm.service

Se abrirá un editor e ingresamos :

[Service]
ReadWritePaths = /usr/share/webapps/nextcloud/apps
ReadWritePaths = /usr/share/webapps/nextcloud/data
ReadWritePaths = /etc/webapps/nextcloud/config

# Este es el directorio donde se almacenarán los datos de la nube :
ReadWritePaths = /var/data

7.- Luego reiniciamos nginx y php-fpm :

systemctl restart php-fpm
systemctl restart nginx

8.- Configuramos Nginx

9.- Autorizamos el acceso al servidor desde otras direcciones, editamos el archivo /usr/share/webapps/nextcloud/config/config.php

Este archivo lo genera automáticamente el instalador de Nextcloud, agregamos los nombres del servidor adicionales : :

  array (
    0 => 'nombrehost',
    //el nombre del servidor en la red interna configurado en /etc/hosts
    1 => 'ejemploservidor.gtk.cl',
    //el nombre del servidor en freedns
    2 => '192.168.0.3'
    //la IP interna de la máquina
 ),

10.- Habilitar thumbnails de videos, debes tener instalado el paquete ffpmeg.

Agrega al antes de la linea de cierre «);» el siguiente código :

‘enable_previews’ => true,
'enabledPreviewProviders' =>
array (
0 => 'OC\Preview\Image',
1 => 'OC\Preview\Movie',
2 => 'OC\Preview\TXT',
),
Categorías
Software Libre

Remove All KDE Telepathy Arch install may 2020

Completely remove telepathy from Arch Linux Plasma system tray as no google talk or hangouts video calls available :

sudo pacman -R telepathy-kde-meta telepathy-accounts-signon telepathy-farstream telepathy-glib telepathy-kde-accounts-kcm telepathy-kde-auth-handler telepathy-kde-call-ui telepathy-kde-common-internals telepathy-kde-contact-list telepathy-kde-contact-runner telepathy-kde-desktop-applets telepathy-kde-filetransfer-handler telepathy-kde-integration-module telepathy-kde-send-file telepathy-kde-text-ui telepathy-logger telepathy-mission-control telepathy-qt telepathy-kde-approver telepathy-logger-qt 

Then remove orphaned packages and dependencies :


sudo pacman -Rs $(pacman -Qqtd)

Then remove orphaned packages and dependencies :


sudo pacman -Rs $(pacman -Qqtd)

Categorías
Poesía

LA NUEVA NOVELA – JUAN LUIS MARTINEZ 1977, 1985

Pueden comprarla aquí : http://www.d21.cl/publicaciones-2/