Dropbox: ext4 no es ext4

21

Hace algún tiempo, Dropbox comenzó a advertirme acerca de admitir ext4 solo como FS. Como usuario feliz de BTRFS no estaba contento, pero he hecho esto:

dropbox stop
dd if=/dev/zero of=~/dropbox.img bs=1M count=4096
mkfs.ext4 ~/dropbox.img
echo "${HOME}/dropbox.img ${HOME}/Dropbox ext4 rw,async 0 2" | sudo tee -a /etc/fstab
rm -rf ~/Dropbox/*
sudo mount "${HOME}/Dropbox"
sudo chown "${USER}:" "${HOME}/Dropbox"

Todo funcionó sin errores, pero Dropbox todavía dice que debería usar ext4 para su carpeta. ¿Qué estoy haciendo mal?

val dice reinstalar a Monica
fuente
¿Cuál es la salida dedf ${HOME}/Dropbox --output=fstype
Ravexina
@Ravexina Type ext4
val dice Reinstate Monica
2
Tengo mucha curiosidad de qué función en ext4 dependen, que no está presente también en btrfs.
kasperd

Respuestas:

27

Hay tres cosas en total que Dropbox requiere para continuar trabajando en Linux, y solo una está debidamente documentada. Lo que estoy resumiendo aquí funcionó para Dropbox 59.4.93 en Ubuntu 18.04.1 (amd64).

Ya has superado el primer obstáculo:

  • El sistema de archivos base debe ser ext4, y específicamente no ecryptfs . es decir, si su carpeta de inicio está encriptada, debe colocar la carpeta de Dropbox en otro lugar, por ejemplo. Una ext4partición separada .

Las otras cosas para verificar son estas:

  • El ext4sistema de archivos debe formatearse con ext_attron. Este es el comportamiento predeterminado, pero puede confirmarlo ejecutando debugfs -R features /dev/sda1(o como se llame el archivo de su dispositivo; si está utilizando LVM, podría ser algo así como /dev/mapper/computername--vg-partitionname)
  • La ext4partición debe montarse con el user_xattrconjunto de opciones (puede verificar y agregar la opción en discos GNOME o editar /etc/fstabdirectamente)
  • La carpeta de destino (o la carpeta de sincronización de Dropbox) debe estar al menos dos niveles debajo del punto de montaje, como se describe en esta publicación . Esto es obviamente un error digno de facepalm.

Una vez que solucioné todas estas cosas, Dropbox finalmente me permitió mover la carpeta de destino y desaparecieron los mensajes de error sobre el "sistema de archivos no compatible".

Florian Echtler
fuente
3
De acuerdo con este hilo , parece que la user_xattropción está configurada por defecto en el kernel para el sistema de archivos ext4 desde 2.6.39.
Willie Robert
Con respecto al tercer punto sobre la profundidad por debajo del punto de montaje, descubrí que /var/data/dropboxno funcionaba al elegir una nueva ubicación utilizando el cliente de la GUI de Dropbox v60.4.107 y /var/data/dropbox/dfuncionaba al seleccionar una nueva ubicación a través del cliente de la GUI. /es mi punto de montaje para el /dev/sda1cual es ext4. Y esto crea /var/data/dropbox/d/Dropboxcomo la carpeta de sincronización 0_o
jamesc
Gracias especialmente por el último punto. Estoy usando Dropbox v60.4.107 en Linux Mint 18.3 64b y tuve problemas para configurar / partiton_for_dropbox como un hogar de Dropbox. El diálogo de error todavía decía algo así como "la partición no es ext4". Lo que funcionó fue elegir / partiton_for_dropbox / Dropbox. Entonces, sí, los datos están en / partiton_for_dropbox / Dropbox / Dropbox.
rzehan
1
Los cuatro requisitos se cumplen en mi caso. Pero Dropbox todavía se queja. Debería ser otra cosa.
djhurio
1
Solo para ampliar esto, para verificar ecryptfs, ejecutar df -Ty buscar una línea que comience con /home/USER/.Private ecryptfs .... Si tiene eso, su directorio de inicio está encriptado y tendrá que mover Dropbox a otro lugar. (Solía /opt/dropbox/Dropbox, lo que funcionó). Segundo, aunque user_xattrestá configurado de forma predeterminada, es posible que deba agregar la palabra defaultsa su /etc/fstab.
MikeTwo
5

Hay una alternativa a su solución: un repositorio de GitHub llamado dropbox-filesystem-fix . Esto hace que su carpeta de Dropbox aparezca como si estuviera en un sistema de archivos Ext4 sin cifrar, sin importar qué sistema de archivos use, y no tiene que montar nada, solo tiene que ejecutar Dropbox con una biblioteca de sistema de archivos de Dropbox (LD_PRELOAD).

Deberá obtener el código de GitHub , compilar la biblioteca ( make) y reemplazar la entrada de inicio de Dropbox con el script dropbox_start.py proporcionado por dropbox-filesystem-fix.

Si necesita completar las instrucciones paso a paso, consulte esta página.

Logix
fuente
4

Me las arreglé para solucionar esto usando el gnome-disksformato de la partición ext4 en lugar de usar GParted inicialmente, y asegurando que el directorio de Dropbox se ubicara a una profundidad de 2 niveles del punto de montaje de la partición. En Ubuntu 18.04.1 LTS de 64 bits con Dropbox v60.4.107.

La historia completa:

  1. Para empezar, creé mi ext4 dedicado con GParted, que también se utilizó para cambiar el tamaño de la partición anterior para dejar espacio para el nuevo ext4.

  2. Luego intenté asegurarme de que mi configuración cumpliera con todo lo descrito por la respuesta de Florian , pero eso no resolvió mi problema.

  3. Luego, después de muchos intentos de combinar diferentes soluciones, decidí borrar toda la partición y volver a formatearla en ext4 con el administrador de discos nativo de Ubuntu (simplemente llamado Disks or gnome-disks), lo que llevó a Dropbox a aceptar la partición como ext4.

Usé la siguiente línea /etc/fstabpara montar la partición:

UUID=ext4_partition_UUID    /media/dropbox  ext4 defaults 0 2

(donde ext4_partition_UUIDrepresenta el UUID encontrado con ls -l /dev/disk/by-uuid/)

Tenga en cuenta que no especifico la user_xattropción aquí.

Mi carpeta de Dropbox ahora se encuentra en /media/dropbox/data/Dropbox, pero no comprobó si la profundidad de 2 era realmente necesaria.

Parece que algo salió mal al formatear la partición ext4 con GParted en lugar del software nativo; no tengo idea de por qué o cuál sería la diferencia entre ellos. Si alguien lo sabe, me encantaría saber más al respecto.

Phil
fuente
De hecho, GParted llama software nativo.
Val dice Reinstate Monica
Esto puede haber sido útil para ver por qué el formato anterior no funcionaba:debugfs -R features /dev/sda1
Jonathan
2

Mi computadora portátil de instalación Lubuntu 18.10 comenzó a quejarse de Dropbox hace algún tiempo, pero no fue hasta la semana pasada que descubrí que no tenía el paquete attr instalado. Una vez que lo instalé, Dropbox parece estar feliz ...

Me encontré con el artículo en /unix//a/475253 e intenté verificar los atributos del archivo dentro del directorio de Dropbox en la computadora portátil. Me sorprendió descubrir que el getfattrcomando no estaba disponible, eso me llevó a instalar el paquete.

Este podría ser un camino a seguir para usted, o podría ser un problema completamente diferente, pero espero que valga la pena señalarlo.

Geoff Riley
fuente
1
attresta instalado.
Val dice Reinstate Monica
2

Dropbox ha traído de vuelta el soporte para ZFS, XFS, Btrfs y eCryptFS

Dropbox ha traído de vuelta el soporte para ZFS, XFS, Btrfs y eCryptFS en Linux. Una actualización del cliente de Dropbox trae soporte para ZFS y XFS en sistemas Linux de 64 bits, y eCryptFS y Btrfs en todos los sistemas Linux.

Campo de golf:

karel
fuente
¡Bueno saber! Apuesto a que "soporte" es un cambio en la verificación del código para la compatibilidad con fs.
Val dice reinstalar Mónica
0

Comprueba si estás utilizando algo ecryptfsque no es compatible :

ecryptfs no es compatible, pero Dropbox continuará sincronizándose con los sistemas de archivos compatibles que se cifran mediante el cifrado de disco completo (por ejemplo, LUKS)

y.luis
fuente
2
Verás, solo hay ext4 en la línea fstab ... y lo monto en btrfs.
Val dice Reinstate Monica
0

Hay un error en disputa en Dropbox Linux que no le permitirá colocar Dropbox en una carpeta, incluso cerca de ecryptfs

Por ejemplo, lo hice ecryptfs /home/user/Dropbox, y lo moví ext4 /home/user-unencryptedy todavía falló. Tuve que moverlo ext4 /dropbox/para que funcione. Me puse en contacto con su equipo de soporte, pero continuaron discutiendo conmigo diciendo que ext4 /home/user-unencryptedTAMBIÉN era ecryptfs porque ambos comenzaron con /home/ Tal vez estoy equivocado en cómo funciona ecryptfs, pero no vi ninguna evidencia que sugiriera que todo en / home / estaba encriptado cuando corrí herramientas de depuración del sistema de archivos.

Jonathan
fuente