web-dev-qa-db-fra.com

Que se passe-t-il si vous montez sur un point de montage non vide avec un fusible?

Je suis nouveau à Fuse. Lorsque j'essaie d'exécuter un programme client Fuse, le message d'erreur suivant s'affiche:

Fuse: mountpoint is not empty
Fuse: if you are sure this is safe, use the 'nonempty' mount option

Je comprends qu'un point de montage est le répertoire où vous allez connecter logiquement le système de fichiers Fuse. Que se passera-t-il si je monte à cet endroit? Quels sont les dangers? Est-ce juste que le répertoire sera écrasé? Fondamentalement: que se passera-t-il si vous montez dans un répertoire non vide?

17
bernie2436

Vous devez vous assurer que les fichiers sur le périphérique monté par Fuse auront non _ les mêmes chemins et noms de fichiers que les fichiers existant déjà dans le point de montage non vide. Sinon, cela pourrait prêter à confusion. Si vous êtes sûr, transmettez -o nonempty à la commande mount.

Vous pouvez essayer ce qui se passe en utilisant les commandes suivantes .. (Linux roches!) .. sans rien détruire ..

// create 10 MB file 
dd if=/dev/zero of=partition bs=1024 count=10240

// create loopdevice from that file
Sudo losetup /dev/loop0 ./partition

// create  filesystem on it
Sudo e2mkfs.ext3 /dev/loop0

// mount the partition to temporary folder and create a file
mkdir test
Sudo mount -o loop /dev/loop0 test
Sudo echo "bar" test/foo

# unmount the device
Sudo umount /dev/loop0

# create the file again
echo "bar2" > test/foo

# now mount the device (having file with same name on it) 
# and see what happens
Sudo mount -o loop /dev/loop0 test
15
hek2mgl

Ajoutez simplement -o nonempty en ligne de commande, comme ceci:

s3fs -o nonempty  <bucket-name> </mount/point/>
5
Vaseem007

Apparemment, rien ne se passe, cela échoue de manière non destructive et vous avertit.

Cela m'est arrivé très récemment. Vous pouvez résoudre ce problème en déplaçant tous les fichiers du point de montage non vide vers un autre emplacement, par exemple:

mv /nonEmptyMountPoint/* ~/Desktop/mountPointDump/

De cette façon, votre point de montage est maintenant vide et votre commande mount fonctionnera.

1
DaJF