FreeBSDでGPTによるミラー/ストライプ/コンカチネートを使う


mirror

# gpart create -s gpt ada0
# gpart add -t freebsd-boot -i 1 -s 128 -l boot0 ada0
# gpart add -t freebsd-ufs -i 2 -s xxxxxxxxxx -l root0 ada0
# gpart add -t freebsd-swap -i 3 -s xxxxxxxx -l swap0 ada0
# gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 ada0

# gpart create -s gpt ada1
# gpart add -t freebsd-boot -i 1 -s 128 -l boot1 ada1
# gpart add -t freebsd-ufs -i 2 -s xxxxxxxxxx -l root1 ada1
# gpart add -t freebsd-swap -i 3 -s xxxxxxxx -l swap1 ada1
# gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 ada1

# gmirror label root /dev/gpt/root0 /dev/gpt/root1
# newfs -U -L root /dev/stripe/root
# mount /dev/stripe/root /local

stripe

# gpart create -s gpt ada0
# gpart add -a 4k -t freebsd-ufs -i 1 -l user0 ada0
# gpart create -s gpt ada1
# gpart add -a 4k -t freebsd-ufs -i 1 -l user1 ada1

# gstripe label user /dev/gpt/user0 /dev/gpt/user1
# newfs -U -L user /dev/stripe/user
# mount /dev/stripe/user /export

concatenate

# gpart create -s gpt ada0
# gpart add -a 4k -t freebsd-ufs -i 1 -l user0 ada0
# gpart create -s gpt ada1
# gpart add -a 4k -t freebsd-ufs -i 1 -l user1 ada1

# gconcat label user /dev/gpt/user0 /dev/gpt/user1
# newfs -U -L user /dev/concat/user
# mount /dev/concat/user /export