Filesystems
OpenBSD 中的快閃記憶體驅動器:“指定的設備與安裝的設備不匹配”
我有一台執行 OpenBSD 4.4 的小型伺服器。我正在嘗試插入一個 16GB 的 USB 快閃記憶體驅動器來移動一些文件。我按照磁碟設置文件的指導,找到了所需分區的標籤和文件系統。但是在嘗試掛載分區時,我得到以下資訊:
# mount -t ext2fs /dev/sd1i /mnt/flash mount_ext2fs: /dev/sd1i on /mnt/flash: specified device does not match mounted device
我用Google搜尋了一下,但沒有發現任何特別有用的東西。任何人都可以對此消息有所了解嗎?
編輯:
附加資訊
# disklabel sd1 disklabel: warning, DOS partition table with no valid OpenBSD partition # /dev/rsd1c: type: SCSI disk: SCSI disk label: SanDisk Ultra flags: bytes/sector: 512 sectors/track: 63 tracks/cylinder: 255 sectors/cylinder: 16065 cylinders: 1946 total sectors: 31266816 rpm: 3600 interleave: 1 trackskew: 0 cylinderskew: 0 headswitch: 0 # microseconds track-to-track seek: 0 # microseconds drivedata: 0 16 partitions: # size offset fstype [fsize bsize cpg] c: 31266816 0 unused 0 0 i: 31262427 63 ext2fs
好的,事實證明我錯過了真正的錯誤消息,dmesg 報告為:
Ext2 fs: unsupported inode size
當我發現這一點後,通過Google搜尋顯示 OpenBSD 4.4 中的 ext2fs 僅支持 128 位 inode 大小。我將快閃記憶體驅動器移回 Linux 機器,用 重新格式化
mke2fs -I 128
,瞧!現在可以使用問題中給出的 mount 命令成功地將驅動器安裝在 BSD 機器上。
您很可能呼叫了錯誤的文件系統類型。
ext2fs 通常是特定於 linux 的,並且大多數驅動器都使用 FAT 我會嘗試使用 fat32 來代替它應該為您安裝它。
您可以像這樣使用 fdisk 判斷分區是什麼:(假設 /dev/sd1i 是您的設備)
#fdisk -l /dev/sd1i
來自:http ://en.wikipedia.org/wiki/USB_flash_drive
Most flash drives ship preformatted with the FAT12, FAT16 or FAT32 file systems. The ubiquity of this file system allows the drive to be accessed on virtually any host device with USB support. Also, standard FAT maintenance utilities (e.g. ScanDisk) can be used to repair or retrieve corrupted data. However, because a flash drive appears as a USB-connected hard drive to the host system, the drive can be reformatted to any file system supported by the host operating system.