2013-11-28 12 views
12

Sono nuovo di fondere. Quando si tenta di eseguire un programma client FUSE ottengo questo errore:Cosa succede se si monta su un punto di montaggio non vuoto con un fusibile?

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

Capisco che un punto di montaggio è la directory dove si logicamente attaccare il file system FUSE. Cosa succederà se monto in questa posizione? Quali sono i pericoli? È solo che la directory verrà sovrascritta? Fondamentalmente: cosa succederà se monti su una directory non vuota?

risposta

13

È necessario assicurarsi che i file sul dispositivo montato mediante fusibile siano non e abbiano gli stessi percorsi e nomi file dei file già esistenti nel punto di montaggio non vuoto. Altrimenti questo porterebbe alla confusione. Se sei sicuro, passa -o nonempty al comando mount.

Si può provare ciò che sta accadendo con i seguenti comandi .. (rocce Linux!) .. senza distruggere nulla ..

// 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 
+0

dal comando mount vuoi dire questo? FUSE (FuseHandler (a), b, foreground = True) Aggiungo -o non-vuoto a quella chiamata? – bernie2436

+0

Stai usando uno strumento da riga di comando o un linguaggio di programmazione per controllare il fusibile? – hek2mgl

+0

Sto chiamando un file python che importa pyfuse – bernie2436

1

Apparentemente nulla accade, non riesce in un modo non distruttivo e ti dà un avvertimento.

Ho avuto questo anche molto recentemente. Un modo è possibile risolvere questo problema è quello di spostare tutti i file nel punto di montaggio non vuota da qualche altra parte, ad es .:

mv /nonEmptyMountPoint/* ~/Desktop/mountPointDump/ 

In questo modo il punto di montaggio è ormai vuoto, e il vostro comando mount funzionerà.

2

Proprio in -nonempty nella riga di comando

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