একটি পার্টিশনের ক্ষেত্রের আকার সন্ধান করা


24

আমি এই প্রশ্নের উত্তর দিয়েছি , ধরে নিলাম যে *.imgফাইলটির একটি সেক্টর আকার রয়েছে 512

সঠিক খাত আকারটি পেতে কীভাবে আমি কোনও ডিভাইস বা কোনও ডিভাইসের চিত্র জিজ্ঞাসা করব?

উত্তর:


26

fdisk -l (এটি প্যারামিটারের কম এল) আপনাকে খাত আকারের অন্যান্য তথ্যের মধ্যেও দেখাবে।

$ sudo fdisk -l

Disk /dev/sda: 150.3 GB, 150323855360 bytes
255 heads, 63 sectors/track, 18275 cylinders, total 293601280 sectors
Units = sectors of 1 * 512 = 512 bytes

   Device Boot      Start         End      Blocks   Id  System
   /dev/sda1   *          63      208844      104391   83  Linux
   /dev/sda2          208845   209712509   104751832+  83  Linux

এটি দেখায় যে খাতটির আকার 512 বাইট।

সম্পাদনা: fdiskউদাহরণস্বরূপ, fdisk(প্যাকেজ থেকে util-linux 2.20.1) এর আরও নতুন সংস্করণগুলি আপনাকে লজিক্যাল এবং শারীরিক ক্ষেত্রের আকারগুলি প্রদর্শন করবে। উদাহরণস্বরূপ, "ডাব্লুডিসি ডাব্লুডি 10 ইএফআরএক্স 1 টিবি ড্রাইভ" থেকে প্রাসঙ্গিক আউটপুট:

Disk /dev/sdn: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes

সুতরাং এটি ছিল 4096 বাইট, 512 বাইট নয়।
Hibou57

26

সারি sysfs ফাইলগুলির জন্য ডকুমেন্টেশন অনুসারে :

# cat /sys/block/sda/queue/hw_sector_size
512

1
এটি স্বেচ্ছাসেবী চিত্র ফাইলগুলির জন্য কাজ করবে না। তাদের সম্পর্কে কার্নেলটি কীভাবে জানতে হবে?
খ্রিস্টান পাইটসচ

1
@ChristianPietsch নির্বিচারে ইমেজ ফাইল সাধারণত, লুপ ডিভাইস এর মাধ্যমে মাউন্ট করা হয় তাই এই হবে তাদের জন্য কাজ। loopNপরিবর্তে ব্যবহার করতে ভুলবেন না sdX। তবুও, এটি একটি অর্থে বরং অর্থহীন, যেহেতু চিত্র ফাইলগুলিতে আসলে কোনও সেক্টর নেই এবং এই তথ্যটি আপনাকে বর্তমানে মাউন্ট করা ডিভাইসের খাত আকার বলবে।
রুসলান

1

কেউ কেবল file(1)কমান্ড ব্যবহার করতে পারে এবং নিজেই গণিত করতে পারে। আপনার কেবল FAT সিস্টেমের একটি চিত্র থাকলেও এটি কাজ করে।

উদাহরণ স্বরূপ:

$ sudo file -s /dev/sda5 | tr , '\n'
/dev/sda5: DOS/MBR boot sector
 code offset 0x58+2
 OEM-ID "mkfs.fat"
 sectors/cluster 64
 reserved sectors 64
 Media descriptor 0xf8
 sectors/track 63
 heads 255
 hidden sectors 147632128
 sectors 536870912 (volumes > 32 MB)
 FAT (32 bit)
 sectors/FAT 65536
 serial number 0x9f981691
 unlabeled

এই পার্টিশনের প্রতি ক্লাস্টারে sectors৪ টি সেক্টর রয়েছে। প্রতিটি সেক্টরে বাইটের সংখ্যা 512, এটি ডিফল্ট হিসাবে, তাই ক্লাস্টারের আকার 32KB।

লক্ষ্য করুন যে সেক্টরের আকার 512 এর চেয়ে বেশি হতে পারে (FAT স্পেসিফিকেশন এটি 4096 এর মধ্যে সীমাবদ্ধ করে তবে আপনি আরও উপরে যেতে পারেন)। যখন এটি হয়, আপনি আউটপুটে একটি অতিরিক্ত "বাইটস / সেক্টর" ক্ষেত্রটি দেখতে পাবেন।

$ sudo mkfs.fat -S 4096 -s 16 /dev/sda5
mkfs.fat 4.1 (2017-01-24)

$ sudo file -s /dev/sda5 | tr , '\n'
/dev/sda5: DOS/MBR boot sector
 code offset 0x58+2
 OEM-ID "mkfs.fat"
 Bytes/sector 4096
 sectors/cluster 16
 Media descriptor 0xf8
 sectors/track 63
 heads 255
 hidden sectors 147632128
 sectors 67108864 (volumes > 32 MB)
 FAT (32 bit)
 sectors/FAT 4096
 serial number 0xb059d826
 label: unlabeled

ম্যাচটি আবার করুন, ক্লাস্টারে প্রতি 4096 বাইট × 16 সেক্টর = 64 কিবি।


0

উপরের জবাবগুলি, fdisk সম্পর্কে শারীরিক ক্ষেত্রের আকার দেখানো এবং / sys পাথ সম্পর্কে ... তবে একটি নোট ... লুবাস দ্বারা নিরঙ্কুশ ফ্রিবিএসডি বইটিতে .... প্রায় প্রতিটি এইচডিডি খাতের আকার সম্পর্কে মিথ্যা বলবে, তাই লিনাক্সের ক্ষেত্রে

/sys/block/sda/queue/hw_sector_size

সর্বদা, যতদূর আমি বুঝতে পারি, আরও ভাল পারফরম্যান্সের জন্য 512 দেখান এটি শারীরিক ক্ষেত্রের আকার বিবেচনা করা ভাল, বাস্তব, যা সত্যই হার্ডওয়্যার যুক্তিতে ব্যবহৃত হয়েছে। এটি fdisk দ্বারা দেখানো হয়েছে, এবং এটি উপস্থিত

cat /sys/block/sdc/queue/physical_block_size 
4096
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.