আমি ইউএসবির মাধ্যমে একটি 1 টিবি ড্রাইভ সংযুক্ত করেছি। এটিতে একটি ডিভিএম ভৌত ভলিউম রয়েছে যা পুরো ডিভাইসটি পূরণ করে (কোনও বিভাজন সারণী ছাড়াই)। আমি যখন পুরো পিভি ব্যবহার করে লজিক্যাল ভলিউম প্রসারিত করার চেষ্টা করেছি , ডিভাইস-ম্যাপার অভিযোগ করতে শুরু করে যে পিভিতে এলভিএম দ্বারা বরাদ্দকৃত অংশটি ডিভাইসের চেয়ে বড়। ডিভাইস-ম্যাপার থেকে ত্রুটি বার্তা (দেখানো হয়েছে dmesg
) 1953320367 [ডিএম] সেক্টরের আকারের প্রতিবেদন করেছে:
device-mapper: table: 254:0: sdf too small for target: start=1821353984, len=132169728, dev_size=1953320367
তবে এলভিএম 238467 দৈহিক এক্সটেন্টস সহ একটি পিভি তৈরি করেছে , যা 1953521664 [ এলভিএম ] খাত (প্রায় 100 এমবি আরও):
$ pvdisplay /dev/sdf
--- Physical volume ---
PV Name /dev/sdf
VG Name apu-vg1
PV Size 931.51 GiB / not usable 1.71 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 238467
Free PE 100
Allocated PE 238367
PV UUID LrKDDW-4dXz-kDgh-CK78-OWhY-4sCH-rKT0e4
এখন আমি যদি hdparm -gI
ডিভাইসে চালিত করি তবে আমি ডিভাইসের আকারের জন্য দুটি মান দেখতে পাচ্ছি। জ্যামিতির অধীনে , ডিভাইস-ম্যাপার দ্বারা ডিভাইসের আকারের মতো প্রতিবেদন করা একই মান রয়েছে। তবে এলবিএ 48 এর ব্যবহারকারী ঠিকানাযোগ্য ক্ষেত্রগুলির অধীনে 1953525168 [ এলবিএ ] মান রয়েছে , যা পিভির পিইগুলির সংমিশ্রণের আকারের চেয়ে এক পিই কম বড়। এটি আমাকে ভাবতে বাধ্য করে যে এটি সেই মান যা এলভিএম দেখায়:
$ hdparm -Ig /dev/sdf
/dev/sdf:
geometry = 121588/255/63, sectors = 1953320367, start = 0
ATA device, with non-removable media
Model Number: ST1000LM024 HN-M101MBB
Serial Number: S2RUJ9BC702524
Firmware Revision: 2AR10001
Transport: Serial, ATA8-AST, SATA 1.0a, SATA II Extensions, SATA Rev 2.5, SATA Rev 2.6, SATA Rev 3.0
Standards:
Used: unknown (minor revision code 0x0028)
Supported: 8 7 6 5
Likely used: 8
Configuration:
Logical max current
cylinders 16383 16383
heads 16 16
sectors/track 63 63
--
CHS current addressable sectors: 16514064
LBA user addressable sectors: 268435455
LBA48 user addressable sectors: 1953525168
...
এখন আমার প্রশ্নের:
- কার্নেলের বিভিন্ন অংশ দ্বারা ব্যবহৃত ডিভাইসের আকারের জন্য কেন দুটি পৃথক মান রয়েছে?
- এবং, আমি কীভাবে এই পরিস্থিতিটি হ্যান্ডেল / ফিক্স করব যাতে LVM পিভিগুলি তৈরি করতে না পারে যা ডিভাইস-ম্যাপার অ্যাক্সেস করতে ইচ্ছুক / সক্ষম স্থানের চেয়ে বড়?
hdparm
হ'ল বৃহত্তম সংখ্যা যা 255 * 63 টি সেক্টরের একাধিক এবং প্রকৃত আকারের চেয়ে কম। 30 বছর বয়সী বিআইওএস ইন্টারফেসের সিলিন্ডার / হেড / সেক্টর ফর্ম্যাটের কারণে এই সীমাবদ্ধতা। নতুন এলবিএ 48 ইন্টারফেসটি আপনার ডিস্কের আকারটি ঠিক ঠিক রিপোর্ট করতে পারে। লিনাক্স যে কোনও কিছুর জন্য সিএইচএস আকার ব্যবহার করে কেন আমার ধারণা নেই।
vgextend <vg-name> /dev/sdf
। এলভিএম আমার প্রত্যাশাটি ঠিক তাই করে। pvdisplay
এমনকি বলছেন যে 1.71 MiB unusabe, যা ঠিক [LVM] এবং [LBA] মধ্যে পার্থক্য মাপ।