J'entends souvent parler de suppression de bases de données et de fuite. Cependant, cela ne peut être qu'un sujet de ridicule. Vous ne pouvez pas faire cela dans un travail réel, sinon la base de données sera. supprimé, j'ai peur de ne pas pouvoir m'enfuir.
Donc, la sauvegarde est très importante ! ! ! ! !
Copier (pour sauvegarder l'intégralité du système localement, restaurer sur la machine locale plus tard)
Notez qu'il doit y avoir suffisamment d'espace libre dans le répertoire racine pour la sauvegarde.
cd / #tar.gz格式 tar cvpzf system_backup.tar.gz / --exclude=/proc --exclude=/lost+found --exclude=/system_backup.tar.gz --exclude=/mnt --exclude=/sys #tar.bz2格式 tar cvpjf system_backup.tar.bz2 / --exclude=/proc --exclude=/lost+found --exclude=/system_backup.tar.bz2 --exclude=/mnt --exclude=/sys # 恢复系统 cd / #上传文件到根目录下 tar xvpfz system_backup.tar.gz -C / 或 tar xvpfj system_backup.tar.bz2 -C / #创建备份时排除的目录 mkdir proc mkdir lost+found mkdir mnt mkdir sys
/proc Autorisations : Propriétaire du fichier : root Groupe : root Propriétaire : Lire le groupe d'exécution : Lire l'exécution Autre : Lire l'exécution
/lost+found Autorisations : Fichier Tous Auteur : root Groupe : root Propriétaire : lecture écriture Groupe d'exécution : lecture exécution Autres : lecture exécution
/mnt Autorisations : propriétaire du fichier : racine Groupe : racine Propriétaire : lecture écriture groupe d'exécution : lecture exécution autre : lecture exécution
/sys 权限:文件所有者:root群组:root 所有者:读取 写入 执行 群组:读取 执行 其它:读取 执行
搜索公众号Linux中文社区后台回复“私房菜”,获取一份惊喜礼包。
恢复完成重启以后,所以的事情都会和你备份的时候一模一样。
1,检查系统版本,在目标机上安装一样版本的系统(最简安装即可),分区格式,类型也一样(我没试过不一样的情况,不知道能否成功)
lsb_release -a uname -a df -Th free -h
2,备份源系统
# 因为目标机和源主机硬件配置不同,所以排除dev,tmp;再适当增加你要排除的文件,如:--exclude=/root/*.bz2 # 这里再mnt下有充足空间,所以保存到mnt下。 cd / tar cvpzf /mnt/system_backup.tar.gz / --exclude=/mnt/system_backup.tar.gz \ --exclude=/proc --exclude=/lost+found --exclude=/mnt --exclude=/sys --exclude=/dev \ --exclude=/tmp --exclude=/media # 上传到目标主机 scp /mnt/system_backup.tar.gz root@192.168.0.166:/mnt
3,在目标机上用ISO、LiveCD等启动,挂载磁盘(一般会自动挂载到/media文件夹)
sudo -s cd /media/<对应的uuid号> # 备份重要配置文件/boot/gurb/gurb.cfg /etc/fstab 记录里面的UUID, # 删除重复文件 # 除了上面备份系统时排除的一些文件夹外,比如说dev mnt media sys这些文件夹,其他全部删除。 rm -rf root home usr lib lib64 etc var bin sbin opt boot run selinux vmlinuz initrd.img # 还原备份 mount /dev/vda1 /mnt/1 # 这里注意千万不要写/目录,会把现有的系统搞挂!!!应该是挂载的目录 tar xvpfz system_backup.tar.gz -C /mnt/1 cd /mnt/1 #此时你可以看到根目录的结构,但是编辑fstab文件发现是现有系统的fstab chroot ./ #执行chroot后会以./目录为根目录,这时编辑的文件就是真正的目标源文件了。
还原后修改/etc/fstab里的UUID为刚刚备份的文件里面的信息,注意分区格式也要对应。
修改/boot/gurb/gurb.cfg里的UUID为刚刚备份的文件里面的信息。修改网卡、IP配置文件,以防无法分配IP。(如果是虚拟机记得添加网卡,配置中等性能的显卡)
如果有依赖于原有平台的服务,如内建NTP,Agent等监控程序;关闭服务,关闭开机自启;
Ubuntu:在命令行输入runleve可以查看当前运行级别,一般默认是2
查看/etc/rc2.d目录中的S开头的服务都是会开机自动运行的;里面是软链接,想添加的话自己建一个链接文件就可以,S代表start,后面数字是启动顺序,删除软链接。同时删除/etc/init.d/下对应的脚本。
vim /etc/init.d/rc.local Centos:用systemctl
完成上述步骤后
exit #退出chroot cd ~ umount /mnt/1 # 一切完成后就可以重启了,不出意外就正常启动系统了(启动后原来安装系统时设置的账户等全部消失;账户和源主机一致)。 若开机Grub提示“boot error 15 :Error 15 file not found” 解决方法:请检查GRUB相关文件的内核文件所在位置。通常与/boot分区有关。 若开机Grub提示“dracut:dono't how to hand root=f078” 解决方法:将root=UUID改成root=/dev/sdaX这种格式。 若开机系统提示/usr/libexec/gconf-sanity-check-2退出状态256的解决 解决方法:chmod 777 /tmp
注意目标分区的格式最好是NTFS、FAT、EXT之类的格式,避免遇到大于4G的文件无法备份的问题。
#最好有其他分区或外接存储设备,挂载好,df -lh看挂载点。 #备份 rsync -Pa / /media/usb/backup_20170410 --exclude=/media/* --exclude=/sys/* --exclude=/proc/* --exclude=/mnt/* --exclude=/tmp/* #恢复 rsync -Pa /media/usb/backup_20170410 /
dd命令属于扇区克隆,目标分区要比备份分区要大,即使没有使用的空间也会被原样克隆下来,会比较慢。
#备份 df -h #查看系统所在分区 dd if=/dev/sda1 of=/dev/sdb3 #备份sda1到sdb3中 #恢复 dd if=/dev/sdb3 of=/dev/sda1 #恢复sdb3到sdb1中
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!