현재 RAID 1을 RAID0+1로 변환하려고 하는데 부트로더 설치에 문제가 있습니다. 제가 무엇을 하고 있는지 살펴보시기 바랍니다.
현재 구성은 RAID1(2*10GB)입니다.
[root@localhost ~]# mdadm --detail /dev/md0
/dev/md0:
Version : 1.0
Creation Time : Thu May 8 20:13:26 2014
Raid Level : raid1
Array Size : 10279808 (9.80 GiB 10.53 GB)
Used Dev Size : 10279808 (9.80 GiB 10.53 GB)
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
Intent Bitmap : Internal
Update Time : Wed May 14 21:49:34 2014
State : active
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Name : livecd.centos:0
UUID : 877ab4b2:7d4a61f7:a732e1c0:115c9ee5
Events : 72
Number Major Minor RaidDevice State
0 8 2 0 active sync /dev/sda2
1 8 18 1 active sync /dev/sdb2
이제 RAID1 성능을 저하시킨 후 VM에 2 * 2GB 드라이브를 추가합니다. 실패한 드라이브와 새 드라이브를 사용하여 raid0을 만들었습니다.
[root@localhost ~]# mdadm /dev/md0 -f /dev/sdb2 -r /dev/sdb2
mdadm: set /dev/sdb2 faulty in /dev/md0
mdadm: hot removed /dev/sdb2 from /dev/md0
[root@localhost ~]# fdisk /dev/sdc
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (1-261, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-261, default 261):
Using default value 261
Command (m for help): t
Selected partition 2
Hex code (type L to list codes): fd
Changed system type of partition 2 to fd (Linux raid autodetect)
Command (m for help): wq
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[root@localhost ~]# mkfs.ext4 /dev/sdc2
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
131072 inodes, 524112 blocks
26205 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=536870912
16 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 38 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[root@localhost ~]# mdadm --zero-superblock /dev/sdb2
RAID1의 일부가 될 수 있도록 RAID0 구축
[root@localhost ~]# mdadm --create /dev/md5 --name=5 --homehost=livecd.centos -l 0 -n 2 /dev/sdb2 /dev/sdc2
mdadm: /dev/sdb2 appears to contain an ext2fs file system
size=10279808K mtime=Wed May 14 21:28:53 2014
mdadm: /dev/sdc2 appears to contain an ext2fs file system
size=2096448K mtime=Thu Jan 1 04:00:00 1970
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md5 started.
[root@localhost ~]# cat /proc/mdstat
Personalities : [raid0] [raid1]
md5 : active raid0 sdc2[1] sdb2[0]
12375552 blocks super 1.2 512k chunks
md0 : active raid1 sda2[0]
10279808 blocks super 1.0 [2/1] [U_]
bitmap: 1/1 pages [4KB], 65536KB chunk
md1 : active raid0 sdb1[1] sda1[0]
408576 blocks super 1.1 512k chunks
unused devices: <none>
저하된 RAID1에 RAID0 추가
[root@localhost ~]# mdadm --add /dev/md0 /dev/md5
mdadm: /dev/md5를 추가했습니다.
[root@localhost ~]# cat /proc/mdstat
Personalities : [raid0] [raid1]
md5 : active raid0 sdc2[1] sdb2[0]
12375552 blocks super 1.2 512k chunks
md0 : active raid1 md5[2] sda2[0]
10279808 blocks super 1.0 [2/2] [UU]
bitmap: 0/1 pages [0KB], 65536KB chunk
md1 : active raid0 sdb1[1] sda1[0]
408576 blocks super 1.1 512k chunks
unused devices: <none>
[root@localhost ~]# mdadm --detail /dev/md0
/dev/md0:
Version : 1.0
Creation Time : Thu May 8 20:13:26 2014
Raid Level : raid1
Array Size : 10279808 (9.80 GiB 10.53 GB)
Used Dev Size : 10279808 (9.80 GiB 10.53 GB)
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
Intent Bitmap : Internal
Update Time : Wed May 14 22:13:20 2014
State : active
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Name : livecd.centos:0
UUID : 877ab4b2:7d4a61f7:a732e1c0:115c9ee5
Events : 191
Number Major Minor RaidDevice State
0 8 2 0 active sync /dev/sda2
2 9 5 1 active sync /dev/md5
이제 부트로더를 설치할 시간입니다. 이것이 제가 실패하고 여러분의 도움이 필요한 단계입니다.
[root@localhost ~]# grub
Probing devices to guess BIOS drives. This may take a long time.
Unknown partition table signature
GNU GRUB version 0.97 (640K lower / 3072K upper memory)
[ Minimal BASH-like line editing is supported. For the first word, TAB
lists possible command completions. Anywhere else TAB lists the possible
completions of a device/filename.]
grub> find /boot/grub/grub.conf
find /boot/grub/grub.conf
(hd0,1)
grub> device (hd1) /dev/sdb
device (hd1) /dev/sdb
grub> root (hd1,1)
root (hd1,1)
Filesystem type is ext2fs, partition type 0xfd
grub> setup (hd1)
setup (hd1)
Checking if "/boot/grub/stage1" exists... no
Checking if "/grub/stage1" exists... no
Error 2t: Bad file or directory type
grub>
제 경우에는 부트로더를 어디에 설치해야 하나요?
md5에는 /dev/sdb2 및 /dev/sdc2가 있으며 어디에 부트로더를 설치해야 합니까?
NON 이러한 /dev/sdb2 또는 /dev/sdc2는 grub 아래에 나타납니다.
raid0에 부트로더가 설치되면 /dev/sda2에 대해 동일한 절차를 반복합니다.