我正在尝试将我的家庭服务器从 FreeNAS 8.3 迁移到 DragonFly BSD。为了整理我的文件,我拿起一块 Seagate 8Tb Archive 磁盘,通过 eSATA 连接它,在 FreeNAS 下将其格式化为 UFS,然后耐心等待大约一周,直到它慢慢充满。
现在我已经启动了 DragonFly,但尽我所能,我无法安装 UFS 卷。有什么办法可以把这个东西安装在 DragonFly 下吗?
我可以看到该驱动器使用 GPT(和保护性 MBR)并且绝对是 UFS。尽管这两个系统继承了 FreeBSD,但它们之间是否存在不兼容的地方?我可以看到切片但看不到分区,这似乎也很奇怪。由于驱动器使用的是 GPT,我本想ls /dev/ad6*
给我类似的信息,但显然不是。/dev/ad6p1a
我还没有尝试任何侵入性的操作(例如写入磁盘),因为我完全不知道原因是什么。
% uname -a
DragonFly loki.misque.me 4.4-RELEASE DragonFly v4.4.3-RELEASE #5: Mon Apr 18 22:47:32 EDT 2016 [email protected]:/usr/obj/home/justin/release/4_4/sys/X86_64_GENERIC x86_64
磁盘的一些基本信息:
% ls /dev/ad6*
/dev/ad6 /dev/ad6s0 /dev/ad6s1
% cat /etc/fstab
# Device Mountpoint FStype Options Dump Pass#
/dev/serno/4C530012740115112064.s1a / ufs rw 1 1
/dev/serno/4C530012740115112064.s1d /home ufs rw 2 2
/dev/serno/4C530012740115112064.s1e /tmp ufs rw 2 2
/dev/serno/4C530012740115112064.s1f /usr ufs rw 2 2
/dev/serno/4C530012740115112064.s1g /var ufs rw 2 2
/dev/serno/4C530012740115112064.s1b none swap sw 0 0
proc /proc procfs rw 0 0
/dev/ad6s1 /mnt/backup ufs ro 0 0
有问题的安装努力:
% sudo mount -v /mnt/backup
mount_ufs: /dev/ad6s1 on /mnt/backup: incorrect super block
我的诊断工作:
% sudo fdisk /dev/ad6
******* Working on device /dev/ad6 *******
parameters extracted from device are:
cylinders=15504021 heads=16 sectors/track=63 (1008 blks/cyl)
Figures below won't work with BIOS for partitions not in cyl 1
parameters to be used for BIOS calculations are:
cylinders=15504021 heads=16 sectors/track=63 (1008 blks/cyl)
Media sector size is 512
Warning: BIOS sector numbering starts with sector 1
Information from DOS bootblock is:
The data for partition 1 is:
sysid 238,(EFI GPT)
start 1, size 4294967295 (2097151 Meg), flag 80 (active)
beg: cyl 0/ head 0/ sector 2;
end: cyl 1023/ head 255/ sector 63
The data for partition 2 is:
<UNUSED>
The data for partition 3 is:
<UNUSED>
The data for partition 4 is:
<UNUSED>
% sudo disklabel64 -r ad6
disklabel64: bad pack magic number
% sudo disklabel64 -r ad6s0
disklabel64: bad pack magic number
% sudo disklabel64 -r ad6s1
disklabel64: bad pack magic number
% sudo camcontrol devlist
<ATA WDC WD20EARX-00P AB51> at scbus3 target 1 lun 0 (da0,sg0,pass0)
<ATA WDC WD30EFRX-68E 0A80> at scbus3 target 2 lun 0 (da1,sg1,pass1)
<ATA OCZ-AGILITY 1.4> at scbus3 target 3 lun 0 (da2,sg2,pass2)
<ATA WDC WD30EFRX-68A 0A80> at scbus3 target 4 lun 0 (da3,sg3,pass3)
<ATA WDC WD20EARS-00M AB51> at scbus3 target 5 lun 0 (da4,sg4,pass4)
<ATA WDC WD20EFRX-68E 0A82> at scbus3 target 6 lun 0 (da5,sg5,pass5)
<ATA WDC WD20EARS-00M AB51> at scbus3 target 7 lun 0 (da6,sg6,pass6)
<SanDisk Cruzer Fit 1.27> at scbus6 target 0 lun 0 (pass8,sg8,da8)
% sudo gpt show /dev/ad6
start size index contents
0 1 - PMBR
1 1 - Pri GPT header
2 32 - Pri GPT table
34 94 -
128 4194304 0 GPT part - FreeBSD Swap
4194432 15623858696 1 GPT part - FreeBSD UFS/UFS2
15628053128 7 -
15628053135 32 - Sec GPT table
15628053167 1 - Sec GPT header
% sudo file -s /dev/ad6
/dev/ad6: DOS/MBR boot sector; partition 1 : ID=0xee, active, start-CHS (0x0,0,2), end-CHS (0x3ff,255,63), startsector 1, 4294967295 sectors
% sudo file -s /dev/ad6s1
/dev/ad6s1: Unix Fast File system [v2] (little-endian) last written at Thu Jan 1 00:00:00 1970, number of blocks 0, number of data blocks 0, pending blocks to free 0, system-wide uuid 0,
答案1
DragonflyBSD 用户在这里。
如果我没记错的话,FreeBSD 的 UFS 和 DragonflyBSD 的 UFS 不兼容。 FreeBSD 在其 UFS 版本中添加了许多功能,例如软更新,而 Dragonfly 不支持这些功能。
如果您有两台机器,您可能会发现更简单地从原始 FreeNAS 机器中通过 NFS 导出驱动器,或者通过 SSH 将文件从 FreeNAS 机器传输到 Dragonfly 机器。
如果您在此过程中遇到任何问题,用户邮件列表通常非常友好:https://www.dragonflybsd.org/mailinglists/您也可以通过 IRC 提问。
答案2
您选择了相当复杂的迁移。
FreeBSD 以及 FreeNAS 使用 UFS2,而 DragonFly 使用较旧的 UFS1。两者都有软更新,但 UFS2 具有不同的格式,因为它支持一些其他功能,例如更多时间戳、扩展属性、更快的 fsck 和 SUJ。