আমি ফ্যাবির মতামত পছন্দ করি তবে এই খারাপ অভ্যাস সম্পর্কে লোকদের শেখানো ভাল (তারা নিয়ন্ত্রিত মেশিনে সারাক্ষণ কাজ করে না)। এটি এখানে বর্ণিত হিসাবে একটি ওএসএক্স বৈশিষ্ট্যের অনুরূপ ।
একটি ছোট পার্থক্য রয়েছে যা আপনি এটি নিরাপদ অপসারণ কিনা তা জানতে এটি ব্যবহার করতে পারেন:
উদেব ইভেন্টগুলি পর্যবেক্ষণ করে লক্ষ্য করা:
udevadm monitor -u --environment
নিরাপদ অপসারণ
UDEV [8292.380554] change /devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2:1.0/host16/target16:0:0/16:0:0:0/block/sdb (block)
ACTION=change
DEVLINKS=/dev/disk/by-id/usb-ADATA_USB_Flash_Drive_8d90ec535e6663-0:0 /dev/disk/by-path/pci-0000:00:14.0-usb-0:2:1.0-scsi-0:0:0:0
DEVNAME=/dev/sdb
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2:1.0/host16/target16:0:0/16:0:0:0/block/sdb
DEVTYPE=disk
DISK_MEDIA_CHANGE=1
ID_BUS=usb
ID_INSTANCE=0:0
ID_MODEL=USB_Flash_Drive
ID_MODEL_ENC=USB\x20Flash\x20Drive\x20
ID_MODEL_ID=c96a
ID_PATH=pci-0000:00:14.0-usb-0:2:1.0-scsi-0:0:0:0
ID_PATH_TAG=pci-0000_00_14_0-usb-0_2_1_0-scsi-0_0_0_0
ID_REVISION=0.00
ID_SERIAL=ADATA_USB_Flash_Drive_8d90ec535e6663-0:0
ID_SERIAL_SHORT=8d90ec535e6663
ID_TYPE=disk
ID_USB_DRIVER=usb-storage
ID_USB_INTERFACES=:080650:
ID_USB_INTERFACE_NUM=00
ID_VENDOR=ADATA
ID_VENDOR_ENC=ADATA\x20\x20\x20
ID_VENDOR_ID=125f
MAJOR=8
MINOR=16
SEQNUM=2989
SUBSYSTEM=block
TAGS=:systemd:
USEC_INITIALIZED=554873
অনিরাপদ সরান
UDEV [8391.320280] remove /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/host17/target17:0:0/17:0:0:0/block/sdb (block)
ACTION=remove
DEVLINKS=/dev/disk/by-id/usb-ADATA_USB_Flash_Drive_8d90ec535e6663-0:0 /dev/disk/by-path/pci-0000:00:14.0-usb-0:3:1.0-scsi-0:0:0:0
DEVNAME=/dev/sdb
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/host17/target17:0:0/17:0:0:0/block/sdb
DEVTYPE=disk
ID_BUS=usb
ID_INSTANCE=0:0
ID_MODEL=USB_Flash_Drive
ID_MODEL_ENC=USB\x20Flash\x20Drive\x20
ID_MODEL_ID=c96a
ID_PART_TABLE_TYPE=dos
ID_PATH=pci-0000:00:14.0-usb-0:3:1.0-scsi-0:0:0:0
ID_PATH_TAG=pci-0000_00_14_0-usb-0_3_1_0-scsi-0_0_0_0
ID_REVISION=0.00
ID_SERIAL=ADATA_USB_Flash_Drive_8d90ec535e6663-0:0
ID_SERIAL_SHORT=8d90ec535e6663
ID_TYPE=disk
ID_USB_DRIVER=usb-storage
ID_USB_INTERFACES=:080650:
ID_USB_INTERFACE_NUM=00
ID_VENDOR=ADATA
ID_VENDOR_ENC=ADATA\x20\x20\x20
ID_VENDOR_ID=125f
MAJOR=8
MINOR=16
SEQNUM=3022
SUBSYSTEM=block
TAGS=:systemd:
USEC_INITIALIZED=436355
একটি udev নিয়ম তৈরি করুন (পরিবর্তন useranme
)
$ sudo nano /etc/udev/rules.d/90-unsafe-remove-notify.rules
ACTION=="remove", KERNEL=="sd?", ENV{ID_PART_TABLE_TYPE}!="", RUN+="/usr/bin/sudo -u username DISPLAY=:0 notify-send 'Unsafe Remove' '<b><i>Your long message</b></i>' -i /usr/share/icons/gnome/48x48/emotes/face-worried.png -t 10000"
নিয়মগুলি পুনরায় লোড করুন
sudo udevadm control --reload-rules
অন্য উপায়, আপনি একটি স্ক্রিপ্ট (পাইথন) ব্যবহার করতে পারেন যা udisks
DBUS এর সাথে সংযুক্ত রয়েছে। এটিতে পার্টিশন মাউন্ট / আনমাউন্ট, ডিস্ক প্লাগ / আনপ্লাগ সম্পর্কে আপনার প্রয়োজনীয় সমস্ত তথ্য রয়েছে ...
তথ্যসূত্র / উত্স : জেন্টু উইকি: উদিস্কস - ইউএসবি_টম্ব_ড্রাইভ_এক উদাহরণ
df -a | grep 'sd[b-z]'
কমান্ড সহ মাউন্টিং / আনমাউন্টিং সময়কে পর্যবেক্ষণ করে । একটি udev নিয়ম কোনও প্রকারের লগতে অপসারণের তারিখ প্রেরণ করতে পারে। স্ক্রিপ্ট দ্বারা প্রদত্ত অপসারণের সময়টি যদি উদেব নিয়মের সাথে মিলিত হয় (কমপক্ষে কয়েক মিনিটের মধ্যে, সেকেন্ডের সাথে দেরি হতে পারে), তবে ইউএসবি মাউন্ট হয় নি।