对linux服务器进行系统级备份的问题

qihuanfengyun 2010-12-03 11:53:32
加精
我想对我的linux系统进行完全备份。我的linux系统有多个分区。
我想知道用tar备份整个系统后。
我要把这个系统备份文件还原到一块没有分区的新硬盘上,现在的问题是这块新硬盘有可能和我原来的硬盘不一样大。那我的各个分区该怎么还原。(是见几个跟以前硬盘一样结构但大小可不同的分区,还是可以连结构都不一样的分区还是其他什么方法)
上面这个问题,就相当与把我一个系统完完全全迁移到一块新硬盘上!

还有dd cpio 也可以备份
dd是二进制复制数据可以实现硬盘对拷的,如果我的目标盘比原盘不一样大,dd能用吗,会出现什么样的结果。
...全文
1934 145 打赏 收藏 转发到动态 举报
写回复
用AI写文章
145 条回复
切换为时间正序
请发表友善的回复…
发表回复
习习薰风 2011-11-26
  • 打赏
  • 举报
回复
up upupupup
freedomlove 2011-11-24
  • 打赏
  • 举报
回复
有一款叫做再生龙的软件 对Linux完整备份很好用、、
Linux-Torvalds 2010-12-27
  • 打赏
  • 举报
回复
[Quote=引用 140 楼 qihuanfengyun 的回复:]

我用再生龙迁移Fedora 7的时候,系统启动不了,内核报错 mount: could not find filesystem '/dev/root'
我用tar分区压缩并恢复系统的时候也启动不了(我重装了grub引导程序),内核报错具体的错误内容我忘记了。

哎,感觉得重新编译内核才能起来,也太费劲了吧!
[/Quote]玩Linux就是这样子,总是在折腾。
Linux-Torvalds 2010-12-27
  • 打赏
  • 举报
回复
数据这么大,还是建议用dd,另外dd也可以支持网络传输,通过ssh
qihuanfengyun 2010-12-15
  • 打赏
  • 举报
回复
我用再生龙迁移Fedora 7的时候,系统启动不了,内核报错 mount: could not find filesystem '/dev/root'
我用tar分区压缩并恢复系统的时候也启动不了(我重装了grub引导程序),内核报错具体的错误内容我忘记了。

哎,感觉得重新编译内核才能起来,也太费劲了吧!
落魄江湖行 2010-12-09
  • 打赏
  • 举报
回复
谢谢,努力学习
ruberzhu 2010-12-09
  • 打赏
  • 举报
回复
对系统进行引导,使其进入再生龙(将再生龙安装在linux 系统下)


http://user.qzone.qq.com/594189019/infocenter

本文件說明如何將Clonezilla live放到一個已經有其他作業系統存在的硬碟中。
這裡我們使用grub這個開機管理程式當範例。你必須把Clonezilla live的所有檔案放在grub支援的檔案系統分割區中,例如FAT, ext2/3, reiserfs等。//注意// grub不支援NTFS的檔案系統,所以你不可以把Clonezilla live的檔案放在NTFS分割區中。如果你沒有另外的分割區可以放置Clonezilla live的檔案,你可以考慮用類似gparted這樣的程式來將你的分割區縮小然後劃分出另外一個分割區。本例中我們假設你已經有一個FAT的分割區/dev/hda4,準備要放置Cloenzilla live。以下說明如何做:

1. 用硬碟中的作業系統來開機,例如用GNU/Linux來開機。
2. 將/dev/hda4掛載成/mnt,你可以用這個指令做到: mount /dev/hda4 /mnt
3. 下載Clonezilla live的zip檔,將所有檔案解開到/mnt,確認檔案是放在目錄/mnt/下,並且維持原來的目錄架構。例如COPYING是在/mnt/目錄下,不在/mnt/下的任何一個子目錄中。你可以用這個指令做到: "unzip clonezilla-live-*.zip -d /mnt" (將clonezilla-live-*.zip取代成你下載的檔案名稱).
4. 將/mnt/下的目錄"live"改成其他目錄名稱,例如"live-hd"。你可以用這個指令做到: "cd /mnt; mv live live-hd"
5. 若是你的開機管理程式是grub版本1.x的話,編輯你的grub設定檔/boot/grub/menu.lst,增加以下的選單:

================================================
title Clonezilla live on harddrive
root (hd0,3)
kernel /live-hd/vmlinuz1 boot=live live-config noswap nolocales edd=on nomodeset ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_keymap="" ocs_live_batch="no" ocs_lang="" vga=788 ip=frommedia nosplash live-media-path=/live-hd bootfrom=/dev/hda4 toram=filesystem.squashfs
initrd /live-hd/initrd1.img
boot

================================================
6. 如果你的開機管理程式是grub版本2.x (grub-pc)的話,以Debian Squeeze or Ubuntu 9.10為例,你可以修改 /etc/grub.d/40_custom,加上類似這樣的部份:

================================================
menuentry "Clonezilla" {
set root=(hd0,4)
linux /live-hd/vmlinuz1 boot=live live-config noswap nolocales edd=on nomodeset ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_keymap="" ocs_live_batch="no" ocs_lang="" vga=788 ip=frommedia nosplash live-media-path=/live-hd bootfrom=/dev/hda4 toram=filesystem.squashfs
initrd /live-hd/initrd1.img
}

================================================
接著重跑update-grub2。(感謝Louie Chen提供此說明)

此外,也可以直接在grub2中使用單一個clonezilla live的iso檔 (感謝來自grml的補丁檔)。例如,將下載下來的clonezilla-live-1.2.6-24.iso放在目錄/home/isos/中,然後編輯grub2 custom的檔案 /etc/grub.d/40_custom 如下:

================================================
menuentry "Clonezilla live" {
set isofile="/home/isos/clonezilla-live-1.2.6-24.iso"
loopback loop $isofile
linux (loop)/live/vmlinuz1 boot=live live-config noswap nolocales edd=on nomodeset ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_keymap="" ocs_live_batch="no" ocs_lang="" vga=788 ip=frommedia nosplash toram=filesystem.squashfs findiso=$isofile
initrd (loop)/live/initrd1.img
}

================================================
然後記得再次執行update-grub2。

//注意//:

1. 上述的grub選單中我們另外放了3個參數,(1) live-media-path=/live-hd 表示我們將檔案放在目錄/live-hd中,而不是預設的/live目錄中。 (2) bootfrom=/dev/hda4表示我們強迫開機要從第一個硬碟的第四個分割區(/dev/hda4)中的檔案來開機,這樣可以避免萬一你有另外一個Clonezilla live放在光碟機中而被誤用。(3)參數"toram=filesystem.squashfs"表示所有Clonezilla live的程式會被複製到記憶體中,不會將/dev/hda4一直掛載著。所以後續你在使用這個Clonezilla live的時候,可以將/dev/hda4掛載成Clonezilla的印象檔目錄。
2. 記得配合你下載下來的Clonezilla live zip檔案中的參數來修改,相關參數可以在/mnt/syslinux/syslinux.cfg中查到。你使用的Clonezilla live所用的參數,有可能和上述的參數不同,例如vmlinuz路徑,"username", "hostname"等等都可能不同。
3. 如果你沒有將"live"的目錄名稱修改成"live-hd",你有可能會遇到使用光碟版或者是USB隨身碟版的Clonezilla live開機時,會和這個硬碟版中的版本相混淆的問題。相關的討論可以參考:
* https://sourceforge.net/tracker2/?func=detail&atid=671650&aid=2202156&group_id=115473
* http://drbl.sourceforge.net/faq/fine-print.php?path=./2_System/34_2_or_more_filesystem_squashfs.faq#34_2_or_more_filesystem_squashfs.faq

this page from :

http://drbl.nchc.org.tw/clonezilla/clonezilla-live/livehd.php
CSMC_stephen 2010-12-08
  • 打赏
  • 举报
回复
学习了。。。
qihuanfengyun 2010-12-08
  • 打赏
  • 举报
回复
veritas 应该是企业级的备份方案吧!

系统迁移呢,比如把一个系统迁移到另一块硬盘上(这个系统是包含很多分区的)tar能做到吗?
hehaidizhi 2010-12-07
  • 打赏
  • 举报
回复
不错,不错,好东西啊,学无止境
xiaoniuniu5 2010-12-07
  • 打赏
  • 举报
回复
来学习的 路过下
q13198208 2010-12-07
  • 打赏
  • 举报
回复
新手 来学习下
lqs82791847 2010-12-07
  • 打赏
  • 举报
回复
怎么赚分啊!
wandyen 2010-12-07
  • 打赏
  • 举报
回复
备份根目录应该可以
梧叶未秋声 2010-12-07
  • 打赏
  • 举报
回复
值得学习
cchaha 2010-12-07
  • 打赏
  • 举报
回复
MARK
zhangjaven 2010-12-07
  • 打赏
  • 举报
回复
很好的注意,学习啦
「已注销」 2010-12-07
  • 打赏
  • 举报
回复
学习了 各种命令看的我头大
wgq1211 2010-12-06
  • 打赏
  • 举报
回复
楼主,建议你用raync啊
benben288 2010-12-06
  • 打赏
  • 举报
回复
这个问题很复杂啊。
加载更多回复(54)

19,612

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧