备份恢复ubuntu到新的机器中(类似ghost功能)

1, 备份系统
sudo su
cd /
tar cvpzf backup.tgz --exclude=/backup.tgz --exclude=/proc --exclude=/lost+found --exclude=/sys --exclude=/mnt --exclude=/tmp --exclude=/media --exclude=/dev --exclude=/var /

2,恢复系统到新硬盘(假设硬盘挂载在/mnt/sdb1)
tar xvpfz backup.tgz -C /mnt/sdb1

第一次排除的一些文件夹,都重新新建一下,注意tmp文件夹是777的权限。

mkdir -p dev sys proc var lost+found mnt media tmp

chmod 1777 tmp

3. 安装grub到新硬盘中(这个我是用ubuntu livecd装的,开始用slax的livecd试过不次报错)
sudo grub-install --root-directory=/mnt/sdb1 /dev/sdb

4, 需要修改 etc/fstab 和 boot/grub/grub.cfg  中的启动分区的uuid为新的硬盘启动分区的uuid(sudo blkid /dev/sdb1命令查看新硬盘分区的uuid)
grub.cfg 中的uuid先修改成新的uuid,然后从新的硬盘启动系统,进系统以后再执行sudo update-grub 更新grub.cfg

(我这有一台机, 重启后启动报错: serious errors were found while checking the disk drive for ./     按I 键跳过错误可以启动进系统。 遇到这个问题的话, 参照网上的把grub里面的ro改成rw就可以了,但是具体什么原因还是不清楚。 具体操作步骤 sudo vi /etc/grub.d/10_linux 把这个文件里面的ro都改成rw, 然后sudo update-grub,然后重启就可以进系统了。)

5, 我这边是恢复到另外几台一样配置的服务器上面, 网卡芯片也是一样的, 但是mac地址肯定不一样, 所以还需要改一下网卡逻辑名和 mac地址对应的文件  /etc/udev/rules.d/70-persistent-net.rules

# PCI device 0x10ec:0x8168 (r8169)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:e0:4c:3a:33:de", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

# PCI device 0x8086:0x1557 (ixgbe)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:9e:01:59:fb:ea", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

NAME="eth0" 和 "00:e0:4c:3a:33:de" MAC地址要对应上,不会开机ifconifg没有网卡名。

试了另一台机器 发现这样还是识别不到, 干脆直接把这个文件的内容清掉。 这个文件应该是检测到网卡后自动生成的, 这样默认就是从eth0开始了, 开一次机后如果ifconfig还是没有识别到网卡, 就打开这个文件看看, 对应修改一下网卡的逻辑名和/etc/network/interfaces里面设置的对应上。再重启应该就好了。

这样,恢复之后的系统和备份时的基本是一样的了。省了不少时间装系统。因为我硬盘上搭建了安卓开发环境 ,以后硬盘就算出问题,换系统也非常快。不用每个机器都重装系统和安卓开发环境。

展开阅读全文

没有更多推荐了,返回首页