Apakah NFS memungkinkan saya untuk memutuskan tautan / menghapus file yang terbuka seperti yang dapat saya lakukan dengan sistem file lokal?
Alasan saya bertanya adalah bahwa saya sedang mengembangkan sesuatu yang berjalan di beberapa server dan dapat mengakses NFS sebagai ujung belakang. Ini agak menyederhanakan hal-hal jika saya dapat melakukan unlink pada file yang terbuka.
Ini adalah fitur yang bagus dari sistem file linux (unix?) Yang dapat Anda putuskan tautan file yang terbuka. Itu hanya menghapus entri direktori. File masih tersedia untuk proses yang membuatnya terbuka selama terbuka. Setelah ditutup, inode dihancurkan.
Apakah fungsi yang sama berlaku untuk file yang dibuka di NFS mounts?
Jawaban:
Jawaban singkatnya adalah ya dengan peringatan.
Karena NFSv3 tidak memiliki kewarganegaraan, driver klien NFS menyelesaikan ini dengan sesuatu yang disebut "ganti nama konyol", di mana file yang dihapus diubah namanya menjadi sesuatu seperti .nfsXXXXXXXXXXX. Ini biasanya bekerja, tetapi ada beberapa peringatan dibandingkan dengan sistem file lokal. Misalnya, jika klien macet maka file .nfsXXXX tidak akan dihapus, dan Anda harus membersihkannya secara manual.
Saya pikir pada NFSv4.1 protokol memiliki fitur yang diperlukan untuk mengimplementasikan delete-on-last-close tanpa mengganti nama konyol, tapi saya tidak tahu apakah ada klien / server yang mengimplementasikan ini.
sumber