Làm thế nào để cấu hình để ghi dữ liệu để khởi động ngay lập tức?


12

Nếu tôi chỉnh sửa các tệp trên ổ đĩa của mình, và sau đó chỉ xóa nó một cách vật lý, dữ liệu sẽ không được ghi lại. Tôi phải nhấp vào "đẩy" và do đó, đèn led bắt đầu nhấp nháy và dữ liệu bắt đầu được ghi lại.

Làm thế nào tôi có thể thay đổi điều này, để dữ liệu được ghi lại ngay lập tức khi thay đổi?

cập nhật: Ubuntu 11.10

Trong Ubuntu 11.10, tôi đã viết tệp quy tắc (từ câu trả lời @enzotib ) và hoạt động, nhưng đưa ra thông báo sau khi tôi cố gắng đẩy / ngắt kết nối:

nhập mô tả hình ảnh ở đây

(tôi có nên bắt đầu một câu hỏi khác cho Ubuntu 11.10 không?)


2
Hiệu suất sẽ ít hơn vì bộ đệm ghi không được sử dụng nữa. Phân chia chính xác các phân vùng bằng cách sử dụng các tùy chọn đẩy / ngắt kết nối hoặc bạn sẽ mất dữ liệu.
Lekensteyn

4
Bạn có thể sử dụng synctùy chọn khi gắn phân vùng. Điều này không được khuyến khích mặc dù nó làm tăng đáng kể số lần ghi vào ngón tay cái.
sắp xếp

2
@arrange như ubfox làm automount, có cách nào để đặt cái này synclàm mặc định không, vì vậy tôi không cần phải làm điều này trong một thiết bị đầu cuối mỗi lần? Và tôi biết rằng nó sẽ tăng đáng kể số lượng bài viết, vẫn là điều tôi muốn. Cảm ơn!
Tom Brito


@arrange đã thấy nó, nhưng nó vẫn chưa phải là một câu trả lời hoàn chỉnh ...
Tom Brito

Câu trả lời:


8

Sau câu hỏi (và trả lời) mà @arrange thể hiện trong bình luận của anh ấy, hãy tạo một tệp mới

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

và viết vào đó nội dung sau (xem udev :: Mount under / media; sử dụng nhãn phân vùng nếu có )

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"

Tôi đã thực hiện một số sửa đổi nhỏ đối với báo cáo trên trang web

  • thêm synctùy chọn vàoENV{mount_options}
  • đã sửa đổi gid=100tùy chọn thành uid=1000,gid=1000, trong đó số có liên quan đến id đã sử dụng và id nhóm của bạn, khi được trả về bởi id -uid -g

Cái thứ hai làm cho bạn trở thành chủ sở hữu của tất cả các tệp trên phân vùng được gắn kết, do đó không có vấn đề về quyền nào có thể phát sinh. Rõ ràng đây không phải là trường hợp nếu nhiều hơn một người dùng nên truy cập các tệp, nhưng điều này có thể được xử lý theo những cách khác.

Đối với các hệ thống tệp không phải là windows, chủ sở hữu và nhóm là siêu dữ liệu trên hệ thống tệp và không thể thay đổi bằng tùy chọn gắn kết.

Quy tắc mới được kích hoạt ngay lập tức ( udev sử dụng inotify để phát hiện các tệp quy tắc mới và được sửa đổi).

Ổ đĩa được gắn không tự động mở trong cửa sổ trình quản lý tệp, như bạn có thể thấy, và điều này rất khó đạt được, do quá trình gắn được sở hữu bởi root và không có quyền truy cập vào phiên đăng nhập đồ họa của bạn. Nhưng ổ đĩa nằm trên máy tính để bàn của bạn, vì vậy một cú nhấp chuột đơn giản sẽ mở nó.

Thật không may, tôi không thể làm cho máy tính để bàn nhấp chuột phải không hoạt động, nhưng đây không phải là vấn đề lớn: có synctùy chọn tại chỗ, bạn chỉ cần rút phích cắm thiết bị và quy tắc udev sẽ cẩn thận xóa mục nhập /proc/mountsvà gỡ bỏ phần gắn kết- điểm.


Tôi không thể làm tròn để viết hướng dẫn này, cảm ơn vì đã làm nó;) Và tôi cũng không thể khiến người dùng không thể làm việc được, có vẻ như userstùy chọn này chỉ hợp lệ trong fstabtệp ... Đây không phải là một vấn đề ở đây ("đồng bộ hóa"), nhưng đối với cách làm chung thì nó sẽ như thế nào.
sắp xếp

Cảm ơn đã trả lời. Thật không may, sau khi thực hiện mô tả, tôi không thể tạo, chỉnh sửa hoặc xóa bất kỳ tệp nào trên ổ đĩa. Ngoài ra, nó không còn tự động mở cửa sổ khi tôi cắm nó. Bất kỳ ý tưởng?
Tom Brito

Nhân tiện, tôi cho rằng phần mở rộng bạn đã gõ ".rule" là sai và tôi đã sử dụng cùng một tệp trong thư mục đó: ".rules".
Tom Brito

Các tài liệu không nói về các phần mở rộng cụ thể để sử dụng. Bằng cách tôi sao chép sai từ trang web, vì vậy tốt hơn là sử dụng .rulesđể an toàn. Đối với phần còn lại, xem câu trả lời chỉnh sửa.
enzotib

Xin chào, tôi đang sử dụng Ubuntu 11.10 và có một hành vi khác. Xin vui lòng, xem cập nhật của tôi.
Tom Brito
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.