Nonaktifkan pembuatan file .AppleDouble di Mac OS X

19

Apakah ada cara untuk menonaktifkan pembuatan file .AppleDouble di Mac OS X (Snow Leopard) pada sistem file non-HFS (seperti pangsa jaringan SMB atau NFS dll ...)?

Bart
sumber
1
Harap berikan informasi lebih lanjut. Mereka biasanya tidak dibuat di HFS +.
Daniel Beck

Jawaban:

7

Mengingat bahwa Mac mendukung beberapa garpu untuk file, trik AppleDouble ( ._file) mencoba untuk melestarikan data dalam garpu tersebut. Jadi mereka diperlukan agar Mac OS X dapat melakukan operasi pada mereka.

Namun, sebagian besar file dibuat ketika volume yang sama dipasang melalui AFP, bukan SMB / CIFS atau NFS. Jika demikian, server AFP mungkin memiliki opsi konfigurasi untuk berurusan dengan file Apple Double (lihat, misalnya, posting blog ini ).

Untuk menyingkirkan file AppleDouble, Anda dapat menggunakan dot_cleanperintah pada Mac :

dot_clean --keep=dotbar /Volumes/mounted_smb_volume

di mana mounted_smb_volumeakan menjadi nama volume yang dipasang.

Anda bisa menambahkannya ke crontabentri, atau lebih baik lagi, gunakan sesuatu seperti Lingon X untuk membuat launchdentri.

juandesant
sumber
Apakah ini berhasil untuk Anda, @Bart? Anda dapat mempertimbangkan menandainya sebagai solusi yang tepat 😉
juandesant
Saya menggunakan ini pada kartu SD dan isinya tidak dapat dilihat dengan Finder lagi, hanya terlihat di terminal dengan ls.
FRIdSUN
@FridSUN, cobalah untuk mengeluarkan dan memasang volume lagi, itu tidak masuk akal mereka tetap tidak terlihat di Finder ... kecuali Anda memiliki file yang dimulai dengan titik (.), Atau Anda telah menandai volume itu sebagai tidak terlihat.
remaja
Pertanyaannya adalah tentang file yang dipanggil .AppleDouble, bukan file yang mulai._
Stop Harming Monica
AppleDouble adalah penyandian untuk metadata, @OrangeDog; lihat misalnya icesquare.com/wordpress/how-to-remove-ds_store-and-appledouble AppleDouble metadata yang disandikan ada dalam bentuk ._file.
Juandesant
4

http://support.apple.com/kb/HT1629 memberitahu saya bahwa ini dapat dilakukan melalui

Untuk mengonfigurasi akun pengguna Mac OS X sehingga file .DS_Store tidak dibuat saat berinteraksi dengan server file jarak jauh menggunakan Finder, ikuti langkah-langkah di bawah ini:

Catatan: Ini akan memengaruhi interaksi pengguna dengan server SMB / CIFS, AFP, NFS, dan WebDAV.

Open Terminal.
Execute this command:

defaults write com.apple.desktopservices DSDontWriteNetworkStores true

Either restart the computer or log out and back in to the user account.
Layticia
sumber
3
Tampaknya tidak berfungsi untuk .AppleDoublefile.
Adam Lindberg
4
Ini jelas hanya berlaku untuk .DS_Store dan bukan ke .AppleDouble.
Asher
3

File AppleDouble (yang bernama ._filename) dibuat ketika Anda menyalin file yang berisi garpu sumber daya ke sistem file non-HFS.

Terkadang (tetapi tidak selalu) sumber daya yang dapat Anda kelola tanpa data sumber daya garpu - misalnya menyalin file mp3.

Anda dapat menekan penyalinan garpu sumber daya jika Anda menggunakan shell (bukan pencari) dengan menggunakan:

cp -X
Howard
sumber
2
Ini bukan solusi umum.
Adam Lindberg
Untuk memperjelas mengapa ini bukan solusi umum, ini hanya berlaku ketika menyalin file secara manual dari baris perintah. Ini tidak mungkin memiliki hubungan dengan masalah, karena file .AppleDouble dibuat setiap kali file diakses pada volume non-HFS +. Bahkan jika Anda bisa menyalin tanpa sumber daya garpu, itu hanya membahas kasus khusus dan bukan masalah umum tidak menginginkan file .AppleDouble.
Asher
Pertanyaannya adalah tentang file yang dipanggil .AppleDouble, bukan file yang mulai._
Stop Harming Monica
1

Anda dapat menggunakan BlueHarvest untuk secara otomatis menghapus file AppleDouble atau file lain yang dibuat oleh OS X:

Anda dapat menggunakan find . -name ._\* -deleteuntuk menghapus ._file secara rekursif di bawah direktori saat ini. dot_clean -m .juga memiliki efek yang sama.

File yang dimulai dengan ._digunakan untuk menyimpan metadata seperti atribut yang diperluas dan ACL. Atribut yang diperluas mencakup fork resource ( com.apple.ResourceFork) dan flag file ( com.apple.FinderInfo). Anda dapat melihat atribut yang diperluas dengan xattr -latau ACL dengan ls -le. Anda dapat menggunakan xattr -cuntuk menghapus semua atribut yang diperluas atau chmod -Nmenghapus ACL, dan Anda dapat menyalin file tanpa atribut yang diperluas cp -X.

Lri
sumber
1

Ada alat yang disebut "dsweeper" yang tersedia di sini: https://github.com/simsalabim/dsweeper Ini memecahkan masalah (setelah diinstal) dengan sederhana

$ dsweeper -d -p /Path/to/volume/

Dari situs web:

Alat yang tidak membiarkan AppleDouble. File apa pun ke folder yang disimpan pada HDD eksternal. Membantu menjaga Dropbox bersih.

Melalui homebrew, instalasinya sangat sederhana:

$ brew install npm

$ npm install dsweeper -g

Memecahkan masalah bagi saya seperti pesona.

unjordi
sumber
-1

Saya pikir bagian dari pertanyaannya adalah: mengapa Anda ingin menghilangkan file .AppleDouble?

File .AppleDouble dibuat untuk menyimpan sumber daya file tambahan (meta-data, dll.). Sistem file HFS + (dirancang oleh Apple) memiliki sarana asli untuk menangani penyimpanan informasi ini. Filesystem Non-HFS + (NTFS, EXT3 / 4, dll.) Yang disajikan melalui filesharing (Netatalk, SMB, dll.) Memerlukan beberapa cara untuk menyimpan informasi ini. Ini dicapai dengan membuat file tambahan pada sistem file, karena sistem file tidak memiliki cara asli untuk menyimpan informasi.

Tidak seperti file .DS_Store (yang, seperti yang saya pahami, menyimpan detail desktop seperti lokasi ikon, dll.), File .AppleDouble sebenarnya menyimpan informasi yang berpotensi relevan. Ini berarti bahwa Anda mungkin dapat menghapus file .AppleDouble dan OS tidak akan mengeluh, tetapi Anda mungkin kehilangan meta-data jika ada yang terkait dengan file tersebut. Ini juga termasuk meta-data yang dibuat oleh / untuk Spotlight, seperti ketika iTunes memainkan file. Menghapus informasi ini tidak akan menyakiti apa pun, tetapi sedang dibuat / disimpan untuk Anda sehingga OS dapat mengoptimalkan pencarian dan istilah lainnya.

Jadi kesimpulan saya adalah bahwa Anda mungkin tidak benar-benar ingin menghapus .AppleDouble. Tapi mungkin detailnya bisa diisi? Saya tiba di utas ini mencoba membantu Ayah saya dengan dua ReadyNAS; dia ingin menghilangkan file karena keberadaannya tidak dapat dijelaskan dan menyebabkan perilaku aneh dengan program cadangan ReadyNAS (yang tampaknya diselesaikan dengan menggunakan rsync). Harap beri tahu saya jika ada perincian lebih lanjut yang tidak dibahas dalam kesimpulan saya di sini.

Asher
sumber
2
Alasan saya adalah bahwa folder .AppleDouble ini di direktori pada NAS saya mencegah mesin Windows saya menghapus direktori tersebut. Harus masuk ke NAS dan menggunakan browser file berbasis web benar-benar menjengkelkan.
Simon Gill
Saya memilih ini karena saya yakin ini berisi beberapa informasi yang salah. Rupanya tidak ada file sistem non HFS + yang dapat menyimpan metadata? Ini tidak benar, NTFS mendukung metadata file, hanya saja Apple tidak berinteraksi dengannya dengan benar dan malah membuat file dasar.
leinad13
2
Alasan saya adalah stereo mobil saya mencoba memutar file ._XYZ.MP3 dari stik USB saya (FAT32), dan mengeluh dengan ganas. Jadi saya datang dengan sedikit AppleScript untuk menghapus file ._ saat mengeluarkan volume.
Joe Völker
NTFS tidak mendukung metadata Apple dan Apple tidak menulis ke metadata NTFS. Hasilnya adalah deskripsi dalam jawaban asli akurat. "Informasi yang salah" hanya dari kesalahpahaman tentang apa "ini" merujuk dan menganggapnya merujuk pada metadata seperti itu.
Asher