Bagaimana cara mengonfigurasikan untuk merekam data ke flashdisk langsung?

12

Jika saya mengedit file di flashdisk saya, dan kemudian menghapusnya secara fisik, data tidak akan direkam. Saya harus mengklik "mengeluarkan", dan led mulai berkedip, dan data mulai direkam.

Bagaimana saya bisa mengubah ini, sehingga data direkam secara instan ketika diubah?

pembaruan: Ubuntu 11.10

Di Ubuntu 11.10 saya menulis file aturan (dari jawaban @enzotib ), dan berfungsi, tetapi memberikan pesan berikut ketika saya mencoba untuk mengeluarkan / melepas:

masukkan deskripsi gambar di sini

(haruskah saya memulai pertanyaan lain untuk Ubuntu 11.10?)

Tom Brito
sumber
2
Performa akan lebih sedikit karena cache tulis tidak digunakan lagi. Lepaskan partisi dengan benar menggunakan opsi eject / unmount atau Anda akan kehilangan data.
Lekensteyn
4
Anda dapat menggunakan syncopsi saat memasang partisi. Ini tidak dianjurkan karena secara dramatis meningkatkan jumlah menulis ke thumbdrive.
atur
2
@ mengatur sebagai ubuntu lakukan automount, apakah ada cara untuk menempatkan ini syncsebagai default, jadi saya tidak perlu melakukan ini di terminal setiap waktu? Dan saya sadar bahwa itu akan secara dramatis meningkatkan jumlah penulisan, masih apa yang saya inginkan. Terima kasih!
Tom Brito
@ mengatur melihatnya, tapi itu masih bukan jawaban lengkap ...
Tom Brito

Jawaban:

8

Mengikuti pertanyaan (dan jawaban) yang ditampilkan @arrange dalam komentarnya, mari kita buat file baru

/etc/udev/rules.d/11-media-by-label-auto-mount.rules

dan tulis ke dalamnya konten berikut (lihat udev :: Mount di bawah / media; gunakan label partisi jika ada )

KERNEL!="sd[a-z][0-9]", GOTO="media_by_label_auto_mount_end"

# Import FS infos
IMPORT{program}="/sbin/blkid -o udev -p %N"

# Get a label if present, otherwise specify one
ENV{ID_FS_LABEL}!="", ENV{dir_name}="%E{ID_FS_LABEL}"
ENV{ID_FS_LABEL}=="", ENV{dir_name}="usbhd-%k"

# Global mount options
ACTION=="add", ENV{mount_options}="relatime,sync"
# Filesystem-specific mount options
ACTION=="add", ENV{ID_FS_TYPE}=="vfat|ntfs", ENV{mount_options}="$env{mount_options},utf8,uid=1000,gid=1000,umask=002"

# Mount the device
ACTION=="add", RUN+="/bin/mkdir -p /media/%E{dir_name}", RUN+="/bin/mount -o $env{mount_options} /dev/%k /media/%E{dir_name}"

# Clean up after removal
ACTION=="remove", ENV{dir_name}!="", RUN+="/bin/umount -l /media/%E{dir_name}", RUN+="/bin/rmdir /media/%E{dir_name}"

# Exit
LABEL="media_by_label_auto_mount_end"

Saya telah melakukan beberapa modifikasi kecil sehubungan dengan yang dilaporkan di situs web

  • menambahkan syncopsi keENV{mount_options}
  • mengubah gid=100opsi menjadi uid=1000,gid=1000, di mana jumlahnya relatif terhadap id yang digunakan dan id grup, seperti yang dikembalikan oleh id -udanid -g

Yang kedua menjadikan Anda pemilik semua file pada partisi yang dipasang, sehingga tidak ada masalah izin yang dapat muncul. Jelas ini bukan masalahnya jika lebih dari satu pengguna harus mengakses file, tetapi ini dapat ditangani dengan cara lain.

Untuk sistem file non-windows, pemilik dan grup adalah metadata pada sistem file, dan tidak dapat diubah oleh opsi pemasangan.

Aturan baru segera aktif ( udev menggunakan inotify untuk mendeteksi file aturan baru dan yang dimodifikasi).

Drive yang dipasang tidak secara otomatis dibuka di jendela manajer file, seperti yang Anda lihat, dan ini sulit dicapai, mengingat proses pemasangan dimiliki oleh root, dan tidak memiliki akses ke sesi login grafis Anda. Tetapi drive ada di desktop Anda, jadi klik dua kali sederhana akan membukanya.

Sayangnya saya tidak bisa menjalankan klik kanan desktop unmount, tetapi ini bukan masalah besar: memiliki syncopsi di tempat, Anda cukup mencabut perangkat, dan aturan udev berhati-hati menghapus entri dari /proc/mountsdan menghapus mount- titik.

enzotib
sumber
Saya tidak bisa menulis bagaimana-untuk ini, terima kasih sudah melakukannya;) Dan saya juga tidak bisa membuat pengguna unmount berfungsi, sepertinya usersopsi ini hanya valid dalam fstabfile ... Ini bukan masalah di sini ("sinkronisasi"), tetapi untuk umum bagaimana caranya.
atur
Terimakasih telah menjawab. Sayangnya, setelah melakukan hal yang dijelaskan, saya tidak dapat membuat, mengedit, atau menghapus file apa pun pada flashdisk. Juga, tidak lagi membuka jendela secara otomatis ketika saya mencolokkannya. Ada ide?
Tom Brito
Ngomong-ngomong, saya menganggap bahwa ekstensi yang Anda ketikkan ".rule" salah, dan saya menggunakan yang sama dari file lain di folder itu: ".rules".
Tom Brito
Dokumentasi tidak berbicara tentang ekstensi spesifik untuk digunakan. Ngomong-ngomong saya salin salah dari situs, jadi lebih baik gunakan .rulesuntuk aman. Untuk selebihnya, lihat jawaban yang diedit.
enzotib
Hei, saya di Ubuntu 11.10 sekarang, dan ada perilaku yang berbeda. Tolong, lihat pembaruan saya.
Tom Brito