Jak mogę wykryć, czy mój dysk korzysta z GPT czy MBR z terminala?

19

Używam Ubuntu 13.10. Niektóre linki pokazują, że:

  • Jeśli używasz tabeli partycji MS-DOS (lub MBR), możesz mieć tylko cztery partycje podstawowe / rozszerzone.

  • Jeśli używasz tabeli partycji GUID (GPT) z ustawieniami domyślnymi, możesz mieć do 128 partycji.

Jak sprawdzić, czy mój dysk używa MBR lub GPT z terminala w Ubuntu ?.

Aby było mi łatwo tworzyć partycje.

Avinash Raj
źródło
Najprostszym sposobem jest użycie blkid. Zobacz tę odpowiedź .
mivk

Odpowiedzi:

22

Aby sprawdzić, czy na Ubuntu masz dysk GPT, czy MBR, musisz zainstalować gdisknarzędzie.

sudo apt-get install gdisk

Następnie uruchom poniższe polecenie

sudo gdisk -l /dev/sda
  • Jeśli wynik powyższego polecenia wygląda tak, oznacza to, że masz dysk MBR,

    Partition table scan:
    MBR: MBR only
    BSD: not present
    APM: not present
    GPT: not present
    
  • Jeśli wynik wygląda tak, oznacza to, że masz dysk GPT,

    Partition table scan:
    MBR: protective
    BSD: not present
    APM: not present
    GPT: present
    
Avinash Raj
źródło
14

Za pomocą partedZainstaluj parted

Możesz użyć tego polecenia, zamień /dev/sda swoje urządzenie:

parted /dev/sda print | grep -i '^Partition Table'

Być może trzeba go najpierw zainstalować:

sudo apt-get install parted

Przykładowe dane wyjściowe dla dysku MBR:

Partition Table: msdos

Za pomocą gdiskZainstaluj gdisk

Najpierw zainstaluj:

sudo apt-get install gdisk

Następnie możesz użyć tego polecenia i zastąpić /dev/sdaje urządzeniem:

gdisk -l /dev/sda | grep -A4 '^Partition table scan:'

Przykładowe dane wyjściowe dla dysku Mbr:

Partition table scan:
  MBR: MBR only
  BSD: not present
  APM: not present
  GPT: not present

Za pomocą fdisk

Uruchom to polecenie, zastępując /dev/sdaurządzenie:

fdisk -l /dev/sda

Wyświetli ostrzeżenie, jeśli urządzenie korzysta z GPT:

WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.
kiri
źródło
4

Nie musisz niczego instalować:

sudo ls                              # Prevent hang
sudo fdisk -l | grep -B 5 Disklabel  # Focus
Gringo Suave
źródło
1
Na Ubuntu 18 była to jedyna odpowiedź, która zadziałała dla mnie - próba zrobienia fdisk -l /dev/sdaprowadziłaby do błędów o braku takiego katalogu, mimo że go widzę/dev/
Caleb Jay
2

Przyjęta odpowiedź powinna zostać zaktualizowana:

fdisk -l /dev/sdb
Disk /dev/sdb: 931.5 GiB, 1000204886016 bytes, 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
Disklabel type: gpt
Disk identifier: 6C5ED23-xxxxxxx

Jak widać, fdisk pokazuje teraz typ Disklabel: gpt bez potrzeby analizowania komunikatów o błędach.

czas fdisk: rzeczywisty 0m0,004s

przedział czasu: rzeczywisty 0m 0,413s

100x wolniejszy dla rozstania.

Badałem to pod kątem innej aplikacji, która potrzebowała tych danych, więc właśnie aktualizuję nieco nieaktualne informacje o fdisk. Również dlatego, że gdy jeden program jest 100 razy szybszy od drugiego, zazwyczaj warto go ogólnie przyjrzeć.

Nie wiem, która wersja fdisk wprowadziła tę zmianę.

Powyżej jest: 2.30.2

Znalazłem taki w starszych systemach, który pokazuje błąd gpt, wersje 2.20.1, ale nie wiem, która konkretna wersja fdisk rozwiązała ten problem.

Zauważ, że błąd gpt będzie miał wartość stderr, więc jeśli wysyłałeś błędy do 2> / dev / null, przegapiłbyś ten komunikat.

Lizardx
źródło