TeraStation
    自分の日記など
    その他の URL
設置
  作業方針など
    Linux 設定
      新品の場合
      disk を入替えた場合
    Root で login
    区画
    sysinst
    multi user で起動
      fdisk
    課題
  実際の設置作業
    作業全体の流れ
    詳細
  fdisk
    再起動
    mkfs.xfs
      RAID5 解除前
  sysinst
    fdisk
    disklabel
    fetch
  raid
    disklabel を写す
OS設置後
  RAID
      raid.conf
    区画
  raid 5
    raid0.conf
  raidctl
    用語
    操作
  swap34
    34 入替
  disk 入替
  mfdisk -c
  危険
作業例
  20080302
    追加 patch
    NetBSD 設置後
    boot selector
  20120302
    NetBSD 以前
      卓をつなぐ
      nasupdate
      admin で login
      ts.cgi を変更
      ts.cgi を実行
      sudo -s を確認
      RAID の解除
      一時ネットワーク
    USB メモリを用意
    RAID5 設定
      fdisk
      raid 設定
    sysinst
    pkgsrc
    raid
    problem
RAID HowTO
  20080428
    sysinst(fdisk)
    sysinst(disklabel)
    raid5
    sysinst (raid)
    multi-user
    raidctl -iv
  disk 障害
  boot selector

hardware | kuro-box | NetBSD/kuro-box | software

TeraStation

Last Update: "2010/04/22 18:46:44 makoto"

fdisk

新品の場合の続きです。 netbsd-KUROBOX_MD.bin を使って起動した後 fdisk を使って disk の様子を見ると、次の変更前の欄のようになっています。 これを fdisk -u を使って変更後のようにします。
TS-0.3TGL/R5 (320GB = 80 x 4) TS-0.6TGL/R5
変更前変更後
開始大きさ 開始大きさ
063 771057 63 771057
1771120 273105 771120 273105
21044225 154930862 1044225 321298
3155975087 321298 1365523 154930862
変更前変更後
開始大きさ 開始大きさ
063 771057 63 771057
1771120 273105 771120 273105
21044225 311179052 1044225 353428
3312,223,277 353428 1397653 311179052
TS-2.0TGL/R5
変更前変更後
開始大きさ 開始大きさ
063 771057 63 771057
1771120 273105 771120 273105
21044225 975,241,892 1044225 481948
3976,286,117 481948 1526173 975241892
つまり この 2 と 3 の大きさを交換します。 上の表の左側は TS-0.3TGL/R5 (320GB = 80G x 4) の場合の例です。 この例では、律義に大きさの数字を入替えていますが、これですと cylinder 境界が 半端になってしまいます。これで特に問題はないですが、気になる方は、計算して cylinder 境界に合うようにして下さい。それでも何も、問題はありません。
実は 0 と 1 は変更しない方が良い(してはいけない)。 2 の開始は元々 cylinder 境界になっていない。 ということで、この辺は気にしない方が良いようです。 さて実際の作業としては次のようにします。
fdisk を使って、初めに wd1 の方を編集します。(ここは wd0 でなく wd1 です) 入力するのは以下で反転表示をしている部分だけです。
# fdisk -u /dev/rwd1
wd1: no disk label
Disk: /dev/rwd1d
NetBSD disklabel disk geometry:
cylinders: 155061, heads: 16, sectors/track: 63 (1008 sectors/cylinder)
total sectors: 156301488

BIOS disk geometry:
cylinders: 1024, heads: 255, sectors/track: 63 (16065 sectors/cylinder)
total sectors: 156301488

Do you want to change our idea of what BIOS thinks? [n] n
上記で BIOS の数字はそのままで良い、と n を入力して、 続いて (次の表示の 9 行目で) 2 と入力して 第 2 区画の size を変更します。
Partition table:
0: Linux native (sysid 131)
    start 63, size 771057 (376 MB, Cyls 0-48)
1: Linux swap or Prime or Solaris (sysid 130)
    start 771120, size 273105 (133 MB, Cyls 48-65)
2: Linux native (sysid 131)
    start 1044225, size 154930862 (75650 MB, Cyls 65-9709/0/3)
3: Linux native (sysid 131)
    start 155975087, size 321298 (157 MB, Cyls 9709/0/3-9729)
Which partition do you want to change?: [none] 2
The data for partition 2 is:
Linux native (sysid 131)
    start 1044225, size 154930862 (75650 MB, Cyls 65-9709/0/3)
sysid: [0..255 default: 131] (Return)
start: [0..9729cyl default: 1044225, 65cyl, 510MB] (Return)
size: [0..9644cyl default: 154930862, 9644cyl, 75650MB] 321298
上の数字は、初めに示した 2/3 区画の小さい方のセクタ数です。入力する数字は disk の大きさによって変化します。
Partition table:
0: Linux native (sysid 131)
    start 63, size 771057 (376 MB, Cyls 0-48)
1: Linux swap or Prime or Solaris (sysid 130)
    start 771120, size 273105 (133 MB, Cyls 48-65)
2: Linux native (sysid 131)
    start 1044225, size 321298 (157 MB, Cyls 65-84/254/62)
3: Linux native (sysid 131)
    start 155975087, size 321298 (157 MB, Cyls 9709/0/3-9729)
同様に 3 の start を変更します。size は計算してくれるので、「改行」を入力します。

Which partition do you want to change?: [none] 3
The data for partition 3 is:
Linux native (sysid 131)
    start 155975087, size 321298 (157 MB, Cyls 9709/0/3-9729)
sysid: [0..255 default: 131] 
start: [0..9729cyl default: 155975087, 9709cyl, 76160MB] 1365523
size: [0..60706cyl default: 975241892, 60706cyl, 476192MB] Return
上の数字は、初めに示した表の「第 3 区画の開始」の数字を入れます。これは (第 2 区画の開始 + 第 2 区画の大きさ)の値です。
size: [0..9644cyl default: 154930862, 9644cyl, 75650MB] (Return)

Partition table:
0: Linux native (sysid 131)
    start 63, size 771057 (376 MB, Cyls 0-48)
1: Linux swap or Prime or Solaris (sysid 130)
    start 771120, size 273105 (133 MB, Cyls 48-65)
2: Linux native (sysid 131)
    start 1044225, size 321298 (157 MB, Cyls 65-84/254/62)
3: Linux native (sysid 131)
    start 1365523, size 154930862 (75650 MB, Cyls 84/254/62-9729)
Which partition do you want to change?: [none] (Return)
変更の数字の入力は以上で終わりです。後は、本当に更新(書込)しますか ? に y で答えます
We haven't written the MBR back to disk yet.  This is your last chance.
Partition table:
0: Linux native (sysid 131)
    start 63, size 771057 (376 MB, Cyls 0-48)
1: Linux swap or Prime or Solaris (sysid 130)
    start 771120, size 273105 (133 MB, Cyls 48-65)
2: Linux native (sysid 131)
    start 1044225, size 321298 (157 MB, Cyls 65-84/254/62)
3: Linux native (sysid 131)
    start 1365523, size 154930862 (75650 MB, Cyls 84/254/62-9729)
Should we write new partition table? [n] y
# 

再起動

wd1 を変更したら sync して再起動します。
# sync
# sync
# sync
# reboot
rebooted by root
syncing disks... done
unmounting file systems... done
rebooting
次のところでべルがなり、ERROR の赤 LED が点灯します。
upsd 0.17
mdadm: md device /dev/md1 does not appear to be active.
mdadm: md device /dev/md2 does not appear to be active.
128+0 records in
128+0 records out
admin で login し sudo -s しておきます。
root@TS-TGL2B8:~# df -k Filesystem 1k-blocks Used Available Use% Mounted on /dev/shm 15360 116 15244 1% /mnt/ram /dev/ram1 14521 179 13592 2% /tmp /dev/ts_disk1_3 77427604 336 77427268 1% /mnt/disk1 /dev/ts_disk3_3 77427604 320 77427284 1% /mnt/disk3 /dev/ts_disk4_3 77427604 320 77427284 1% /mnt/disk4 root@TS-TGL2B8:~# df -k / Filesystem 1k-blocks Used Available Use% Mounted on /dev/md0 379712 211308 168404 56% / root@TS-TGL2B8:~# ls -l /dev/sdb2 brw-rw---- 1 root mail 8, 18 Jan 30 2003 /dev/sdb2 root@TS-TGL2B8:~# ls -l /dev/sdb3 brw-rw---- 1 root mail 8, 19 Jan 30 2003 /dev/sdb3
ここで見えていない /dev/ts_disk2_3 の実体を調べておきます。
root@TS-TGL2B8:~# ls -l /dev/ts_disk2_3 lrwxrwxrwx 1 root root 9 Jun 20 21:16 /dev/ts_disk2_3 -> /dev/sdb3

mkfs.xfs

上で見えていなかった /dev/ts_disk2_3 の実体 /dev/sdb3 に対して、 ここで mkfs.xfs を使って初期化します。
root@TS-TGL2B8:~# /sbin/mkfs.xfs /dev/sdb3 mkfs.xfs: /dev/sdb3 appears to contain an existing filesystem (xfs). mkfs.xfs: Use the -f option to force overwrite. root@TS-TGL2B8:~# /sbin/mkfs.xfs -f /dev/sdb3 meta-data=/dev/sdb3 isize=256 agcount=8, agsize=5021 blks = sectsz=512 data = bsize=4096 blocks=40162, imaxpct=25 = sunit=0 swidth=0 blks, unwritten=1 naming =version 2 bsize=4096 log =internal log bsize=4096 blocks=1200, version=1 = sectsz=512 sunit=0 blks realtime =none extsz=65536 blocks=0, rtextents=0 root@TS-TGL2B8:~#
これの後で (/sbin/reboot で) 再起動すると bell は鳴らなくなります。
admin@TS-TGL2B8:~$ df -k Filesystem 1k-blocks Used Available Use% Mounted on /dev/shm 15360 116 15244 1% /mnt/ram /dev/ram1 14521 175 13596 2% /tmp /dev/ts_disk1_3 77427604 336 77427268 1% /mnt/disk1 /dev/ts_disk2_3 155848 144 155704 1% /mnt/disk2 /dev/ts_disk3_3 77427604 320 77427284 1% /mnt/disk3 /dev/ts_disk4_3 77427604 320 77427284 1% /mnt/disk4 admin@TS-TGL2B8:~$
この後に (もし bootselector を利用しているなら USB メモリをさして おいて) また NetBSD 側を起動して
root@TS-TGL2B8:/boot# cd /boot root@TS-TGL2B8:/boot# /sbin/insmod nbloader_v3.o kernel=netbsd-KUROBOX_MD.bin
wd0 を編集するのですが、その時には dd を使って最初の 40 x 512 bytes くらいを写してしまいます。 まず wd2 と wd3 を変更します。 (以下は NetBSD 側の操作です)
# dd if=/dev/wd1d of=/dev/wd2d count=40
# dd if=/dev/wd1d of=/dev/wd3d count=40
(上記の複写が合っているかは fdisk wd2; fdisk wd3 等で確認可です)
この二行の操作は、 もっと正しい方法がありますが、それは時間のある 時に書加えます。(see man disklabel, option -R)
# /sbin/reboot
(USB メモリは外しておきます) これでまた bell が鳴ります。上で二つ変更したので二つ 赤 LED が点灯します。 そこで mkfs.xfs します。
root@TS-TGL11E:~# /sbin/mkfs.xfs -f /dev/sdc3 root@TS-TGL11E:~# /sbin/mkfs.xfs -f /dev/sdd3
NetBSD memory disk をもう一度起動して wd1 を wd0 にも写し、 Linux を起動して mkfs.xfs -f /dev/sda3 します。

最後に変更した後に、もう一度再起動した時の様子: (Linux 側)

root@TS-TGL2B8:~# df -k Filesystem 1k-blocks Used Available Use% Mounted on /dev/shm 15360 116 15244 1% /mnt/ram /dev/ram1 14521 175 13596 2% /tmp /dev/ts_disk1_3 155848 144 155704 1% /mnt/disk1 /dev/ts_disk2_3 155848 144 155704 1% /mnt/disk2 /dev/ts_disk3_3 155848 144 155704 1% /mnt/disk3 /dev/ts_disk4_3 155848 144 155704 1% /mnt/disk4 root@TS-TGL2B8:~# df -k / Filesystem 1k-blocks Used Available Use% Mounted on /dev/md0 379712 211244 168468 56% / root@TS-TGL2B8:~#
RAID5 解除前
RAID 解除 前に (Linux 側で) df すると次のようになっています。
admin@TS-TGL11E:~$ df -k Filesystem 1k-blocks Used Available Use% Mounted on /dev/shm 15360 116 15244 1% /mnt/ram /dev/ram1 14521 186 13585 2% /tmp /dev/md1 466637248 3152 466634096 1% /mnt/array1
RAID を解除した後では、次のように見えます。
admin@TS-TGL11E:~$ df -k Filesystem 1k-blocks Used Available Use% Mounted on /dev/shm 15360 112 15248 1% /mnt/ram /dev/ram1 14521 187 13584 2% /tmp /dev/ts_disk1_3 155513556 624 155512932 1% /mnt/disk1 /dev/ts_disk2_3 155513556 624 155512932 1% /mnt/disk2 /dev/ts_disk3_3 155513556 624 155512932 1% /mnt/disk3 /dev/ts_disk4_3 155513556 624 155512932 1% /mnt/disk4 admin@TS-TGL11E:~$
netbsd-KUROBOX_MD.bin を使って NetBSD sysinst 環境を起動した後、 fdisk を使って wd1 の 2 区画と 3 区画の大きさを入替えた後(に再起動した時)では、 次のように見えます。
(略)
全てを変更した後です。
root@TS-TGL11E:~# df -k Filesystem 1k-blocks Used Available Use% Mounted on /dev/shm 15360 112 15248 1% /mnt/ram /dev/ram1 14521 173 13598 2% /tmp /dev/ts_disk1_3 171912 144 171768 1% /mnt/disk1 /dev/ts_disk2_3 171912 144 171768 1% /mnt/disk2 /dev/ts_disk3_3 171912 144 171768 1% /mnt/disk3 /dev/ts_disk4_3 171912 144 171768 1% /mnt/disk4 root@TS-TGL11E:~#
ここまで変更して NetBSD 側で disklabel を見ると次のようになっています。
# disklabel wd0
wd0: no disk label
# /dev/rwd0d:
type: ESDI
disk: WDC WD1600JS-22M
label: fictitious
flags:
bytes/sector: 512
sectors/track: 63
tracks/cylinder: 16
sectors/cylinder: 1008
cylinders: 310101
total sectors: 312581808
rpm: 3600
interleave: 1
trackskew: 0
cylinderskew: 0
headswitch: 0           # microseconds
track-to-track seek: 0  # microseconds
drivedata: 0 

8 partitions:
#        size    offset     fstype [fsize bsize cpg/sgs]
 b:    273097    771128       swap                     # (Cyl.    765*-   1035*)
 d: 312581808         0     unused      0     0        # (Cyl.      0 - 310100)
 e:    771057        63 Linux Ext2      0     0        # (Cyl.      0*-    764)
 f:    273105    771120     unused      0     0        # (Cyl.    765 -   1035*)
 g:    353428   1044225 Linux Ext2      0     0        # (Cyl.   1035*-   1386*)
 h: 311179052   1397653 Linux Ext2      0     0        # (Cyl.   1386*- 310095*)
disklabel: boot block size 0
ppdisklabel: super block size 0
#
次は sysinst ですが、実はその前に raid の設定をしておけば raid 上に設置することも可能です。最近は慣れたので、専ら、そうしています。
Last Update: Sat, 07 Jun 2014 13:16:17 GMT 1.66 2008/03/08