GPT mirror でFreeBSD 9.2をインストール

いろいろあって、サーバ機のFreeBSDを再インストールすることになった。
備忘録として手順を残す。

ディスクのパーティショニング

# gpart create -s gpt ada0
# gpart add -a 4k -s 512k -t freebsd-boot -l boot0 ada0
# gpart add -a 4k -s 2g -t freebsd-ufs -l rootfs0 ada0
# gpart add -a 4k -s 8g -t freebsd-swap -l swap0 ada0
# gpart add -a 4k -s 4g -t freebsd-ufs -l varfs0 ada0
# gpart add -a 4k -s 2g -t freebsd-ufs -l tmpfs0 ada0
# gpart add -a 4k -s 440g -t freebsd-ufs -l usrfs0 ada0
# gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 ada0

# gpart create -s gpt ada1
# gpart add -a 4k -s 512k -t freebsd-boot -l boot1 ada1
# gpart add -a 4k -s 2g -t freebsd-ufs -l rootfs1 ada1
# gpart add -a 4k -s 8g -t freebsd-swap -l swap1 ada1
# gpart add -a 4k -s 4g -t freebsd-ufs -l varfs1 ada1
# gpart add -a 4k -s 2g -t freebsd-ufs -l tmpfs1 ada1
# gpart add -a 4k -s 440g -t freebsd-ufs -l usrfs1 ada1
# gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 ada1

# gpart show ada0 ada1
=>       34  976773101  ada0  GPT  (465G)
         34          6        - free -  (3.0k)
         40       1024     1  freebsd-boot  (512k)
       1064    4194304     2  freebsd-ufs  (2.0G)
    4195368   16777216     3  freebsd-swap  (8.0G)
   20972584    8388608     4  freebsd-ufs  (4.0G)
   29361192    4194304     5  freebsd-ufs  (2.0G)
   33555496  922746880     6  freebsd-ufs  (440G)
  956302376   20470759        - free -  (9.8G)

=>       34  976773101  ada1  GPT  (465G)
         34          6        - free -  (3.0k)
         40       1024     1  freebsd-boot  (512k)
       1064    4194304     2  freebsd-ufs  (2.0G)
    4195368   16777216     3  freebsd-swap  (8.0G)
   20972584    8388608     4  freebsd-ufs  (4.0G)
   29361192    4194304     5  freebsd-ufs  (2.0G)
   33555496  922746880     6  freebsd-ufs  (440G)
  956302376   20470759        - free -  (9.8G)
# gpart show -l ada0 ada1
=>       34  976773101  ada0  GPT  (465G)
         34          6        - free -  (3.0k)
         40       1024     1  boot0  (512k)
       1064    4194304     2  rootfs0  (2.0G)
    4195368   16777216     3  swap0  (8.0G)
   20972584    8388608     4  varfs0  (4.0G)
   29361192    4194304     5  tmpfs0  (2.0G)
   33555496  922746880     6  usrfs0  (440G)
  956302376   20470759        - free -  (9.8G)

=>       34  976773101  ada1  GPT  (465G)
         34          6        - free -  (3.0k)
         40       1024     1  boot1  (512k)
       1064    4194304     2  rootfs1  (2.0G)
    4195368   16777216     3  swap1  (8.0G)
   20972584    8388608     4  varfs1  (4.0G)
   29361192    4194304     5  tmpfs1  (2.0G)
   33555496  922746880     6  usrfs1  (440G)
  956302376   20470759        - free -  (9.8G)

# gmirror label boot /dev/gpt/boot0 /dev/gpt/boot1
# gmirror label swap /dev/gpt/rootfs0 /dev/gpt/rootfs1
# gmirror label rootfs /dev/gpt/rootfs0 /dev/gpt/rootfs1
# gmirror label swap /dev/gpt/swap0 /dev/gpt/swap1
# gmirror label varfs /dev/gpt/varfs0 /dev/gpt/varfs1
# gmirror label tmpfs /dev/gpt/tmpfs0 /dev/gpt/tmpfs1
# gmirror label tmpfs /dev/gpt/tmpfs0 /dev/gpt/tmpfs1
# kldload geom_mirror
# gmirror status
         Name    Status  Components
  mirror/boot  COMPLETE  ada0p1 (ACTIVE)
                         ada1p1 (ACTIVE)
mirror/rootfs  COMPLETE  ada0p2 (ACTIVE)
                         ada1p2 (ACTIVE)
  mirror/swap  COMPLETE  ada0p3 (ACTIVE)
                         ada1p3 (ACTIVE)
 mirror/varfs  COMPLETE  ada0p4 (ACTIVE)
                         ada1p4 (ACTIVE)
 mirror/tmpfs  COMPLETE  ada0p5 (ACTIVE)
                         ada1p5 (ACTIVE)
 mirror/usrfs  COMPLETE  ada0p6 (ACTIVE)
                         ada1p6 (ACTIVE)

# newfs -U -L rootfs /dev/mirror/rootfs
# newfs -U -L varfs /dev/mirror/varfs
# newfs -U -L tmpfs /dev/mirror/tmpfs
# newfs -U -L usrfs /dev/mirror/usrfs
# mount /dev/mirror/rootfs /mnt
# mkdir /mnt/var /mnt/tmp /mnt/usr
# mount /dev/mirror/varfs /mnt/var
# mount /dev/mirror/tmpfs /mnt/tmp
# mount /dev/mirror/usrfs /mnt/usr

# vi /boot/bsdinstall_etc/fstab
# cat /boot/bsdinstall_etc/fstab
#Device                 Mountpoint      FSType  Option  Dump    Pass#
/dev/mirror/swap        none            swap    sw      0       0
/dev/mirror/rootfs      /               ufs     rw      1       1
/dev/mirror/varfs       /var            ufs     rw      2       2
/dev/mirror/tmpfs       /tmp            ufs     rw      2       2
/dev/mirror/usrfs       /usr            ufs     rw      2       2

# exit

インストール後の仕上げ

# vi /boot/loader.conf
# cat /boot/loader.conf
geom_mirror_load="YES"

# exit

以上。