Назад | Перейти на главную страницу

Почему lsblk, gdisk и parted сообщают о разнице в размере

[anaconda root@861767 ~]# lsblk /dev/sda
NAME         MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda            8:0    0 465.8G  0 disk 
├─sda1         8:1    0   512M  0 part 
└─sda2         8:2    0 465.3G  0 part 
  ├─sys-root 253:2    0    10G  0 lvm  
  ├─sys-var  253:3    0     4G  0 lvm  
  ├─sys-tmp  253:4    0     4G  0 lvm  
  └─sys-home 253:5    0 447.3G  0 lvm  
[anaconda root@861767 ~]# gdisk -l /dev/sda
GPT fdisk (gdisk) version 0.8.6

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

Found valid GPT with protective MBR; using GPT.
Disk /dev/sda: 976773168 sectors, 465.8 GiB
Logical sector size: 512 bytes
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 976773134
Partitions will be aligned on 2048-sector boundaries
Total free space is 2029 sectors (1014.5 KiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048         1050623   512.0 MiB   0700  
   2         1050624       976773119   465.3 GiB   8E00  
[anaconda root@861767 ~]# parted -s /dev/sda unit GB print
Model: ATA GB0500EAFYL (scsi)
Disk /dev/sda: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name  Flags
 1      0.00GB  0.54GB  0.54GB  ext4
 2      0.54GB  500GB   500GB                      lvm

[anaconda root@861767 ~]# 

lsblk и gdisk сообщают, что размер диска составляет 465,5 ГБ, разделенный говорит, что размер составляет 500 ГБ

Какой из них настоящий? А почему возникает непоследовательность?

Производители дисков объявляют размеры дисков кратными 1000. То есть «КБ» - это 1000 и не 1024, как привыкли программисты.

Вам кажется, что lsblk и gdisk используют значение 1024, но parted использует 1000.

465.5 * 1024 * 1024 * 1024 == 499,826,819,072

Теперь разделите:

499,826,819,072 / (1000 * 1000 * 1000) == 499.826

который соответствует 500 который parted сообщает

Заметь lsblk и gdisk использовать GiB но ты дал GB возможность parted. Пытаться parted с GiB вариант