Categorías
GNU/Linux

Montar el acceso a HiDrive en Linux

El sistema de almacenamiento HiDrive disponible en Ionos tiene apps clientes para Windows, Mac y Android, pero no para Linux. Sin embargo, montar el acceso en Linux como si fuera una unidad de disco más es fácil utilizando el protocolo WebDav. La forma de hacerlo es la siguiente:

Instalamos davfs. Por ejemplo en Debian sería:

apt-get update 
apt-get upgrade (si hace falta)
apt-get install -y davfs2

Creamos el directorio donde montaremos la unidad remota, podemos hacerlo en /home/<usuario> o en /mnt, donde más nos guste:

mkdir /mnt/HiDrive 

Editamos el /etc/fstab y añadimos la nueva unidad, tenemos que añadir una línea al final de dicho fichero:

https://webdav.hidrive.ionos.com/ /mnt/HiDrive davfs _netdev,auto 0 0

Para no tener que introducir usuario y contraseña cada vez que accedamos, guardamos nuestras credenciales en el fichero /etc/davfs2/secrets añadiendo al final de dicho fichero la línea:

/mnt/HiDrive <Username> <Password>

Reiniciamos y ya podemos acceder a la unidad, que se sincronizará con el contenido remoto. Podemos finalmente añadir la ruta a «Lugares» en el explorador de archivos para acceder más rápidamente.

Más información sobre el uso de HiDrive en: https://www.ionos.es/ayuda/hidrive/configuracion/ionos-hidrive-primeros-pasos/

Fuente: https://server-help.org/index.php/2021/01/18/mount-hidrive-using-webdav-protocol/

Anuncio publicitario
Categorías
Debian GNU/Linux KDE

Instalar KDE en Debian 11

Después de mucho tiempo trabajando en Debian con Gnome, me entraron las ganas de volver a usar KDE, escritorio que hace tiempo que no uso. Hacer el cambio es muy sencillo. Ejecutamos en un terminal:

sudo apt update && sudo apt upgrade
sudo apt install tasksel -y

A continuación ejecutamos tasksel

sudo tasksel

Y seleccionamos el escritorio que queremos instalar, en este caso KDE.

Esta es la forma en la que se explica la forma de instalar KDE en Debian en las páginas que he consultado, sin embargo, en ninguna de ellas se cita, y creo que es importante, que hay que tener en cuenta que el gestor de inicio de sesión por defecto en KDE es sddm, por lo que si procedemos de Gnome, que usa el gdm3, algunas cosas no funcionan, como por ejemplo activar el inicio de sesión automático de un usuario. Por evitar esto, tenemos que instalar también:

sudo apt install sddm kde-config-sddm sddm-theme-debian-maui

Y a continuación seleccionamos sddm como gestor de inicio con:

sudo dpkg-reconfigure sddm

Y ya está, ya tenemos KDE en Debian funcionando con su inicio de sesión correcto.

Categorías
GNU/Linux HumHub

Error instalando HumHub: Zend OPcache API is restricted by “restrict_api”

Al intentar instalar Humhub en un hosting compartido, me ha saltado este error durante la instalación, el cual es debido a que el servidor tiene restringidas las llamadas a OPcache en la configuración de PHP. En concreto, tiene activa la restricción opcache.restrict_api, la cual permite llamar a funciones de la API de OPcache solamente desde scripts de PHP cuya ruta comience con la cadena especificada.

Atención: este error está corregido ya en la versión 1.13.0 de Humhub, donde se aplica la modificación descrita en el punto 2.

Hay dos formas de solucionar este error, dependiendo de si tenemos acceso o no a la configuración del servidor web.

1) Si tenemos acceso al php.ini

En este caso tenemos que editar el php.ini. Accedemos a él, por ejemplo en un servidor Debian 11 lo haremos con :

sudo nano /etc/php/7.4/apache2/php.ini

Encontraremos la línea a modificar haciendo ctrl+W y buscando «opcache.restrict_api». Veremos que la opción tendrá asignada una cadena de texto, la cual tendremos que borrar dejando la línea:

opcache.restrict_api = ""

Que es la opción por defecto. Guardamos el fichero, reiniciamos el servidor con:

sudo systemctl restart apache2

Y ya no debería de saltar el error cuando hagamos la instalación de HumHub

2) Si no tenemos acceso al php.ini

Esta es la situación habitual cuando intentamos instalar Humhub en un hosting compartido. En este caso tenemos que editar el código de HumHub, prefijando las llamadas a la función opcache_invalidate con el símbolo «@», que es la forma que tiene PHP de evitar que salten los errores de una función cuando es ejecutada, silenciándolos. Si buscamos la cadena «opcache_invalidate» en los ficheros del directorio donde hemos extraído el código fuente de HumHub veremos que aparece en varios de ellos, y que en casi todos ya aparece prefijado con la @, salvo en dos (estoy usando la versión 1.21.1, puede que en versiones anteriores o posteriores la situación sea distinta) que son:

/protected/humhub/libs/DynamicConfig.php

/protected/vendor/yiisoft/yii2/rbac/PhpManager.php

Tenemos que modificar el código de forma que la llamada a la función quede:

@opcache_invalidate($configFile)

en el primer fichero y

@opcache_invalidate($file, true)

en el segundo.

No me gusta solucionar un error simplemente ignorándolo, que es lo que hacemos cuando en PHP prefijamos con @ la llamada a una función, pero dado que los creadores de HumHub lo han hecho así en todas las llamadas a la función salvo en dos, creo que ha sido más por olvido que por intención. Esta solución tiene además el problema de que cada vez que actualicemos la versión de HumHub tendremos que volver a editar dichos ficheros para rehacer los cambios, salvo que la actualización no nos los cambie o nuevas versiones corrijan este problema.

Categorías
GNU/Linux R Ubuntu

Entorno de desarrollo con R, RStudio y GitHub en Ubuntu Linux

Para instalar un entorno de desarrollo usando el lenguaje de script R, el IDE RStudio y usar el control de versiones de GitHub en un ordenador con Ubuntu Linux 21.10 (aunque sería muy similar en otra versión o distribución de Linux) tenemos que realizar los siguientes pasos:

1. Instalar GIT y SSH (es posible que alguno ya esté instalado).

sudo apt install git openssh-client ssh-askpass

2. Configurar Git para que use nuestro usuario y email por defecto.

git config --global user.name "miusuario"
git config --global user.email "micorreo@miserver.com"

3. Instalar R. Para ello podemos por ejemplo seguir la guía de DigitalOcean.com.

También es conveniente instalar un par de librerías que serán necesarias si queremos trabajar con el paquete «tidyverse» de R.

sudo apt install libxml2-dev libcurl4-openssl-dev

4. Instalar RStudio, descargando la versión correspondiente de la web de RStudio. La última versión para Ubuntu es en estos momentos la rstudio-2021.09.1-372-amd64.deb que podemos instalar una vez descargada simplemente dando click con el botón derecho y seleccionando «Abrir con instalar software».

5. Crear una cuenta en GitHub, si no la tenemos ya.

6. Crear un par de claves SSH desde RStudio, para ello abrimos el IDE y vamos a Tools / Global options / Git/SVN. Pulsamos sobre el botón «Create RSA Key» y una vez que la crea pulsamos en el enlace «View public key» seleccionando y copiando nuestra clave pública. Aunque es opcional, es muy recomendable poner una password a la clave en su creación. Es posible que nada más crearla no veamos la nueva clave en la ventana, pero es un error de visualización, pues el fichero sí que está creado (podemos confirmarlo listando el directorio .ssh de nuestro usuario). Si cerramos RStudio y lo volvemos a abrir, veremos que ya aparece la clave tal y como se muestra en la imagen siguiente.

7. Añadimos nuestra clave pública a GitHub. Entramos en nuestra cuenta y desplegamos la lista junto a nuestro nombre arriba a la derecha, vamos a Settings y en las opciones de la derecha seleccionamos «SSH and GPG keys». Pulsamos el botón «New SSH key», le damos un nombre a nuestra clave y pegamos la clave pública copiada en el paso anterior en el espacio reservado para ello.

8. Probamos la conexión SSH con GitHub. Abrimos un terminal y tecleamos:

ssh -T git@github.com

Ya tenemos todo lo necesario para trabajar con R, RStudio y GitHub. Para probarlo podemos por ejemplo crear un repositorio en nuestra cuenta de GitHub, y seleccionamos el código para clonar correspondiente a la opción «SSH».

Desde RStudio seleccionamos File / New Project / Version Control / Git y ahí pegamos la dirección copiada en GitHub. Dando a Create Project se clonará el repositorio en la carpeta que hayamos seleccionado.

En caso de que nos de el error: «host key verification failed» entonces debemos de agregar GitHub a los hosts confiables, para ello ejecutamos en un terminal:

ssh-keyscan -t rsa github.com >> ~/.ssh/known_hosts

Trabajar con Git en RStudio es muy sencillo, hay una guía muy bien explicada en la web de soporte de RStudio para trabajar con el control de versiones.

Categorías
Sin categoría

Instalar KDE en CentOS Stream

Tras varios meses trabajando con CentOS Stream echo en falta el entorno KDE, el cual me resulta más agradable. Para instalarlo hay que hacer lo siguiente:

  • Activar el repositorio EPEL
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
  • Instalar los plugins de dnf
sudo dnf -y install dnf-plugins-core
  • Habilitar las PowerTools
sudo dnf config-manager --set-enabled powertools
  • Actualizar el sistema (por si acaso)
sudo dnf update
  • Instalar el entorno KDE
sudo dnf groupinstall "KDE Plasma Workspaces" -y

A continuación cerramos la sesión GNOME y para entrar en la sesión KDE, la seleccionaremos de las opciones disponibles al inicio de sesión, que aparecen cuando pulsamos en el icono con forma de tuerca o engranaje que aparece al lado del botón de inicio.

Categorías
CentOS Dropbox GNU/Linux

Instalar Dropbox en CentOS Stream

Al instalar el paquete rpm que Dropbox ha desarrollado para Fedora en CentOS Stream veo que no funciona correctamente del todo, pues tiene dos carencias que yo considero importantes: no se arranca automáticamente al inicio y no te muestra los emblemas de sincronizado o no en el navegador de archivos.

Ambos errores se solucionan si en vez de instalar el paquete lo compilamos desde la fuente. Para ello hacemos lo siguiente:

Descargamos el código fuente de la página de descargas de Dropbox.

Instalamos el entorno necesario para compilar paquetes:

sudo dnf groupinstall 'Development Tools'

Instalamos las librerías necesarias para la compilación:

sudo dnf install nautilus-devel python3-docutils

Nos situamos en el directorio donde hayamos descargado el código fuente y lo descomprimimos ejecutando:

tar xjf ./nautilus-dropbox-20220.03.04.tar.bz2

Esto nos crea una carpeta cuyo nombre se corresponderá con la versión que hayamos descargado. Nos situamos en ella con:

cd ./nautilus-dropbox-2020.03.04

Y ejecutamos:

./configure

Al terminar este comando comprobamos la salida que genera para ver que no ha dado problemas de dependencias. Si todo ha ido bien ejecutamos:

make

sudo make install

Una vez hecho esto ya tendremos el icono de Dropbox al pulsar en «Actividades». Al lanzarlo la primera vez se ejecutará la descarga del daemon y cuando termine la instalación ya podremos ver el directorio de Dropbox con los emblemas correspondientes.

Tenemos que tener presente que al igual que ocurre con todos las aplicaciones que compilamos desde los fuentes, para actualizarla a una versión posterior tendremos que descargar y compilar la nueva versión repitiendo de nuevo todo el proceso.

Categorías
Microsoft Windows

Desinstalar Tu Teléfono en Windows 10

Una de las cosas que no me gustan del «entorno Microsoft» es que te oculta opciones en la selección gráfica que sí están disponibles en la consola. Otra de las cosas que no me gusta es que te da muchas facilidades para instalar una de sus aplicaciones, pero luego te oculta la posibilidad de desinstalarla. Es lo que me ocurrió con la app «Tu Teléfono», incluida en Windows 10 y en la cual no había reparado pues no la necesitaba. Un día el sistema me hizo la típica pregunta de «¿Quieres probar la aplicación ..? y le dije que sí. La probé, algunas cosas me gustaron, otras no, y decidí que no quería seguir usándola. Y ahí está lo que yo considero un error en Windows 10: ya no había forma fácil de eliminarla. Ni siquiera quitando la opción de ejecución en segundo plano deja de estar activa, lo cual no sólo me molesta por la pérdida de recursos en mi máquina, sino porque me saltan notificaciones a la vez en el teléfono y en el ordenador.

Para desinstalar la aplicación no es posible hacerlo por la opción gráfica, pues el botón de desinstalar no aparece habilitado, hay que hacerlo desde la consola: pulsamos botón derecho en el icono de las ventanitas en la parte inferior izquierda del escritorio y seleccionamos la opción «Windows PowerShell (Administrador)». Una vez en ella hay que lanzar el comando:

Get-AppxPackage Microsoft.YourPhone -Allusers | Remove-AppxPackage 

Por el momento no lo he probado, pero con este comando parece evidente que se pueden desinstalar más aplicaciones innecesarias, bastaría con cambiar el nombre de la app.

Gracias a www.softzone.es por publicar la forma de instalar y desinstalar esta aplicación.

Categorías
Piwigo

Gestor de fotos Piwigo

Si queremos tener nuestras fotos ordenadas y accesibles vía web y no queremos usar una red social para ello, podemos instalarnos nuestro propio gestor de fotos en un equipo local con Piwigo. Es software libre y muy fácil de instalar y de usar, y podemos tanto tenerlo en nuestra propia red local de casa como darle acceso vía web si configuramos nuestro router y nuestro equipo para ello (para ver cómo se hace se puede consultar la entrada sobre cómo instalar HumHub).

La instalación de Piwigo está muy bien explicada en su web y es totalmente automática, similar a la instalación de un WordPress. Para poder instalarlo necesitamos el habitual entorno LAMP (un servidor Linux, servidor de páginas web Apache, gestor MySQL/MariaDB y PHP) y cumplir unos requisitos de instalación.

Por lo que he podido comprobar su uso es ágil y sencillo. El aspecto tras la instalación inicial es algo tosco, pero pueden instalarse extensiones que mejoran tanto su uso como su aspecto.

Otro aspecto interesante es que permite categorizar las imágenes en públicas y privadas, de forma que podemos establecer qué usuarios pueden ver ciertas fotos o álbumes.

Vista del gestor de fotos

Si no queremos usar nuestro servidor local abierto a internet, también podemos contratar un espacio propio en su nube, con planes tanto para usuarios individuales como para empresas. El costo para un solo usuario me parece correcto, pues son 39€ + IVA por año y la única limitación que tiene es que solo permite el almacenamiento de imágenes (nada de videos). Los planes para empresas, sin embargo, creo que tienen un precio algo elevado, pues para tener un espacio de 50 GB deberíamos pagar 45€ + IVA al mes, diferenciándose de los planes personales en que permiten todo tipo de ficheros, se puede personalizar el aspecto y se cuenta con soporte por teléfono y por correo.

Categorías
Debian GNU/Linux

Instalar MySQL Workbench en Debian 10

Para poder instalar el programa MySQL Workbench en Debian 10 hay que instalar previamente una serie de dependencias sin las cuales no funciona correctamente. El proceso de instalación es como sigue:

  1. Descargar el paquete deb de la página de MySQL Workbench, necesitamos el correspondiente a Ubuntu 18.04 y la versión 8.0.23:

2. Actualizamos el sistema e instalamos las siguientes librerías:

sudo apt update && sudo apt upgrade
sudo apt install libatkmm-1.6-1v5 libglibmm-2.4-1v5 libgtkmm-3.0-1v5 libsigc++-2.0-0v5 libtinfo5 libcairomm-1.0-1v5 libpangomm-1.4-1v5 libpcrecpp0v5 libproj-dev proj-bin gnome-keyring

3. Instalamos el paquete en el directorio donde lo hayamos descargado:

sudo dpkg -i mysql-workbench-community_8.0.23-1ubuntu18.04_amd64.deb

En mi caso, como uso KDE, necesité instalar el gnome-keyring porque si no me daba error al intentar guardar la password para la conexión.

Hay que recordar que tenemos que tener la versión MySQL Server 5.7, pues versiones posteriores dan problemas.

Categorías
GNU/Linux

Cómo crear una red social propia con HumHub

Hace un tiempo escuché a un político bocazas al que habían censurado en una red social decir algo como: «¡Pues si me echan de su red social me construiré yo una propia!». A dicho personaje el dinero le sobra, por lo que construirse una red social propia para él no tendría más problema que tirar de talonario. ¿Y nosotros, simples y no muy adinerados mortales? ¿Podríamos construirnos una red social con nuestros escasos medios? Investigué un poco y la respuesta es sí, podemos hacerlo gracias a una serie de tecnologías y servicios gratuitos a nuestra disposición, como son HumHub, No-IP y por supuesto GNU/Linux. El material y los programas necesarios, así como el proceso de creación de dicha red social sería el siguiente.

ATENCIÓN – DISCLAIMER : Este procedimiento implica que vas a tener conectado un equipo a internet con el riesgo que eso conlleva. Es responsabilidad de cada persona que mantenga su servidor actualizado y protegido contra accesos no deseados o utilizaciones del servidor ajenas a la voluntad de sus propietarios. Si no sabes cómo mantener seguro tu servidor, no sigas estas instrucciones, no solo te pones tú en peligro, también pones en peligro a quienes serán atacados usando tu servidor.

Componentes de nuestra red social

  1. Hardware.
    • Servidor. Nuestra red social necesita un servidor en el que alojarse, que puede ser propio o alquilado. La versión de alquiler es más robusta y nos simplifica problemas, pero hay que pagarlo todos los meses. Un servidor físico propio solo tenemos que pagarlo una vez, pero tenerlo encendido continuamente y conectado a internet nos supondrá un coste. Tendremos que ponderar qué nos resultará mejor a la larga. En el caso de optar por un servidor propio cualquier ordenador antiguo nos puede valer, pero si podemos gastar algo de dinero en un miniordenador a la larga la factura eléctrica será menor y el dinero gastado inicialmente se amortizará con el uso. En mi caso he optado por un Slimbook Zero, pero cualquier aparato en el que podamos instalar una distribución GNU/Linux nos valdría.
    • Equipo de red. Si hemos optado por alquilar un servidor no necesitaremos más, pero si vamos a conectar nuestro servidor a internet tendremos que tener una conexión de fibra a internet y un router.
  2. Software.
    • Como sistema operativo puedes usar la distribución GNU/Linux que más te guste. Esta guía la voy a realizar en Debian 10, pero sería muy similar en cualquier otra distribución. Recomiendo que sea una distribución orientada a servidores más que a escritorio.
    • Entorno LAMP (Linux – Apache – MySQL – PHP)
    • Framework HumHub.

Instalación

Una vez tengamos preparados e instalados todos los componentes básicos, procedemos a la instalación de la red social propiamente dicha, siguiendo la guía que el propio HumHub tiene publicada. Esta guía es muy completa y está muy bien explicada, podemos seguirla prácticamente en el mismo orden y de la misma manera, pero incluyo aquí algunas consideraciones que si no tenemos en cuenta nos pueden dar lugar a error.

1 – En primer lugar comprobamos que nuestro sistema cumple todos los requerimientos de HumHub.

2 – En segundo lugar tenemos que configurar el servidor de datos, creando una base de datos específica para nuestra red siguiendo lo indicado en la citada guía en su aparado Base de datos.

3 – Instalamos todos los módulos de PHP que vamos a necesitar y configuramos el php.ini con las necesidades del framework, tal y como aparece en el apartado PHP de la guía de HumHub.

4 – A continuación, si no tenemos alquilado un servidor en internet que normalmente llevará incluido su propio dominio para acceder a él, tendremos que obtener una url que nos permita acceder a nuestra red, a nuestro servidor local desde internet. Para conseguirlo podemos usar el servicio No-IP, el cual nos permite configurar un dominio DDNS que podemos dirigir a nuestro router y desde allí a nuestro servidor. El servicio gratuito incluye hasta tres host:

En su página web podemos descargarnos un programa cliente que nos actualiza nuestra dirección IP cada cierto tiempo.

5 – Tenemos que configurar en nuestro router dos cosas: a) que nuestro servidor tenga una IP fija local (del estilo 192.168.0.10) haciendo que el router le adjudique siempre la misma IP a su tarjeta de red; y b) redirigir los puertos 80 y 443 a esa IP desde el exterior. Esto se realiza de forma diferente en cada router, por lo que tendremos que ver en su documentación cómo hacerlo.

6 – Una vez hayamos configurado router y servicio No-IP comprobaremos que podemos acceder a nuestra dirección tecleando en el navegador nuestro dominio y verificando que la página que se nos muestra es la página inicial de nuestro servidor Apache.

7 – Ahora ya podemos configurar nuestro servidor Apache siguiendo las instrucciones de la guía de HumHub para configurar el servidor. En este paso hay que tener en cuenta que para poder ejecutar la petición de un certificado con certbot necesitamos previamente parar el servidor Apache con la instruccion «sudo systemctl stop apache2», algo que no viene en la guía y que nos puede atascar en este paso si no lo tenemos en cuenta. Una vez que la instalación de un cerificado standalone termina correctamente, entonces ya podemos volver a arrancar el servidor con el comando «sudo systemctl start apache2». Si queremos saber más cosas de certbot y para qué sirve, podemos consultar la página web de Certbot y la de Let’s Encrypt.

8 – Instalar HumHub. Este es ya el último paso, y aparece especificado en la guía de HumHub en la página de instalación del framework. Su puesta en marcha es muy similar a otros framework como Drupal o WordPress, está basado en Yii y cuenta con varios módulos que pueden cubrir nuestras necesidades en nuestra nueva y propia red social.

En caso de querer aumentar sus funcionalidades habría que aprender PHP, estudiar cómo está construido el framework Yii y construir nosotros nuestros propios módulos. Por aprender y construir cosas que no quede, y si además luego las publicamos como software libre para que todos puedan beneficiarse de ellas, mejor.

Finalmente y si todo ha ido bien ya tendremos construida nuestra red social propia, pero lo que hace interesante a una red social es el número de personas que la usan y las interacciones posibles entre ellas, y en mi caso como no conseguí animar a nadie a usarla, todo esto solo me sirvió para aprender y consolidar mis conocimientos de cómo funciona internet. En caso de que queramos seguir investigando, la mayoría del procedimiento sirve también para tener por ejemplo nuestro propio blog en el sercidor de casa si instalamos WordPress, o nuestra propia nube si en vez de instalar HumHub instalamos OwnCloud, por ejemplo. Ya sabéis lo que se dice de La Nube y que lo podemos decir también de todos los servicios de internet: