2005/12末〜2006/1ごろ、raidreconfを誤ってCtrl+Cで止めたときのこと
HDD1: 距離をHDD1台分離してあったもの
14:05 復帰
cfdisk /dev/sdd hdd全体を1パーティションにして、typeをfd (linux raid autodetect)にする
[nickle@itefu ~]% sudo raidreconf -o /etc/raidtab -n /etc/raidtab.new -m /dev/md0 I will grow your old device /dev/md0 of 7631122 blocks to a new device /dev/md0 of 11446683 blocks using a block-size of 64 KB Is this what you want? (yes/no): yes Converting 7631122 block device to 11446683 block device Allocated free block map for 3 disks 4 unique disks detected. Working (\) [00231329/07631122] † [nickle@itefu ~]% sudo raidreconf -o /etc/raidtab -n /etc/raidtab.new -m /dev/md0 Password: Working with device /dev/md0 Parsing /etc/raidtab Parsing /etc/raidtab.new Size of old array: 1465176006 blocks, Size of new array: 1953568008 blocks Old raid-disk 0 has 3815561 chunks, 244195904 blocks Old raid-disk 1 has 3815561 chunks, 244195904 blocks Old raid-disk 2 has 3815561 chunks, 244195904 blocks New raid-disk 0 has 3815561 chunks, 244195904 blocks New raid-disk 1 has 3815561 chunks, 244195904 blocks New raid-disk 2 has 3815561 chunks, 244195904 blocks New raid-disk 3 has 3815561 chunks, 244195904 blocks Using 64 Kbyte blocks to move from 64 Kbyte chunks to 64 Kbyte chunks. Detected 776428 KB of physical memory in system A maximum of 2588 outstanding requests is allowed I will grow your old device /dev/md0 of 7631122 blocks to a new device /dev/md0 of 11446683 blocks using a block-size of 64 KB Is this what you want? (yes/no): no [nickle@itefu ~]% ps PID TTY TIME CMD 8763 pts/0 00:00:00 zsh 9446 pts/0 00:00:00 ps[nickle@itefu ~]% sudo mdadm -A --scan mdadm: /dev/md0 has been started with 3 drives. [nickle@itefu ~]% cat /proc/mdstat Personalities : [raid5] md0 : active raid5 sda1[0] sdc1[2] sdb1[1] 488391808 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU]
unused devices: <none> .......ls: download: 未知のエラー 990 [nickle@itefu /home/data]% cd audio cd: 未知のエラー 990: audio [nickle@itefu /home/data]% cd priv cd: 未知のエラー 990: priv [nickle@itefu /home/data]% cd - ~ [nickle@itefu ~]% sudo umount /home/data
Old raid-disk 0 has 3815561 chunks, 244195904 blocks
3815561 * 2 = 7631122
244195904 blocks * 1024 byte = 250056605696
231329 / 2 * 64 * 1024 = 7,580,188,672 bytes 余裕を持って8Gバックアップしておけばとりあえず安心?
244195904 / 3815561 = 64
1500*64 = 96000
7631122*64 * 64 * 1024 = 32007245529088
dd if=/dev/sda of=sda_head.bin count=15625000
sddはどこまでバックアップ取ろう
231329 / 7631122 = 0.03031389093242121
500 * 0.03031389093242121 = 15.156945466210604
231329 * 64 * 1024 = 15,160,377,344
0 - 155235
testing: 14805056 to 14905055
14777618 / 64 = 230900.28125
var/log/messages
Dec 30 18:05:26 localhost kernel: md: md0 stopped.
標準出力の代わりに、ファイル file へ書き出す。 conv=notrunc が与えられな い限り、 dd はファイル file を (訳注: コピー前に) 0 バイト ( も し く は seek= で指定されたサイズ) に切り詰める。
conv=CONVERSION[,CONVERSION]... 引 き数 CONVERSION で指定されたファイル変換を行う。(コンマの前後にスペー スを置かない。) notrunc 出 力ファイルを切り詰めない。 (訳注: 書き込み前の切り詰めを行わず 、そのまま先頭バイトから書き込みを行います。入力ファイルと出力 フ ァイルが同じ場合にファイルが壊れません。)
dd if=sda.bin of=/dev/sda conv=notrunc
sudo dd if=sda_head.bin of=/dev/sda conv=notrunc && sudo dd if=sdb_head.bin of=/dev/sdb conv=notrunc && sudo dd if=sdc_head.bin of=/dev/sdc conv=notrunc
[nickle@itefu ~/raidtools-0.95-raidreconf]% sudo dd if=sda.bin of=/dev/sda conv=notrunc
[nickle@itefu ~/raidtools-0.95-raidreconf]% sudo dd if=sdb.bin of=/dev/sdb conv=notrunc && sudo dd if=sdc.bin of=/dev/sdc conv=notrunc
sudo dd if=sda.bin of=/dev/sda1 conv=notrunc &&
sudo dd if=sdb.bin of=/dev/sdb1 conv=notrunc &&
sudo dd if=sdc.bin of=/dev/sdc1 conv=notrunc
sudo xfs_repair -n /dev/md0
alias od='od -Ax -tx1'
Working (-) [00051175/07631122] [
51175 : 15:03 125795 : 15:13 260111 : 15:32 490367 : 16:031987031 : 19:36 2865415 : 21:35
125795 - 51175 = 74620
7631122 / 74620 = 102.26644331278477
29 * 37 / 60 = 17.883333333333333
(7631122 - 490367) / 439192 = 16.258845789540792
804.9668126141613 / 60 = 13.416113543569356 |