Tengo dos RasberryPi ejecutando debian wheezy y me gustaría montar una carpeta desde la computadora A en la computadora B.
¿Cuál es la mejor manera (como la más eficiente) de hacer esto?
Puedo hacerlo a través de SMB, pero eso es para Windows, creo que debe haber una mejor manera de compartir en Linux.
filesystems
mount
remote
cjburkha
fuente
fuente
Respuestas:
Puede usar muchas cosas, entre las cuales, las opciones populares son:
Por facilidad de configuración, creo que tendrían que colocarse en este orden (arriba: más fácil)
SSHFS
A través de FUSE, puede montar sistemas de archivos remotos a través de ssh. No cubriré cómo, como Cristopher ya lo ha explicado muy bien. Solo tenga en cuenta que, para montar el archivo automáticamente, necesitará un poco más de trabajo .
Samba
Le permitirá usar máquinas Windows y Unix para acceder a la carpeta remota. Si no es un gran problema para ti, entonces probablemente no te beneficiarás. Sin embargo, es fácil montarlo automáticamente en init (solo ingrese los valores apropiados en
/etc/fstab
, incluidausername=<your-samba-username>,password=<your-samba-password>
la columna de opciones.NFS
Le permitirá autenticarse solo a través de IP (sin nombre de usuario = más rápido, solo para usar dentro de su LAN no hostil ) o mediante Kerberos Tickets (demasiado doloroso para solo dos Frambuesas; pero útil en entornos corporativos).
Como tiene soporte para modo kernel, se ejecutará más rápido que sshfs. Además, como no se realiza el cifrado , tendrá un mejor rendimiento y, en el caso de la pequeña Raspberry ARM, puede marcar la diferencia.
Además, no es tan doloroso configurarlo simplemente confías en tu red. También tiene soporte para
/etc/fstab
montaje automático, y no tiene que poner datos confidenciales (como nombres de usuario o contraseñas), y si tiene sus nombres de usuario sincronizados (los mismos/etc/passwd
y los/etc/group
archivos) puede usar el conjunto de herramientas de permisos POSIX habitual (chown
,chgrp
ychmod
).fuente
arisu:/mnt/ytra /mnt/ytra nfs soft,ro,intr 0 2
stat()
devuelve, por ejemplo, cosas que dependen delnlink
recuento del que CIFS no tiene noción. SSHFS No me ha impresionado mucho, ya que ejecutó cambios de contexto en el servidor de archivos muy alto y no admitió el bloqueo necesario requerido por los programas internos. Entonces, NFS ...SSHFS es maravilloso. Puede montar directorios remotos en un directorio local con FUSE . Los siguientes comandos se utilizan
#
para indicar que un comando se ejecutó comoroot
, mientras que se$
indica la ejecución como usuario normal. Debido a que se requiere el software FUSE, primero asegúrese de que esté disponible y en ejecución.Uno de los comandos
lsmod
ygrep
, a continuación, puede revelar si el software está cargado y listo para usar. Un resultado de cualquiera de los comandos indica quefuse
está disponible.Si no hay resultado de ninguno de los comandos, intente cargar el módulo del kernel sin reiniciar
modprobe
y verifique nuevamente.Si la carga del módulo falla, instale el software con
apt-get
.Verifique nuevamente después de la instalación.
FUSE debe estar instalado y funcionando antes de continuar.
Verifique los permisos de
/dev/fuse
. Los permisos deben proporcionar a su cuenta de usuario habitual acceso de lectura y escritura. Omita esta parte si ha determinado que su cuenta de usuario normal ya tiene permiso de lectura y escritura/dev/fuse
.El resultado podría ser algo como uno de los siguientes.
En 2013, mi Debian creó
/dev/fuse
con0600
permisos, propietarioroot
, propietario de grupofuse
. Necesitaba dejar que el grupo de fusibles usara el dispositivo y agregar mi cuenta de usuario habitual al grupo, como se muestra a continuación.Si se requería la nueva membresía de grupo, cierre sesión y vuelva a iniciar sesión para convertirse en miembro del grupo.
Luego, instálelo
ssh
en ambos lados de la siguiente manera.Esta respuesta fue escrito para Debian, pero en Ubuntu 18.x al menos,
openssh-client
,fuse
, y algunos otros paquetes son una parte de la Ubuntusshfs
paquete. Elsshfs
software se requiere en el lado del cliente, pero se puede instalar en ambos lados si lo desea. Una de las dependencias del paquete esfuse
, pero el instalador omite el software que ya se ha instalado.Con
fuse
yssh
disponible, y con permiso para usar el dispositivo/dev/fuse
, cree un punto de montaje para el sistema de archivos remoto; y monte ese sistema de archivos remoto localmente de la siguiente manera.Para montar un directorio que no sea home, especifíquelo después de los dos puntos.
Para desmontar, use
fusermount
.Si tiene una máquina Windows, también puede usar SSHFS con win-sshfs . Este software "mapeará una unidad" con SSHFS, para que pueda tener una letra de unidad de Windows que contenga el directorio remoto.
fuente
yum install fuse-sshfs.x86_64
), pero cuando lo hicemodprobe fuse
, no creé un grupo de fusibles para mí. Entonces cuando lo hiceusermod -a -G fuse [your-user]
, lo conseguíusermod: group 'fuse' does not exist
. puedes ayudar? gracias de antemanolsmod | grep fuse
devuelve el resultado y tengo/dev/fuse
, m que es propiedad de root. ¿Entonces estás diciendo que estoy bien sin el grupo?crw-rw-rw-. 1 root root 10, 229 Nov 21 15:32 /dev/fuse
En Linux, elegiría para NFS (también consulte el artículo en archwiki sobre él, que también puede tener información aplicable para su distribución). Tiene características más avanzadas que samba. Si necesita bloquear archivos (es decir, acceso concurrente), también debe buscar en lockd porque nfs no tiene estado. Sin embargo, es más difícil de configurar que smb. Sugeriría probar tanto samba como nfs para ver cuál se adapta a tus necesidades.
fuente
He usado tanto la unidad de red SFTP como ExpanDrive en el pasado y puedo decirles que sshfs supera a ambos sin ninguna duda.
fuente