জিপিটি বা এমবিআর: আমি কীভাবে জানব?


81

আমার হার্ডড্রাইভ এমবিআর বা জিপিটি ফর্ম্যাট ব্যবহার করে নির্ধারিত কিনা তা আমি কীভাবে বলতে পারি ?


উত্তর:


87

parted -lপার্টিশন টেবিলের ধরণ নির্ধারণ করতে আপনি ব্যবহার করতে পারেন । উদাহরণ:

$ sudo parted -l
Model: ATA TOSHIBA THNSNS25 (scsi)
Disk /dev/sda: 256GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type     File system  Flags
 1      4194kB  32.2GB  32.2GB  primary  ext4         boot
 2      32.2GB  256GB   224GB   primary  ext4


Model: ATA Hitachi HDT72101 (scsi)
Disk /dev/sdb: 1000GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type     File system     Flags
 1      1049kB  32.2GB  32.2GB  primary  ext4            boot
 2      32.2GB  996GB   964GB   primary  ext4
 3      996GB   1000GB  4295MB  primary  linux-swap(v1)

Partition Tableক্ষেত্র যে আমি একটি ব্যবহার করছি দেখায় msdosউভয় ডিস্কে উপস্থিত MBR পার্টিশন টেবিল (এক এখনও সাধারণভাবে Linux এবং Windows এর জন্য ব্যবহৃত হয়)। manপৃষ্ঠা থেকে partedনিম্নলিখিত ধরণের পার্টিশন টেবিল (এবং আরও বিস্তৃতভাবে `ডিস্ক লেবেল ') তৈরি করতে পারে (এবং এইভাবে আশাবাদী সনাক্ত করতে পারে):

bsd
dvh
gpt    - this is a GPT partition table
loop   - this is raw disk access without a partition table
mac
msdos  - this is a standard MBR partition table
pc98
sun

হালনাগাদ

একটি একক পার্টিশনের তালিকা তৈরির জন্য কমান্ডটি যুক্তিযুক্ত কারণ এটি কিছু জ্ঞান ছাড়াই সুস্পষ্ট নয় partedএবং যদি একাধিক ড্রাইভ থাকে তবে আপনার প্রয়োজনীয় ডেটা সন্ধান করা ব্যথা হতে পারে। জন্য /dev/sdaআপনাকে যা করতে হবে:

parted /dev/sda print

এটি গ্রেমান একটি দুর্দান্ত আদেশ command যদিও আমি বেশ কয়েক বছর ধরে লিনাক্স ব্যবহার করে আসছি, তবে আমি সত্যিই এটি কখনই লক্ষ্য করি নি। ধন্যবাদ!
টিম

3
parted /dev/sda pকরবে, খুব।
sjas

আমাকে "সুডো পার্টেড-এল" করতে হয়েছিল
সান্ট্রোপড্রো

33

লিনাক্সে, আপনি এটি gdiskসরঞ্জামের মাধ্যমে পরীক্ষা করতে পারেন যা কোনও ডিস্ট্রোয়ের জন্য পাওয়া উচিত।

gdisk -l /dev/sda

এখানে, /dev/sdaডিভাইস নোড শারীরিক ড্রাইভের , না একটি পার্টিশন ( /dev/sda1, /dev/sda2ইত্যাদি পার্টিশন হয়)।

যদি আপনি এমন কিছু দেখতে পান যার মধ্যে রয়েছে:

***************************************************************
Found invalid GPT and valid MBR; converting MBR to GPT format
in memory. 
***************************************************************

আপনার একটি এমবিআর স্টাইল ডিস্ক রয়েছে। চিন্তা করবেন না, এতে কোনও ক্ষতি হয়নি।

আপনি যদি এই সতর্কতাটি না দেখেন তবে আপনার একটি জিপিটি ডিস্ক, বা একটি হাইব্রিড জিপিটি / এমবিআর ডিস্ক রয়েছে। পরে এমপি উইন্ডোজের ডুয়াল-বুট সংস্করণ যা জিপিটি সমর্থন করে না, প্রায়শই অ্যাপল মেশিনে ব্যবহৃত হয়। gdiskএটি দিয়ে এটি নির্দেশ করবে:

Found valid GPT with hybrid MBR; using GPT

এগুলি অন্যান্য পরিস্থিতিতেও ব্যবহৃত হতে পারে যেখানে উভয় শৈলীর জন্য সমর্থন প্রয়োজন।


অথবা বিপরীত - cfdiskজিপিটি পার্টিশনে ব্যবহার করার চেষ্টা করার ফলে একটি সতর্কতাও পাওয়া যাবে।
প্রাচ্য

যদি ইনস্টল না হয় এবং কোনও gdiskপ্যাকেজে না থাকে তবে এটি gptfdiskপ্যাকেজটিতে পাওয়া যাবে ... কমপক্ষে জেন্টুতে।

2
@ orion আমি প্রস্তাব দিচ্ছি না যে সরঞ্জামগুলির কিছু সংস্করণ হিসাবে জিপিটি সমর্থন করে fdiskবা cfdiskসমর্থন করতে পারে এবং তাই ত্রুটি না দেখায়।
স্বর্ণলোকস

আমার জন্য gdiskএকটি হাইব্রিড জিপিটি + এমবিআর পার্টিশন টেবিল সনাক্ত করে এবং দেয় Found valid GPT with hybrid MBR; using GPT.। এটি একমাত্র পদ্ধতি যা একটি সংকর টেবিল সনাক্ত করবে বলে মনে হয়।
গ্রামীণ

@ গ্র্যাম: ধন্যবাদ আমি এগুলি সম্পর্কে অসচেতন ছিলাম (মূল সংকর রেফারেন্সটি স্টিফেন চেজেলাস সম্পাদনা করেছিলেন) তবে আমি কিছুটা পড়তে পেরে কিছু বিবরণ যুক্ত করেছি।
স্বর্ণলোকস

17

ওএস নির্দিষ্ট করা হয়নি বলে এখানে কাজ করার ফ্রিবিএসডি উপায়।

সমস্ত gpartকমান্ডের মাধ্যমে সম্পন্ন হয়েছে (জিওএম পার্টিশনের পক্ষে সংক্ষিপ্ত - জিএনইউয়ের সাথে কিছুই করার নয়)।

একটি সাধারণ gpart showআপনাকে সমস্ত ডিস্কের সমস্ত উপলভ্য পার্টিশন দেখায় তবে আপনি একটিতে আরও সুনির্দিষ্ট চেহারা পেতে ডিভাইসটি নির্দিষ্ট করতে পারেন:

  • এমবিআর (ওরফে "এমএসডোস") এবং বিএসডি পার্টিশন স্কিমগুলির সাথে লিগ্যাসি পার্টিশন বিন্যাস ( সম্পূর্ণ ডিস্ক ব্যবহার না করে সাধারণত বিএসডি সিস্টেমগুলির জন্য একটি 2-স্তরের পার্টিশন প্রয়োজন):

    $gpart show

    =>      63  67108801  ada0  MBR  (32G)
            63  67108545     1  freebsd  [active]  (32G)
      67108608       256        - free -  (128k)
    
    =>       0  67108545  ada0s1  BSD  (32G)
             0   2097152       2  freebsd-swap  (1.0G)
       2097152  65011393       1  freebsd-ufs  (31G)
    
  • জিপিটি ব্যবহার করে আধুনিক পার্টিশন বিন্যাস :

    $gpart show /dev/ada2

    =>       34  976773101  ada2  GPT  (465G)
             34          6        - free -  (3.0k)
             40        128     1  freebsd-boot  (64k)
            168   67108864     2  freebsd-swap  (32G)
       67109032  901775360     3  freebsd-zfs  (430G)
    

আরও জানতে, সমস্ত gpartম্যানুয়ালটিতে রয়েছে


9

সঙ্গে udisksলিনাক্স:

$ sudo /lib/udev/udisks-part-id /dev/sda
using device_file=/dev/sda syspath=/sys/devices/pci0000:00/0000:00:0b.0/ata1/host0/target0:0:0/0:0:0:0/block/sda, offset=0 ao=0 and number=0 for /dev/sda
Entering MS-DOS parser (offset=0, size=500107862016)
MSDOS_MAGIC found
found partition type 0xee => protective MBR for GPT
Exiting MS-DOS parser
Entering EFI GPT parser
GPT magic found
partition_entry_lba=2
num_entries=128
size_of_entry=128
Leaving EFI GPT parser
EFI GPT partition table detected
UDISKS_PARTITION_TABLE=1
UDISKS_PARTITION_TABLE_SCHEME=gpt
UDISKS_PARTITION_TABLE_COUNT=4

উপরে, আমি হাইব্রিড জিপিটি + এমএস-ডস পার্টিশন সহ একটি ড্রাইভ পেয়েছি। সেক্ষেত্রে লিনাক্স কার্নেলটি এমএস-ডস পার্টিশনটি উপেক্ষা করে, এই কারণেই udisksইউডিআইএসএসএসপিআরটিআইটিএসএপিবিএল_এসএইচএমইটি জিপিটি-তে সেট করে।

উডিস্কস-পার্ট-আইডি সরঞ্জামটি ইউদেব ডাটাবেস পপুলেশন করতে ব্যবহৃত হয়। সুতরাং আপনি যদি udisksইনস্টল হয়ে গিয়ে থাকেন তবে আপনার সেই তথ্যটি কোনও বেসরকারী ব্যবহারকারী হিসাবে এমনকি কোয়েরি করতে সক্ষম হওয়া উচিত:

$ udevadm info -q property -n sda | grep UDISKS_PARTITION_TABLE_SCHEME
UDISKS_PARTITION_TABLE_SCHEME=gpt

2
মনে রাখবেন যে হাইব্রিড জিপিটি + এমবিআর আছে কিনা তা বিবেচনা না করেই আপনি অনুরূপ আউটপুট পাবেন। জিপিটি-র জন্য একটি একক সম্পূর্ণ ডিস্ক বিভাজনযুক্ত নকল এমবিআর প্রয়োজন 0xee। হাইব্রিডে এটি একটি 0xeeবিভাজন সহ একটি সাধারণ এমবিআর (এবং এমপিআর ডেটা জিপিটি ডেটার সাথে সিঙ্কের বাইরে চলে গেলে বড় সমস্যার সম্ভাবনা)।
গ্রীম

6

ব্যবহার

$ sudo fdisk -l 

Disk /dev/sda: 119.2 GiB, 128035676160 bytes, 250069680 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x987c1a05


Device     Boot   Start       End   Sectors   Size Id Type
/dev/sda1  *       2048    999423    997376   487M 83 Linux
/dev/sda2       1001470 250068991 249067522 118.8G  5 Extended
/dev/sda5       1001472 250068991 249067520 118.8G 8e Linux LVM

দেখুন কী করা উচিত Disklabel টাইপ । যদি এটি ডস দেখায় তবে এর অর্থ এটি এমবিআর স্কিমা অন্য জিপিটি স্কিমা


3

আমার আলপাইন লিনাক্স পার্টিশন স্ক্রিপ্টগুলিতে আমি ব্যবহার করি:

check_scheme() {
    fdisk -l $1 |grep "Disklabel type:" |awk '{ print $3 }'
}

আমার উবুন্টুতে 18.04 সিস্টেমে fdisk -l /dev/sda | grep -i disklabelকিছুই ফেরায় না, ( জিএনইউ এফডিস্ক 1.3.0 এ )।
agc

1

আপনি ব্যবহার করতে পারেন blkid

আউটপুট সহ উদাহরণ:

# blkid /dev/sdc
/dev/sdc: PTUUID="92f03b9b-7402-4ad2-8316-08a991c237b3" PTTYPE="gpt"

# blkid -o export /dev/sdc
DEVNAME=/dev/sdc
PTUUID=92f03b9b-7402-4ad2-8316-08a991c237b3
PTTYPE=gpt

অথবা একটি স্ক্রিপ্টে, -o valueবিকল্প সহ:

disk=$1
part_type=$(blkid -o value -s PTTYPE $disk)
case $part_type in
    gpt)  echo "GPT";;
    dos)  echo "MBR";;
    *)    echo "partition is $part_type";;
esac
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.