fdiskはデバイスのパーティションテーブルを表示しますが、udevはデバイスを作成しません。

fdiskはデバイスのパーティションテーブルを表示しますが、udevはデバイスを作成しません。

USB外付けハードウェアをインストールしようとしています。特にUSBキーです。ただし、udevドライブのパーティションは表示されません。

私はデフォルトのカーネル、つまり4.19.0-6-amd64

fdiskレポート

root@orwell:/mnt# fdisk -l /dev/sdh
Disk /dev/sdh: 1.9 GiB, 2001076224 bytes, 3908352 sectors
Disk model: Cruzer Blade
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: 0x03b1e8fa

Device     Boot Start     End Sectors  Size Id Type
/dev/sdh1        2048 3908351 3906304  1.9G  b W95 FAT32

しかし、パーティションをマウントしようとすると

root@orwell:/mnt# mount -t vfat /dev/sdh1 joseph
mount: /mnt/joseph: special device /dev/sdh1 does not exist.

これはあまり関係がないかもしれませんが、パーティションにはUUIDがないようです。少なくともデバイスはblkid

journalctlデバイスが接続されると、次のログが表示されます。

Nov 06 19:01:09 orwell kernel: usb 1-1: new high-speed USB device number 6 using ehci-pci
Nov 06 19:01:09 orwell kernel: usb 1-1: New USB device found, idVendor=0781, idProduct=5567, bcdDevice= 1.00
Nov 06 19:01:09 orwell kernel: usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Nov 06 19:01:09 orwell kernel: usb 1-1: Product: Cruzer Blade
Nov 06 19:01:09 orwell kernel: usb 1-1: Manufacturer: SanDisk
Nov 06 19:01:09 orwell kernel: usb 1-1: SerialNumber: 20063486020EF1B285D3
Nov 06 19:01:09 orwell kernel: usb-storage 1-1:1.0: USB Mass Storage device detected
Nov 06 19:01:09 orwell kernel: scsi host11: usb-storage 1-1:1.0
Nov 06 19:01:09 orwell mtp-probe[30090]: checking bus 1, device 6: "/sys/devices/pci0000:00/0000:00:12.2/usb1/1-1"
Nov 06 19:01:09 orwell mtp-probe[30090]: bus: 1, device: 6 was not an MTP device
Nov 06 19:01:10 orwell mtp-probe[30094]: checking bus 1, device 6: "/sys/devices/pci0000:00/0000:00:12.2/usb1/1-1"
Nov 06 19:01:10 orwell mtp-probe[30094]: bus: 1, device: 6 was not an MTP device
Nov 06 19:01:10 orwell kernel: scsi 11:0:0:0: Direct-Access     SanDisk  Cruzer Blade     1.01 PQ: 0 ANSI: 2
Nov 06 19:01:10 orwell kernel: sd 11:0:0:0: Attached scsi generic sg9 type 0
Nov 06 19:01:10 orwell kernel: sd 11:0:0:0: [sdh] 3908352 512-byte logical blocks: (2.00 GB/1.86 GiB)
Nov 06 19:01:10 orwell kernel: sd 11:0:0:0: [sdh] Write Protect is off
Nov 06 19:01:10 orwell kernel: sd 11:0:0:0: [sdh] Mode Sense: 03 00 00 00
Nov 06 19:01:10 orwell kernel: sd 11:0:0:0: [sdh] No Caching mode page found
Nov 06 19:01:10 orwell kernel: sd 11:0:0:0: [sdh] Assuming drive cache: write through
Nov 06 19:01:11 orwell kernel: sd 11:0:0:0: [sdh] Attached SCSI removable disk
Nov 06 19:01:11 orwell systemd[1]: Starting [email protected]...
Nov 06 19:01:11 orwell usbmount[30113]: loaded usbmount configurations
Nov 06 19:01:11 orwell usbmount[30114]: usbmount is disabled, see /etc/usbmount/usbmount.conf
Nov 06 19:01:11 orwell systemd[1]: Started [email protected].
Nov 06 19:01:11 orwell audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 subj==unconfined msg='unit=usbmount@dev-sdh comm="systemd" exe="/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'

ベストアンサー1

何らかの理由で、Linuxカーネルはパーティションテーブルを認識しないので、パーティションテーブルが存在する必要があることを知りませんsdh1。 (DOSパーティションテーブルをサポートしていないカーネルをコンパイルするなど)奇妙なことをしない限り、これは。それはおそらく、パーティションテーブルの形式がカーネルが期待するものとまったく一致しないことを意味します(fdiskパーティションテーブルの構文解析の別の実装なので、fdiskがそれを使用できる理由です)。 (etc.)を使用してパーティションテーブルを再構築すると、fdisk問題が解決する可能性があります。

ただし、テーブルを書き換えずに(ディスクを変更せずに)パーティションをマウントしたい場合は、次のコマンドを使用してパーティションの詳細をカーネルに手動で提供できますaddpart

addpart /dev/sdh 1 2048 3906304
#                ^   ^     ^ 
# partition#────┘   |      \
#              start sector  length (sectors)   ← both from fdisk -l output

実行した後(しばらく待ってからudevを待って)、それは1つあり、それをインストールする/dev/sdh1ことができます。

おすすめ記事