分页: 1 / 1

《NetBSD指南-16.3.4.准备Disk1/wd1》

发表于 : 2010-03-02 23:04
leo
一旦你在Disk0/wd0上完成了一个NetBSD的常规安装 , 你已经准备好了。 Disk1/wd1应该明显地未被系统使用。 要安装Disk1/wd1, 你用 disklabel(8) 将整个第二块磁盘分配至RAID-1组。
[INDENT]提示
要确保Disk1/wd1完全是空白的,最好的方式是将用 dd(1) 最前面的几个扇区用0覆盖。这将删除 MBR (i386) 或 Sun disk label (sparc64), 还有NetBSD disk label. 如果你在RIAD配置过程中任何时候出现了一个错误, 你可以参考上述思路随时将这块磁盘恢复为清空状态。
说明
On sparc64, 使用 /dev/rwd1c 代替 /dev/rwd1d!
[/INDENT]

代码: 全选

# dd if=/dev/zero of=/dev/rwd1d bs=8k count=1
1+0 records in
1+0 records out
8192 bytes transferred in 0.003 secs (2730666 bytes/sec)


一旦这步完成, 在 i386 上, 校验MBR和NetBSD disk labels. 在 sparc64, 也校验Sun Disk label.

在 i386 上:

代码: 全选

# fdisk /dev/rwd1d
 
fdisk: primary partition table invalid, no magic in sector 0
Disk: /dev/rwd1d
NetBSD disklabel disk geometry:
cylinders: 19386, heads: 16, sectors/track: 63 (1008 sectors/cylinder)
total sectors: 19541088
 
BIOS disk geometry:
cylinders: 1023, heads: 255, sectors/track: 63 (16065 sectors/cylinder)
total sectors: 19541088
 
Partition table:
0: <UNUSED>
1: <UNUSED>
2: <UNUSED>
3: <UNUSED>
Bootselector disabled.
 
# disklabel -r wd1
 
[...snip...]
16 partitions:
#        size    offset     fstype [fsize bsize cpg/sgs]
 c:  19541025        63     unused      0     0        # (Cyl.      0* - 19385)
 d:  19541088         0     unused      0     0        # (Cyl.      0 - 19385)



在 sparc64:

代码: 全选

# sunlabel /dev/rwd1c
 
sunlabel: bogus label on `/dev/wd1c' (bad magic number)
 
# disklabel -r wd1
 
[...snip...]
3 partitions:
#        size    offset     fstype [fsize bsize cpg/sgs]
 c:  19541088         0     unused      0     0        # (Cyl.      0 -  19385)
disklabel: boot block size 0
disklabel: super block size 0


现在已确认了第二块磁盘是空的, 在i386平台你必须在第二块磁盘上用从Disk0/wd0获得的值建立MBR。我们必须记住将NetBSD分区标记为激活,否则系统无法启动。 你还必须在Disk1/wd1上建立一个NetBSD的disklabel,这将启用它上面的RAID卷. 在sparc64平台上, 你只要简单地 disklabel(8) 第二块磁盘,这将写入适当的Sun Disk Label.

说明
disklabel(8) 将使用你的shell的环境变量 $EDITOR 变量来编辑disklabel. 默认的是 vi(1)

在 i386 上:

代码: 全选

# fdisk -0ua /dev/rwd1d
fdisk: primary partition table invalid, no magic in sector 0
Disk: /dev/rwd1d
NetBSD disklabel disk geometry:
cylinders: 19386, heads: 16, sectors/track: 63 (1008 sectors/cylinder)
total sectors: 19541088
 
BIOS disk geometry:
cylinders: 1023, heads: 255, sectors/track: 63 (16065 sectors/cylinder)
total sectors: 19541088
 
Do you want to change our idea of what BIOS thinks? [n]
 
Partition 0:
<UNUSED>
The data for partition 0 is:
<UNUSED>
sysid: [0..255 default: 169]
start: [0..1216cyl default: 63, 0cyl, 0MB]
size: [0..1216cyl default: 19541025, 1216cyl, 9542MB]
bootmenu: []
Do you want to change the active partition? [n] y
Choosing 4 will make no partition active.
active partition: [0..4 default: 0] 0
Are you happy with this choice? [n] y
 
We haven't written the MBR back to disk yet.  This is your last chance.
Partition table:
0: NetBSD (sysid 169)
    start 63, size 19541025 (9542 MB, Cyls 0-1216/96/1), Active
1: <UNUSED>
2: <UNUSED>
3: <UNUSED>
Bootselector disabled.
Should we write new partition table? [n] y
 
# disklabel -r -e -I wd1
type: unknown
disk: Disk1
label:
flags:
bytes/sector: 512
sectors/track: 63
tracks/cylinder: 16
sectors/cylinder: 1008
cylinders: 19386
total sectors: 19541088
[...snip...]
16 partitions:
#        size    offset     fstype [fsize bsize cpg/sgs]
 a:  19541025        63       RAID                     # (Cyl.      0*-19385)
 c:  19541025        63     unused      0     0        # (Cyl.      0*-19385)
 d:  19541088         0     unused      0     0        # (Cyl.      0 -19385)



在 sparc64 上:

代码: 全选

# disklabel -r -e -I wd1
type: unknown
disk: Disk1
label:
flags:
bytes/sector: 512
sectors/track: 63
tracks/cylinder: 16
sectors/cylinder: 1008
cylinders: 19386
total sectors: 19541088
[...snip...]
3 partitions:
#        size    offset     fstype [fsize bsize cpg/sgs]
 a:  19541088         0       RAID                     # (Cyl.      0 -  19385)
 c:  19541088         0     unused      0     0        # (Cyl.      0 -  19385)
 
# sunlabel /dev/rwd1c 
sunlabel> P
a: start cyl =      0, size = 19541088 (19386/0/0 - 9541.55Mb)
c: start cyl =      0, size = 19541088 (19386/0/0 - 9541.55Mb)
[INDENT]
说明
在 i386 上, c: and d: 分区(slices)是预留的。 c: 表示这块磁盘内的NetBSD部分。 d: 表示整个磁盘。 因为我们想把整个NetBSD的MBR分区分配给RAID, 而且因为 a: 在 c:的范围内, 所以 a: 和 c: 分区(slices) 有相同的 size 和 offset 数值及 sizes. The offset 必须开始于一个磁道以外 (在磁盘label中一个扇区数的增量,应对于扇区数/磁道的数值) . 然而在sparc64上, c: 表示在Sun disk label中的整个NetBSD分区, 而 d: 并为预留。也要注意sparc64的 c: 及 a: 不需要从磁盘开始处偏移, 但是如果它们需要偏移, offset必须开始于一个柱面边界 (一个扇区的增量对应扇区数/柱面的数值)。
[/INDENT]