it-swarm-id.com

Bagaimana Anda memaksa koneksi CIFS untuk dilepas

Saya memiliki saham CIFS yang dipasang di mesin Linux. Server CIFS sedang down, atau koneksi internet sedang down, dan apa pun yang menyentuh mount CIFS sekarang membutuhkan waktu beberapa menit untuk habis, dan tidak dapat digunakan saat Anda menunggu. Saya bahkan tidak bisa menjalankan ls di direktori home saya karena ada symlink yang menunjuk di dalam mount CIFS dan ls mencoba mengikutinya untuk memutuskan warna apa yang seharusnya. Jika saya mencoba umount (bahkan dengan -fl), proses umount hang seperti yang dilakukan ls. Bahkan Sudo kill -9 tidak bisa membunuhnya. Bagaimana saya bisa memaksa kernel untuk meng-unmount?

140
smoofra

Saya menggunakan malas unmount: umount -l (itu adalah L huruf kecil)

Malas lepas. Lepaskan filesystem dari hirarki filesystem sekarang, dan bersihkan semua referensi ke filesystem segera setelah tidak lagi sibuk. (Membutuhkan kernel 2.4.11 atau yang lebih baru.)

170
Kemal

umount -a -t cifs -l

bekerja seperti pesona bagi saya di CentOS 6.3. Ini menyelamatkan saya dari reboot server.

64
ivanlan

Pada RHEL 6 ini berfungsi:

umount -f -a -t cifs -l 
13
Andy Fraley

Ini berfungsi untuk saya (Ubuntu 13.10 Desktop ke Ubuntu 14.04 Server): -

 Sudo umount -f /mnt/my_share

Dipasang dengan

 Sudo mount -t cifs -o username=me,password=mine //192.168.0.111/serv_share /mnt/my_share

di mana serv_share diatur dan diarahkan ke file smb.conf.

7
Phil Johnson

Saya memiliki masalah ini selama sehari sampai saya menemukan resolusi yang sebenarnya. Alih-alih mencoba memaksakan unmount share smb yang digantung, mount share dengan opsi "soft". Jika suatu proses mencoba untuk terhubung ke share yang tidak tersedia itu akan berhenti mencoba setelah beberapa waktu.

lembut. Pasang soft mount. Panggilan sistem file gagal setelah beberapa detik.

mount -t smbfs -o soft //[email protected]/share /users/username/smb/share

stat /users/username/smb/share/file
stat: /users/username/smb/share/file: stat: Operation timed out

Mungkin bukan jawaban nyata untuk pertanyaan Anda tetapi ini adalah solusi untuk masalah tersebut

7
jnice

Coba umount -f/mnt/bagikan. Bekerja dengan NFS, tidak pernah mencoba dengan cifs.

Juga, lihat autofs, ia akan me-mount share hanya ketika diakses, dan akan melepasnya setelah akhirat.

Ada tutorial yang bagus di www.howtoforge.net

2
Sunny Milenov

Saya punya masalah yang sangat mirip dengan davf. Di halaman manual umount.davfs, saya menemukan bahwa opsi -f -l -n -r -v diabaikan oleh umount.davfs. Untuk memaksa-unmount mount davfs saya, saya harus menggunakan umount -i -f -l /media/davmount.

2
Benedikt Köppel
umount -f -t cifs -l /mnt &

Hati-hati terhadap &, biarkan umount berjalan di latar belakang. umount akan melepaskan sistem file terlebih dahulu, sehingga Anda tidak akan menemukan apa pun yang terhitung /mnt. Jika Anda menjalankan perintah df, maka itu akan umount /mnt secara paksa.

1
zhjb7

Ada opsi -f untuk umount yang dapat Anda coba:

umount -f /mnt/fileshare

Apakah Anda menentukan opsi '-t cifs' untuk dipasang? Pastikan juga Anda tidak menentukan opsi 'sulit' untuk dipasang.

Anda mungkin juga ingin mempertimbangkan fusesmb , karena sistem berkas akan berjalan di userspace, Anda dapat mematikannya sama seperti proses lainnya.

1
Chris AtLee