fdisk、parted、dmesg、および/dev/sdXyの間でUSBパーティションとディスク容量が一致しないのはなぜですか?

fdisk、parted、dmesg、および/dev/sdXyの間でUSBパーティションとディスク容量が一致しないのはなぜですか?

免責事項:私はもともとSFにこれを投稿しました:https://serverfault.com/q/645670しかし、私の考えでは、ここがよりよく合うと思います。

まず、ちょっとした文脈を申し上げます。 16Gb USBフラッシュドライブにISOを焼くことを試みていますが、デフォルトのMBR +インストール可能パーティションを正しく設定するのに問題があります。

これまで、私は次のように矛盾した情報を収集しました。

  • /dev/sdb*/dev/sdb&に拡張/dev/sdb2:これはインデックス2のパーティションを表すようです。をマウントすると、/dev/sdb2これはdf2.0M VFATファイルシステムというメッセージが表示されます。

  • fdisk&3929750 * 512バイトセクタ= 2 Gb容量のparted2つのデバイスが検出されました。/dev/sdbまた、両方とも/dev/sdb12 GBの一意のサブパーティションを一覧表示します。

  • dmesgそうです(?)Kingston 16Gb USBフラッシュドライブが検出されました

電話partprobeしても違いはありません。

オペレーティングシステムが/dev/sdb2パーティションを検出しましたが、fdisk&が検出できないのはなぜですかparted

第二:dmesg「16Gb容量」情報はどこから来ましたか?


いくつかのコマンド出力の詳細:

$ uname -a
Linux DAEDALUS 3.13.0-39-generic #66-Ubuntu SMP Tue Oct 28 13:30:27 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

$ usb-devices | grep -A7 Bus=03
T:  Bus=03 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=480 MxCh= 2
D:  Ver= 2.00 Cls=09(hub  ) Sub=00 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=1d6b ProdID=0002 Rev=03.13
S:  Manufacturer=Linux 3.13.0-39-generic xhci_hcd
S:  Product=xHCI Host Controller
S:  SerialNumber=0000:04:00.0
C:  #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub

$ ls -l /dev/sdb*
-rw-r--r-- 1 root root 2012049408 Nov 20 01:50 /dev/sdb
-rw-r--r-- 1 root root    2097152 Nov 20 01:18 /dev/sdb2

$ sudo fdisk -l /dev/sdb
Disk /dev/sdb: 2012 MB, 2012049408 bytes
158 heads, 33 sectors/track, 753 cylinders, total 3929784 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
Disk identifier: 0x3262a45b

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *        2048     3929783     1963868   83  Linux

$ sudo parted /dev/sdb unit s print
Model:  (file)
Disk /dev/sdb: 3929784s
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start  End       Size      File system  Name              Flags
 1      2048s  3929750s  3927703s               Linux filesystem  boot

$ sudo fdisk -l /dev/sdb2
You must set cylinders.
You can do this from the extra functions menu.

Disk /dev/sdb2: 2 MB, 2097152 bytes
255 heads, 63 sectors/track, 0 cylinders, total 4096 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
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System

$ sudo parted /dev/sdb2 unit s print
Model:  (file)
Disk /dev/sdb2: 4096s
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start  End  Size  Type  File system  Flags

dmesg16Gb容量を正しく検出したことを示す関連出力の抜粋:

[Thu Nov 20 01:38:46 2014] usb-storage 2-1.2:1.0: USB Mass Storage device detected
[Thu Nov 20 01:38:46 2014] scsi22 : usb-storage 2-1.2:1.0
[Thu Nov 20 01:38:48 2014] scsi 22:0:0:0: Direct-Access     Kingston DataTraveler G2  PMAP PQ: 0 ANSI: 0 CCS
[Thu Nov 20 01:38:48 2014] sd 22:0:0:0: Attached scsi generic sg2 type 0
[Thu Nov 20 01:38:49 2014] sd 22:0:0:0: [sdb] 31252480 512-byte logical blocks: (16.0 GB/14.9 GiB)
[Thu Nov 20 01:38:49 2014] sd 22:0:0:0: [sdb] Write Protect is off
[Thu Nov 20 01:38:49 2014] sd 22:0:0:0: [sdb] Mode Sense: 23 00 00 00
[Thu Nov 20 01:38:49 2014] sd 22:0:0:0: [sdb] No Caching mode page found
[Thu Nov 20 01:38:49 2014] sd 22:0:0:0: [sdb] Assuming drive cache: write through

ベストアンサー1

おすすめ記事