- 论坛徽章:
- 0
|
建立安全动态的系统
我们已经讲了raid.lvm的建立和使用.这次是讲它们结合起来使用,打造安全动态的系统策略,这次用文字讲述.不在用图形为重点!读这篇文章前,一定要有LVM和raid基础.!
大纲:
建立raid 5的磁盘!
用raid 5的打造lvm
移植你的系统,
下面开始一一讲解.最终给您一个安全动态的系统,
建立raid 5
建立raid 5 至少使用三块硬块,由于现在用的物理磁盘是hda,那么我们必须先添加三块磁盘,,别对我说你用的是sda,要是sda可以直接跳过建立raid 5这一步直接去建LVM,如果你的三块硬盘没用过的话据具体情况分区,这里按默认的,三个4G硬盘每个硬盘上只分一个区,如果分区不懂的话可去本站首页查看,在分区的时候Frist cylindr and last cylinder都按默认就行了,其中值的注意的是必须把这个区的格式转换一下.改成RAID AUtO.按"t"进行转换.二进制代码是:fd.
建立raid 5的第二步就是拷贝配置文件,至/etc/raidtab.只须修改其中的硬盘就可以了,剩余的就是建立了.如果以前使用过raid设备,会提示错误,用"mkraid -R /dev/md?"就可以了!不需要格式化!
这样raid级别五就建立成功了.这只是代表安全,还不代表动态,下面开始建的是lvm.
LVM的建立
用的设备就是/dev/md0,建立LVM的三步曲.很简单的.
pvcreate /dev/md0 初识化物理卷。
vgcreate vg /dev/md0 建立磁盘卷组.
lvcreate -n home -l 250 vg 开始建立系统所需文件夹.
lvcreate -n var -l 250 vg ........
..............
或许你会说..晕.这么容易.我也知道建这样的的确很容易,可是把"/"根分区移到逻辑上来你就不会说容易了!
移植你的系统
上面的除根分区外的建的逻辑分区必须经过格式化才能使用,mkfs.ext3 /dev/vg/*.
这样随便找一个目录进行挂载拷贝源数据.举一个例子;
把/dev/vg/home挂载到/mnt/home里.这样我们对/mnt/home进行的操作实际到都是操作了/dev/vg/home这个分区,其中值的注意的是一定要保证你的/dev/vg/home分的空间大于或等于你的当前系统的/home空间大小。ok..下面的就开始把当前系统的/home/下的所有文件进行复制到/mnt/home文件里.注意cp要加-a选项.接下来就把"/dev/vg/home"逻辑分区挂载到"/home"进行添加.不要以为这样就可以了,还有的是在开机运行的脚本里要加入一条启动raid设备的命令,要不然系统是不会认识你的lvm是什么东西的,"/etc/rc.sysinit里找到RCraid的语句,在适当的地方加入raidstart /dev/md?"如果你还想把其它的如/var./usr..等了.这样的都和/home类似了.
移植你的"/"
"/"分区比较特别,是由系统启动时第一个挂载的分区,所以对其要十分注意和谨慎,/boot/initrd*这一项是系统定位root分区的前提和必须的文件,我们必须通过对此文件的操作达到转移主分区的目的,
现在的步骤和上面的没有什么二样,建逻辑卷,根据现在的主分分区的大小给予适当的空间即可,然后把主分区挂载到一个目录, 如果你的是新系统,那么根分区下的"/proc""tmp"不需要移植,前面已经移植了 "home"和"/var"那么剩余的都是需要移植的了,那么就在刚才所挂载的目录里.先行创建要"/"分区里的目录.接下来就像拷贝"home"和"var"一样.进行复制操作,注意cp一定要加"-a"参数,boot分区根据前面所说,也不要复制了,因为没有必要!
下面就创建一个虚拟的境像文件,向里加入raid,lvm和一些驱动模块等,创建的命令就是mkinitrd,完整的参数是"#mkinitrd /boot/initrd-lvm-$(uname -r).img $(uname -r)"现在就开始创建了,也可以利用lvmcreate_initrd,也就是在系统启动的那一点启动raid系统!
看一下用mkinitrd所产生的是什么文件,#file /boot/initrd-lvm*.img 会看到显示的是gzip格式的,我们一定要解压缩,否则是无法运行的,但看到的后缀是img,也可以先改名.mv /boot/initrd-lvm*.img /boot/initrd-lvm*.img.gz.然后用#gunzip /boot/initrd-lvm*.img.gz,把这个解压缩的文件挂载到/opt目录里,以loop格式进行挂载,修改里面的内容,
1. cp -a /dev/lvm /opt/dev/
cp -a /dev/vg /opt/dev
cp /dev/hd[abcd]1 /opt/dev
2. vi /opt/linuxrc #raidautorun /dev/md0
在适当的地方加入
raidstart /dev/md0
vgscan
vgchange -a y /dev/vg
mount -o defaults --ro -t ext3 /dev/vg/root.
3. cp /sbin/raidstart /opt/bin
cp /sbin/vgscan /opt/bin
cp /sbin/vgchange /opt/bin
4. #ldd /sbin/raidstart
#ldd /sbin/vgscan
#ldd /sbin/vgchange
5. cd /opt/lib
mkdir tls
cp /lib/tls/libc.so.6 tls/
cp /lib/liblvm-10.so.1 ./
cp /lib/ld-llinux.so.2 ./
6. cp /etc/raidtab /opt/etc/
7. cd ..
umount /opt
cd ..
cd /boot
gzip initrd-lvm*img -c >initrd-lvm*.gz
8. vi /boot/grub/grub.conf
kernel /boot/vmlinuz* ro root=/dev/vg/root
initrd /boot/initrd-lvm-$(uname -r).img.gz
9. vi /mnt/etc/fstab #虚拟境像文件的etc
/dev/vg/root / ext3 defaults 1 1
10 reboot
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/18861/showart_127184.html |
|