本文主要是介绍u盘安装livekali操作系统,备份本机linux系统,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
引用:http://www.alewolf.com/article/backup_for_linux.html,本文只做记录。
文档目的:对目标机器上的centos5.5系统(采用lvm管理磁盘)做备份方便以后奔溃后恢复回来
实验环境:
1块硬盘(数据原盘),一个U盘(或硬盘)
原盘:centos5.5 x86
目的磁盘:空盘
U盘:centos6.9 x64
一、备份数据
1.1 启动机器
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
选择从u盘启动系统
#vgdisplay 查看原盘vgname
#vgchange -ay vgname 激活原盘vg
#lsbk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sr0 11:0 1 1024M 0 rom
sda 8:0 0 10G 0 disk
├─sda1 8:1 0 500M 0 part /boot
└─sda2 8:2 0 9.5G 0 part
├─VolGroup-lv_root (dm-0) 253:0 0 8.5G 0 lvm /
└─VolGroup-lv_swap (dm-1) 253:1 0 1G 0 lvm [SWAP]
sdb 8:16 0 8G 0 disk
├─sdb1 8:17 0 102M 0 part
└─sdb2 8:18 0 7.9G 0 part
├─VolGroup00-LogVol00 (dm-2) 253:2 0 5.9G 0 lvm
└─VolGroup00-LogVol01 (dm-3) 253:3 0 2G 0 lvm
其中sdb1是原系统的boot分区,VolGroup00-LogVol00是原系统的/分区
|
1.2 备份系统
1
2
3
4
5
6
7
8
9
10
11
12
13
|
可以采用cpio或者tar备份,本文采用tar(实验中,cpio报错归档不完整)
挂载原盘
#cd /home && mkdir aa bb
#mount /dev/sdb1 /home/aa 挂载/boot分区
#mount /dev/VolGroup00/LogVol00 /home/bb 挂载/分区
#tar -cvzf /home/boot.tgz -C /home/ aa --exclude=dirname 打包boot分区(不打包dirname的数据)
#tar -cvzf /home/root.tgz -C /home/ bb --exclude=dirname 打包/分区
#umount /home/aa
#umount /home/bb
若目标文件大于2G以上,请考虑分割压缩,如下:
#tar -cvzf - / --exclude=/home --exclude=/proc --exclude=/lost+found --exclude=/tmp --exclude=/mnt --exclude=/sys |split -b 2000m - /home/root.tgz 将/目录压缩成2G一个的文件并排除某些目录
#tar -cvzf - /boot |split -b 2000m - /home/boot.tgz 压缩boot分区
|
二、目的磁盘创建lv
1
2
3
4
5
6
7
8
9
10
11
|
#fdisk /dev/sdb 将目的磁盘分成两个区,其中第一个区(boot分区)500M,其他容量分给第二个分区(root分区+swap),输入t指定第二个分区格式为8e
#pvcreate /dev/sdb2
#vgcreate VolGroup00 /dev/sdb2 将pv为sdb2的创建成一个vg(VolGroup00)
ps:注意此处的vgname必须和原系统的vgname严格一致,否则启动会报错!!!!
#vgchange -ay VolGroup00
#lvcreate -L +5.9G -n LogVol00 VolGroup00
#lvcreate -L +1G -n LogVol01 VolGroup00
#mkfs.ext4 /dev/sdb1
#mkfs.ext4 /dev/VolGroup00/LogVol00 将目的盘的 root分区格式化成ext3
#mkswap /dev/VolGroup00/LogVol01 格式化目的磁盘的swap分区
PS:请注意,目标磁盘的vgname和lvname必须和原盘的严格一致,否则启动会报错
|
三、恢复数据到目的盘
1
2
3
4
5
6
7
8
9
10
|
#cd /home
#mount /dev/sdb1 aa
#mount /dev/VolGroup00/LogVol00 bb
#tar -xvzf boot.tgz
#tar -xvzf root.tgz
若采用的分割压缩,则解压命令如下:
#cd /home/aa && cat boot.tgza*|tar -zxv
#cd /home/bb && cat root.tgza*|tar -zxv
解压完成后,请手动创建上面排除的目录,并确保目录结构和原系统一致
|
四、写引导和挂载
1
2
3
4
5
6
7
8
9
10
|
#grub-install --root-directory=/home/aa --no-floppy /dev/sdb
#cd /home/aa/boot
#rm -rf grub && ln -s ../grub grub
改挂载文件
#vi /home/bb/etc/fstab
...
/dev/sda1 /boot ext3 defaults 1 2
...
rh系列的系统,启动挂载在/etc/fstab文件
|
五、测试
1
|
重启测试是否报错,若启动报“permit denied”相关的错误,检查selinux是否已经关闭
|
这篇关于u盘安装livekali操作系统,备份本机linux系统的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!