Probando el Protocolo 9 de Plan9 con diod
Hola, soy Incompetente.
Esta vez, probaremos el protocolo Plan9, desarrollado por Bell Labs, donde nació UNIX, para el sistema operativo distribuido Plan9.
Introducción
Como un sistema operativo distribuido, Plan9 se configuró de manera más sencilla bajo la premisa de que todos los recursos son archivos.
Por esta razón, para usar los recursos, parece que la distribución de los recursos de la CPU también se realizaba de forma remota en cada sistema de archivos. Por ejemplo, se pueden concatenar directorios /bin, o en el caso de /dev, se pueden compartir dispositivos sin añadir código.
Por ejemplo, hoy en día, con cups (Common Unix Printing System), si se comparte el directorio de cola /var/spool/cups, es posible imprimir fácilmente desde un servidor de impresión.
Debería ser más fácil de operar montándolo en el sistema de archivos que gestionándolo por puertos.
En este contexto, probaremos el Protocolo Plan9 que se utilizaba.
De hecho, si consultamos Wikipedia, actualmente existen qemu y diod para BSD y GNU/Linux. Como ya estoy usando qemu, esta vez probaré diod, que es más fiel al espíritu UNIX, como su servidor de archivos.
Instalación de diod
El Github de diod está aquí, pero se puede instalar fácilmente desde el gestor de paquetes.
apt
sudo apt isntall diod
yay
yay -S diod
Con esto se completa la instalación.
Inicio del servidor, montaje
Las instrucciones están escritas en el README.md de Github, así que las seguiré.
Esta vez, montaremos el directorio /media/ncp/files del servidor en /mnt/9p del cliente.
Además, como funciona con 564/TCP, lo permitiremos desde el servidor con ufw. Servidor
sudo ufw allow 564/tcp
sudo ufw reload
sudo diod -f -d 1 -n -e /media/ncp/files/
Con esto, el servidor ha arrancado.
Cliente
sudo diodmount -n 192.168.10.113:/media/ncp/files /mnt/9p
Con esto, el montaje se ha completado.
Vamos a verificarlo con ls.
$ ls -la /mnt/9p/
合計 6115604
drwxr-xr-x 2 haturatu haturatu 4096 9月 2 21:58 .
drwxr-xr-x 3 root root 4096 9月 5 22:32 ..
-rw-r--r-- 1 haturatu haturatu 6262358016 9月 2 13:58 devuan.qcow2
-rwxr-xr-x 1 root root 1845 9月 2 21:58 index.php
-rw-r--r-- 1 root root 937 9月 2 21:53 style.css
Perfecto. Más tarde, tendré que cambiar el usuario a www-data aquí...
El desmontaje se puede hacer como de costumbre.
sudo umount /mnt/9p
Más simple
Es muy agradable porque elimina la complejidad y es simple.
Originalmente era un sistema como un SO distribuido, pero desafortunadamente, hoy en día BSD y GNU/Linux se han vuelto comunes y tienen diferentes sistemas de archivos.
Debido a esta divergencia, no parece muy realista tener un SO distribuido entre diferentes sistemas operativos.
Por ejemplo, en FreeBSD, pkg y el software que los usuarios pueden instalar libremente tienen sus archivos de configuración en /usr/local/etc, mientras que en GNU/Linux es /etc.
Además, FreeBSD no tiene /proc ni /sys, pero GNU/Linux sí los tiene.
Por supuesto, hay partes que son intercompatibles, por lo que se podría decir que es posible en algunos casos.
En este caso, si se utiliza en un VPS con poco almacenamiento y se combina con Wireguard, la expansión del almacenamiento es fácil y tiene una utilidad considerable.
Además, he usado otros servidores de archivos como Samba, pero creo que este es probablemente el más simple y rápido.
Cambiando un poco de tema, al releer la entrevista con Theo de Raadt de OpenBSD y volver a leer la Wikipedia de OpenBSD, encuentro:
Énfasis en el código abierto y la documentación
y es cierto que pude probar un sistema tan antiguo y con esta facilidad precisamente porque hubo personas en el pasado que crearon la documentación.
Fue un día en el que volví a sentir la importancia de la documentación, priorizando la simplicidad sobre la complejidad.
Eso es todo. Hasta la próxima.