debian下应用raid5提高数据安全性--安恒网管员手记

原贴:http://debian.anheng.com.cn/news/html/net_admin_blog/raid5.html

debian下应用raid5提高数据安全性--安恒网管员手记
 
2005-05-02    刘世伟       阅读: <script language="javascript" src="/news/count.php?id=606" type="text/javascript"> </script> 106627

转载请注明出处:http://linux.anheng.com.cn/news/html/net_admin_blog/raid5.html

现在160G硬盘性价比比较高,
不建议采用200G,这样的非标准容量硬盘,因为每个磁片是80G,200G的硬盘,很可能是屏蔽掉一个有缺陷的面,制造出来的。
4个西部数据160G盘,用软件raid5,组成480G的一个卷,因为是raid5,支持一个硬盘损坏,每个盘拿出10G做系统,用raid1,然后剩下的作raid5,对于读操作来说,raid1速度的提升跟raid0一样,因为可以从多个盘片分别读取。
软件raid支持同一组硬盘的不同分区组建不同的raid格式。

raid5原理很简单,就是多一个盘用来做奇偶校验,这些盘是同等的互为校验,就是raid5,如果有一个专门的校验盘,就是raid4, 因为冗余了一个盘,所以就允许一个盘损坏.
如果冗余2个盘,就是raid6,允许2个盘同时损坏.
由于算法只是奇偶校验就够了,所以计算量很小,并不像大家想像的那样占用大量cpu处理.

debian下安装步骤:
首先,内核中要支持raid5,执行modconf 添加raid5和raid1支持。
安装mdadm软件包:
apt-get install mdadm
分区:
建立md0卷.  暂时空缺的硬盘用"missing"代替"/dev/hdex".raid5允许一个分区用missing代替,以后可以用mdadm -manage /dev/md0 --add /dev/hdxx来填加这个missing的分区.
#mdadm -C /dev/md0 --level 5 --raid-devices 4 /dev/hdb8 /dev/hdd8 /dev/hde8 /dev/hdg8
mdadm: array /dev/md0 started.

配置/etc/mdadm/mdadm.conf
先手动列出组建raid的分区:
echo DEVICE /dev/hd*6 /dev/hd*8 >/etc/mdadm/mdadm.conf
然后自动测试raid设置并记录到/dev/mdadm/mdadm.conf:
mdadm --detail --scan >> /etc/mdadm/mdadm.conf


格式化为reiserfs分区
# mkfs.reiserfs /dev/md0
mkfs.reiserfs 3.6.19 (2003
www.namesys.com)
Guessing about desired format.. Kernel 2.6.11-amd64 is running.
Format 3.6 with standard journal
Count of blocks on the device: 108998928
Number of blocks consumed by mkreiserfs formatting process: 11538
Blocksize: 4096
Hash function used to sort names: "r5"
Journal Size 8193 blocks (first block 18)
Journal Max transaction length 1024
inode generation number: 0
UUID: 85176854-9911-4154-9580-536b5b0f3281
ATTENTION: YOU SHOULD REBOOT AFTER FDISK!
        ALL DATA WILL BE LOST ON '/dev/md0'!
Continue (y/n):y
Initializing journal - 0%....20%....40%....60%....80%....100%
Syncing..ok
挂到/mnt
mount /dev/md0 /mnt将home目录同步过来
mirrordir /home /mnt修改/de/fstab 让md0做home
到现在就完成了raid5的部署.
查看/proc/mdstat文件,可以了解现在组建raid5的进度
files:/etc# cat /proc/mdstat
Personalities : [raid1] [raid5]
md0 : active raid5 hdg8[4] hde8[2] hdd8[1] hdb8[0]
      435995712 blocks level 5, 64k chunk, algorithm 2 [4/3] [UUU_]
      [==============>......]  recovery = 73.6% (106991744/145331904) finish=19.1min speed=33334K/sec
unused devices: <none>

.

raid中取下一个分区:

files:/# mdadm --manage /dev/md1 -r /dev/hdg6

将一个分区加入到raid:
files:/# mdadm --manage /dev/md1 -a /dev/hdg6
查看修复进度:
files:/# cat /proc/mdstat
Personalities : [raid1] [raid5]
md0 : active raid5 hdb8[0] hdg8[3] hde8[2] hdd8[1]
      435995712 blocks level 5, 64k chunk, algorithm 2 [4/4] [UUUU]
     
md1 : active raid1 hdg6[4] hdb6[0] hde6[2] hdd6[1]
      9767424 blocks [4/3] [UUU_]
      [========>............]  recovery = 42.0% (4107584/9767424) finish=3.7min speed=24917K/sec
unused devices: <none>

1

mdadm --manage  /dev/md0 --remove #取消一个raid

mdadm --manage /dev/md0  -f /dev/hdc8 #把hdc8标识为失效

 故障恢复步骤:

1.关机,取出坏盘
2.装上新盘,开机

3.先umount损坏分区所使用的分区 umount /dev/md0 有时需要停掉一些服务才可以卸载分区.
  用lsof看哪些程序占用md0的文件.
4.mdadm /dev/md0 -f /dev/hdc8 -r /dev/坏盘hdc8
5. 给新盘分区 和其它的盘完全一样
sfdisk -d /dev/hda |sfdisk /dev/hdc
6.mdadm --manage /dev/md0 --add /dev/hdc8
7.mdadm -R /dev/md0
8.mount /dev/md0  根据/etc/fstab来挂载分区.
9.系统会自动同步,用watch cat /proc/mdstat 查看 100%的时候就ok了 840G的阵列需要5小时才可以完成.
   在重建的同时,阵列已经可以投入使用了
 

如果阵列配置文件丢失,造成阵列解散,只要分区数据没有破坏,就可以用mdadm -create进行重建,而不丢失数据.
1.mdadm -create /dev/md0 --level=5 --raid-devices=4 /dev/hda8 /dev/hdb8 /dev/hdc8 /dev/hdd8 ;跟新建raid命令一样,只是系统会提示,磁盘原来是raid中的一个,输入y继续.
2.mount /dev/md0 /mnt  ;ls /mnt 数据应该都回来了.
3.重新建立/etc/mdadm/mdadm.conf ,方法跟前面建立raid5时一样

下面是一个操作实例(红色为键入的命令):

anheng.com.cn#mdadm --create /dev/md1 --level=5 --raid-devices=3 /dev/hda11 /dev/hdc6 /dev/hdd6
mdadm: /dev/hda11 appears to be part of a raid array:
    level=5 devices=3 ctime=Thu Jul 20 19:13:28 2006
mdadm: /dev/hdc6 appears to be part of a raid array:
    level=5 devices=3 ctime=Thu Jul 20 19:13:28 2006
mdadm: /dev/hdd6 appears to be part of a raid array:
    level=5 devices=3 ctime=Thu Jul 20 19:13:28 2006
Continue creating array? y
mdadm: array /dev/md1 started.
anheng.com.cn:~# mount /dev/md1 /home1
anheng.com.cn:~# df -h /home1Filesystem            容量  已用 可用 已用% 挂载点
/dev/md1               56G   17G   40G  30% /home1
anheng.com.cn:~# ls /home1
192.168.10.80  192.168.2.2  192.168.8.1  192.168.9.1
anheng.com.cn:~# cat /proc/mdstat
Personalities : [raid5]
md0 : active raid5 hda10[0] hdd7[3] hdc7[2] hdb1[1]
      234444288 blocks level 5, 64k chunk, algorithm 2 [4/4] [UUUU]

md1 : active raid5 hdd6[3] hdc6[1] hda11[0]
      58412032 blocks level 5, 64k chunk, algorithm 2 [3/2] [UU_]
      [>....................]  recovery =  1.0% (295540/29206016) finish=30.9min speed=15554K/sec
unused devices: <none>

责任编辑: 刘世伟

相关文章
linux下的后门检查程序rkhunter和杀毒程序clamav  07-04-22 - 阅: 49241
debian下安装qmail+clamav+webmail  07-04-03 - 阅: 50475
linux下的DV磁带视频采集和dvd刻录  07-02-13 - 阅: 60095
debian远程安装kvm虚拟机  07-01-13 - 阅: 53679
linux内核虚拟机 kvm  07-01-05 - 阅: 62377
在debian下用eaccelerator加速php性能 --安恒网管员手记  06-06-28 - 阅: 85800
linux下raid5磁盘阵列实施  06-03-13 - 阅: 75107
linux在安恒公司的应用 ---安恒网管员手记  06-01-16 - 阅: 114308
qmail+debian --安恒网管员手记  06-01-15 - 阅: 89351
debian Etch版 010908312D230C5F 错误  05-12-31 - 阅: 67544
打印机共享器跟linux的连接 --安恒网管员手记  05-04-20 - 阅: 109885
Tcpdump命令的使用与示例——linux下的网络分析  05-04-08 - 阅: 119551
Linux下的网络协议分析工具-tcpdump快速入门手册  05-04-07 - 阅: 119274
e680i手机嵌入式linux 研究 --安恒网管员手记  05-03-13 - 阅: 89649
linux下vcd刻录 --安恒网管员手记  04-11-06 - 阅: 124639
安恒网管员手记:linux服务器文件备份  04-10-29 - 阅: 105370
安恒网管员手记:用php在linux下连接mssql2000  04-08-21 - 阅: 97414
安恒网管员手记: linux与 UPS 安恒的解决方法  04-07-21 - 阅: 103970
在debian下部署lamp  04-07-11 - 阅: 87802
在debian版linux下用pptp 实现VPN  04-07-09 - 阅: 177011

Email给朋友打印本文
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值