linux 系统 考贝
转自http://www.lpfrx.com/archives/137/,可行性:未测试过前天在Vmware里尝试把系统复制到另一硬盘的实验,实现了Linux的系统备份, 或者说是复制系统吧,我没用使用ghost或者dd, 我Vmware里的Linux系统是Debian, 分了三个区的 , 另外,不支持lvm .
#!/bin/bash# 无聊空间 http://www.lpfrx.com 制作 disk='/dev/hdb' # 格式化echo -e "fdisk \\033[1;32m$disk\\033[0;39m now..."dd if=/dev/zero of=$disk bs=1 count=64 seek=446 &>/dev/null # 自动分区, 分了三个区/sbin/fdisk <<EOFnp1 +10240Mnp2 +512Mnp3a1t282wEOF mke2fs -j /dev/hdb1mke2fs -j /dev/hdb3mkswap /dev/hdb2 rm -r /mnt/newosmkdir /mnt/newos/bin/mount /dev/hdb1 /mnt/newos /bin/mkdir /mnt/newos/home/bin/mount /dev/hdb3 /mnt/newos/home cd //bin/cp -a /cdrom /mnt/newos/bin/cp -a /home/* /mnt/newos/home//bin/cp -a /lib /mnt/newos/bin/cp -a /root /mnt/newos/bin/cp -a /var /mnt/newos/bin/cp -a /bin /mnt/newos/bin/cp -a /dev /mnt/newos/bin/cp -a /initrd /mnt/newos/bin/cp -a /opt /mnt/newos/bin/cp -a /sbin /mnt/newos/bin/cp -a /tmp /mnt/newos/bin/cp -a /vmlinuz /mnt/newos/bin/cp -a /boot /mnt/newos/bin/cp -a /etc /mnt/newos/bin/cp -a /initrd.img /mnt/newos/bin/cp -a /media /mnt/newos/bin/cp -a /srv /mnt/newos/bin/cp -a /usr /mnt/newos /bin/cp -a /home/copydir/fstab /mnt/newos/etc mkdir /mnt/newos/proc # 如果系统含有selinux,就需要以下这句#mkdir /mnt/newos/selinuxmkdir /mnt/newos/sysmkdir /mnt/newos/mnt #安装grubcd /mnt/newoschroot /mnt/newos<<EOFgrub<<EOFroot (hd1,0)setup (hd1)quitEOF/bin/touch /.autorelabelexitEOF
脚本copyos.sh源码
在上述操作完成后,然后还要修改menu.list和fstab, 而有的linux系统没有menu.list的话,就修改grub.conf
编辑 /mnt/new/boot/grub/menu.list,更改:
kernel /vmlinuz… ro root=LABEL=/ ==> kernel /vmlinuz… ro root=/dev/hda1
编辑 /mnt/new/etc/fstab,更改:
LABEL=/ ==> /dev/hda1
其实以上操作要根据linux系统的不同mount而进行修改, Debian的是这样的, 以后linux的复制系统或者说是备份系统就方便了.
上边的 +10240M是第1分区的,+512M是swap交换区的,然后剩余空间作为第三区
如果以后就有什么发现,就继续在这篇文章补上.
相关话题:
linux系统备份tar压缩成功
Tag:
页:
[1]