উত্তর:
$ udevadm info -q all -a /dev/sdb
দ্রষ্টব্য: উপরের ডিভাইস সম্পর্কিত তথ্যের জন্য ইউডিইভি ডাটাবেসটি info
অনুসন্ধান করে, আমরা সমস্ত তথ্যের জন্য অনুসন্ধান -q all
করি এবং আমরা /sys
এই ডিভাইসের লেবেলের সাথে সম্পর্কিত সমস্ত বৈশিষ্ট্যগুলি চলছি ।
উদ্ধৃতাংশ
--attribute-walk|-a
Print all sysfs properties of the specified device that can be used
in udev rules to match the specified device. It prints all devices
along the chain, up to the root of sysfs that can be used in udev
rules.
এই আমার /dev/sda
ডিভাইস।
$ udevadm info -q all -a /dev/sda | grep parent
walks up the chain of parent devices. It prints for every device
and the attributes from one single parent device.
looking at parent device '/devices/pci0000:00/0000:00:1f.2/ata1/host0/target0:0:0/0:0:0:0':
looking at parent device '/devices/pci0000:00/0000:00:1f.2/ata1/host0/target0:0:0':
looking at parent device '/devices/pci0000:00/0000:00:1f.2/ata1/host0':
looking at parent device '/devices/pci0000:00/0000:00:1f.2/ata1':
looking at parent device '/devices/pci0000:00/0000:00:1f.2':
looking at parent device '/devices/pci0000:00':
@ সেপেরোর উত্তরটি লিফ নোডে কেবল ইউডিইভি ডিভাইসের সাথে সম্পর্কিত তথ্য দেখাচ্ছে।
$ udevadm info -q all -n /dev/sda > udevadm_info_1.txt
আমার উত্তরটি /sys
ডিভাইসের পুরো চেইন শ্রেণিবিন্যাসের সাথে সাথে চলতে চলতে বৈশিষ্টগুলি দেখায় ।
$ udevadm info -q all -a /dev/sda > udevadm_info_2.txt
আপনি এই দুটি মধ্যে পার্থক্য দেখতে পারেন।
$ diff -y udevadm_info_1.txt udevadm_info_2.txt \
> udevadm_info_diff.txt
দ্রষ্টব্য: আমি ফেডোরা 19 তে চলছে, এর 204 সংস্করণ ব্যবহার করে udevadm
:
$ udevadm --version
204
udevadm info -q all
নয় udevadm info -a
। আমি মনে করি -a
এটির জন্য একটি শর্টকাট -q all --attribute-walk
। নাকি এটি আপনার সংস্করণে আলাদা? আমি এই পরিবর্তনটি মনে করি না, তবে আমি বছরের পর বছর ফেডোরা ব্যবহার করি নি (তবে কেন কোনও বিতরণ এটি প্যাচ করবে?)।
udevadm info
এই ধরণের তথ্য সরবরাহ করে।
আপনি যদি বিশেষত সাবসিস্টেমটি চান:
udevadm info -n /dev/sdb -q property | sed -n 's/SUBSYSTEM=//p'
আপনি যখন ইউদেব বিধিগুলি লিখছেন, সর্বাধিক দরকারী কমান্ডটি
udevadm info -a -n /dev/sdb
এইগুলি এমন নিয়মগুলি মুদ্রণ করে যা আপনি ইউদেব বিধিগুলিতে ডিভাইসের সাথে মেলে ব্যবহার করতে পারেন। প্রথম ব্লকটি ডিভাইসটি সম্পর্কেই, এবং পরবর্তী ব্লকগুলি ডিভাইস ট্রিতে এর পূর্বপুরুষদের সম্পর্কে। একমাত্র সতর্কতা হ'ল আপনি বিভিন্ন পূর্বপুরুষের সাথে মিলে এমন কীগুলি মেশাতে পারবেন না। উদাহরণস্বরূপ, এই অংশটি দেওয়া হয়েছে
KERNEL=="sdb"
SUBSYSTEM=="block"
…
KERNELS=="5:0:0:0"
SUBSYSTEMS=="scsi"
DRIVERS=="sd"
ATTRS{model}=="Yoyodyne Diskinator"
…
KERNELS=="0000:00:1f.2"
SUBSYSTEMS=="pci"
DRIVERS=="ahci"
তারপরে আপনি এই ডিভাইসটির সাথে SUBSYSTEM=="block", SUBSYSTEMS=="scsi", ATTRS{model}="Yoyodyne Diskinator"
বা এর সাথে SUBSYSTEM=="block", SUBSYSTEMS=="pci", DRIVERS="ahci"
নয় তবে মেলাতে পারবেন SUBSYSTEM=="block", SUBSYSTEMS=="scsi", ATTRS{model}="Yoyodyne Diskinator", DRIVERS="ahci"
।
নিয়মে ব্যবহারের জন্য তথ্য পাওয়ার আরেকটি উপায় রয়েছে
udevadm info -q property -n /dev/sdb --export
এটি ফর্মের ডিভাইসের সম্পত্তি মানগুলি মুদ্রণ করে যা আপনি ইউদেব বিধি হিসাবে ব্যবহার করতে পারেন ।KEY=VALUE
ENV{KEY}=="VALUE"
যদি আপনার ডিভাইসে কোনও /dev
প্রবেশ নেই, আপনি /sys
তার পরিবর্তে কোনও পাথ সহ এটি উল্লেখ করতে পারেন , উদাহরণস্বরূপ
udevadm info -a -p /sys/block/sdb
(এক্ষেত্রে দরকারী উদাহরণ নয় - এটি এমন ডিভাইসগুলির জন্য দরকারী যার বিভাগটি সাধারণ নয় এবং /dev
এখনও এর নিচে প্রবেশ নেই)।
আপনি যখন উদেব নিয়মগুলি পরিবর্তন করেন, সেগুলি স্বয়ংক্রিয়ভাবে পড়া হয়; তবে সেগুলি কেবলমাত্র সেই ডিভাইসে প্রয়োগ করা হয় যা পরবর্তী সময়ে সিস্টেমে প্লাগ হয়। ইতিমধ্যে সংযুক্ত ডিভাইসে নতুন নিয়মাবলী প্রয়োগ করতে, ব্যবহার করুন udevadm trigger
(নির্দিষ্ট ডিভাইসে অ্যাপ্লিকেশনকে সীমাবদ্ধ করার বিকল্পগুলি সহ)।
udevadm info -a -n /dev/sdb
?