Linux备份恢复方法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4、还原时,首先分区,然后创建文件系统,进入复制后的系统,安装启动管理器,OK, 重启吧,还原好了。
二、准备工作
我们要备份,当然要先准备好一个硬盘,来存放备份的文件啦,但是这个硬盘,我们也 要给它进行分区,也要进行文件系统的创建,否则我们没法使用的。我认为,要备份 Linux 系统,最好也使用 Linux 的文件系统,我们当然不会拿这个硬盘去拷电影吧。所以,专用 硬盘专门用途,就创建 Linux 文件系统 ext3 好了,而且只创建一个分区(你不知道要备份 的文件有多大,所以最好只创建一个分区,保证不会因为分区问题备到一半没了空间)。
不要忘了 2 之前的点号,以上先拷贝/etc/fstab,里面保存了分区信息,我们后面还原的时 候要用到的,然后开始备份,并将标准错误重定向到 error.txt(2> 就是标准错误重定向), 当命令运行完成之后,可以查看这个 error.txt 来查看是否有什么重要错误 上列的指令指定了选项''z''(压缩; 备份资料经由''gzip''压缩),''c''(建立; 一个 archive 档开 始被建立),''v'' (verbose;显示出已经备份好的档案),''p'' (允许保存文件的属性;保护的资 料将会被''记忆'',可以被回复)。''f''(档案) 选项後面接的是的要写入的 archive 档(或装置) 名称,'' --directory'' 选项告知 tar 在开始备份前首先跳到以下的档案路径 ( 在本例中是 ''/mnt''目录 )。''--exclude''选项告知 tar 不要备份所指定的档案或目录。最後,''. '' 符号 告知 tar 要备份目前目录中的所有东西。
好了,开始进行分区,对某个硬盘进行分区的命令是 fdisk 硬盘,例如我们要输入的 #fdisk /dev/hdb
1、输入 n,意思就是创建一个分区 2、这时弹出来一个问题要回答,是要创建扩展分区还是主分区,我们要创建一个主分区, 这里再打入 p 3、又弹出来一个问题,就是分区号,你可以看到只能分四个主分区的,呵呵,我们分区号 就写 1 吧。 4、又有问题要回答,这里是第一个扇区和最后一个扇区的值,也就是分区的大小,我们按 默认的值,也就是说整个硬盘也就分一个区。 5、这时 Command(m for help):又出现了,按一下 p,意思是查看分区的结果,这时 会显示你分了哪个区了,这个区的分区类型是什么,分区范围是什么。 6、分区完了,显示结果也是我们所要求的,那么就要写入硬盘保存,这时候输入 w,表示 将分区的结果写回硬盘,这时分区程序显示同步完成后自动退出了。
三、备份
1、光盘启动,查看设备信息
把分好区,创建好文件系统的硬盘插入要分区的服务器的硬盘插槽,如果是 USB 接口 的话可在线插到 USB 接口中,然后用上面准备工作中所说的光盘放入光驱中,使用光盘来 启动系统。
当然这时还是要输入 fdisk -l 来查看有没有认出硬盘的。
看出和原来有什么区别没?yes,我们对备份的硬盘或者移动硬盘已经分好区了,分区是/ dev/hdb1。
我们举一个例子,如下所示,我们有两个分区,分别是根分区和 usr 分区,这些分区已 经建立了文件系统。以下是根分区的结构,根分区中有这些文件和目录,其中有一个目录 usr,它现在是空的。
/-| |-etc |-usr | |-boot
那我们如何将 usr 分区使用起来呢?简单,我们把 usr 分区挂载到根分区下的 usr 目 录里面就好了,这个操作过程叫做 mount。我们将执行以下操作: #mount -t ext3 /dev/hda5 /usr
Linux 系统的备份方法
一、基础知识
1、分区
(1)分区的意义
为什么要进行分区?是因为如果分了区 A、可以增块数据的访问速度,因为对数据进行检索时,硬盘上的磁头就可以从数据所
在分区的位置来对硬盘进行检索,更快地找到数据,例如说分了区,数据位于磁盘 的某一分区内,只检索这个分区比检索整个硬盘要快多了。 B、 可以最大限度地减少数据的损失,例如,在 Windows 下我们分了 C 盘,D 盘,如 果我们把数据放在 D 盘,那重装系统后 D 盘上的数据是不会丢失的。
(4)挂载
既然 Linux 都是以目录的方式来管理文件的,Linux 下所有文件都以目录树的形式来 存放,那么 Linux 如何以这个形式来使用分区的?这就涉及到一个挂载的概念了,Linux 是把分区挂载在“挂载点”上的,所有的文件的绝对路径都以“/”开头,也就是根目录,然后 在这个目录下挂载分区,或者建立目录或文件,其中有些目录是作为作为挂载点存在,它一 般是空的目录。
分区完成,我们可以开始创建文件系统了。输入以下命令来创建一个 ext3 文件系统。 #mke2fs -j /dev/hdb1
没有什么错误,就表明我们又分好区又创建好文件系统了。 接下来还要再准备一张 Linux 系统维护盘,http: //distrowatch. com/systemrescue,如 这一张,可以光盘启动的,可以识别出服务器的各种硬件才行,最重要的当是能识别出服务 器的硬盘啦,这个光盘版的最新版本应该没有问题。 tar 软件需要最新版本,不然在 32 位平台上无法创建大于 2G 的压缩文件,关于如何安装 最新版本的 tar,每个 Linux 版本不同的啦,如果是 redhat,那么请用 RPM 包吧。
这个例子是把文件系统类型为 ext3 的 usr 分区(记得 Linux 下分区是以文件的形式存 在的,/dev/hda5 就是我们假设的 usr 分区)挂载在/分区下的 usr 目录下。那文件树就变 成:
/-| |-etc |-usr/| |-bin | |-local | |-share | |-…… |-boot
这里就可以看到有两个硬盘,一个就是正在使用的 Linux 主机了,有 40G,插在第一个 IDE 口,所以是/dev/hda,另外一个 IDE 硬盘是没有使用的,它有 2G,上面没有任何分区, 就是我们新的硬盘,插在第二个 IDE 口,所以被认出是/dev/hdb,请注意服务器所使用的 SCSI 一盘是 sda,请自行区分。
而由于硬盘类型的不同,在 Linux 下的表示方式不同,例如:第一个 SCSI 硬盘在 Linux
下叫/dev/sda,而第一个 IDE 硬盘在 Linux 下叫/dev/hda,请注意它们之间的不
同,一般服务器使用 SCSI 硬盘,应该叫做/dev/sda,千万注意,我 以下所有的例子都是以 IDE 硬盘来演示,请自己进行修改。同时第一个
(2)分区的类型
以上例子说明,分区的概念是不分操作系统的,Linux 下肯定也有分区,所以首先我们 应该知道分区的基本概念。分区类型有主分区,扩展分区和逻辑分区,一般一个硬盘最多可 以分四个主分区,但这并不表示最多可以分四个分区,因为还有扩展分区的概念,例如 D 盘就属于扩展分区里面的逻辑分区,Linux 均支持这些分区,而作为服务器的 Linux 系统 一盘都比较单纯,一般会划分主分区来建立文件系统。
Linux 是如何管理分区的呢?Unix 或者 Linux 把设备都作为文件来看待,也就是说, 无 论 是 什 么 设 备 , 在 Linux 下 就 是 一 个 文 件 。 分 区 也 是 一 个 文 件 , /dev/sda1 / dev/sda2 就是两个分区。Linux 是使用一整个分区来作虚拟内存的,这个虚拟内存空间叫 swap。
2、将各个 Linux 分区挂载起来
我们接下来就把待备份系统的分区和新硬盘的分区挂载进系统中的/mnt 目录,要挂载 哪些分区并且将它们挂载在哪里呢,这时候就要参考上面提到的/etc/fstab 文件了,参照 它,分别运行 #mount -t ext3 /dev/hda3 /mnt #mount -t ext2 /dev/hda1 /mnt/boot (挂载待备份系统的分区) #mount -t ext3 /dev/hdb1 /mnt/mnt (挂载新硬盘的分区)
要创建 Linux 所使用的 ext3 文件系统,你可以在 windows 下使用分区魔术师。 如果不打算这样做的话,那随便使用一个 Linux 服务器也行。随便找一台不在线的服 务器,关机,把这块硬盘插进去,如果你要使用移动硬盘,有 USB 接口,那就更加简单了, 直接插到 USB 口就好了。 然后在 Linux 下运行 #fdisk -l
3、备份还原 Linux 系统的思路
我们备份和还原 Linux 系统的思路就是: 1、备份时,很简单,复制就行,备份系统里面所有分区里面的所有的文件,注意的是
备份的文件中包括系统里面对于服务器硬件的描述,对分区的描述,对系统各个文 件属性的描述。 2、还原的时候,我们使用一个新的硬盘,基于第 1 点蓝字部份的描述,我们的硬盘最 好与备份前的硬盘是同一型号和同一大小,如果不行,至少是同一类型的硬盘,也 就是说,备份前是 SCSI 硬盘,那还原时也要 SCSI 硬盘(因为备份中某个文件对硬 盘的描述是/dev/sda,我们装一个 IDE 硬盘,变成了/dev/hda,那么会对系统造 成混乱的,请参照(1)分区的类型),硬盘需要重新进行分区,分区和备份前一样, 也就是说,因为我们备份的系统里面有文件(/etc/fstab)对系统使用的分区进行 了描述,我们最好不去改变它。 3、正如你所愿,保存备份文件的硬盘大小可不限,也可以在同一个硬盘上备份不同机 器的系统。
于是我们就可以通过 cd /usr 进入/usr 目录来访问 usr 分区里面的文件了。所以这个 /usr 目录就叫作“挂载点”。
最后我们以一个例子来说明。打开/etc/fstab 文件,这个文件描述了系统中的分区和 它的挂载点。
#vi /etc/fstab 分区文件的位置
挂载点
文件系统类型
挂载选项
/dev/hda1 是 boot 分区,它挂载在/boot 之下,而/dev/hda2 分区是作为虚拟内存空间 来使用的,/dev/hda3 是根分区。
2、Linux 系统的启动顺序
在这里当不不会对 Linux 系统的启动顺序做过多的说明,因为我们只要知道和备份相 关的东西就好了。
一般来说电脑在启动过程中,先进入一个叫做启动管理器的程序,这个程序位于硬盘的 最初部份,这部份名称叫 mbr,再由启动管理器引导进入不同的操作系统。例如 Linux 操 作系统在启动时先进入 Grub 启动管理器,然后再由它进入/boot 目录或/boot 分区,取出 Linux 操作系统的内核,启动这个内核,由内核来进行后面的操作。
那和备份有什么关系呢?关系就是,我们还要安装这个启动管理器!! 可能你会想,为什么用 ghost 来备份 windows,在还原的时候不需要安装启动管理器? 答案就是,不管你在 ghost 备份或者还原 C 盘的时候,都不会去动到这个启动管理器,它 位于硬盘的起始部份,不在 C 盘分区里面。所以你还原,它还存在,就不需要安装了,而 Linux 也是一样的。那为什么我前面还是说要安装这个启动管理器?因为我假设我们还原的 时候,是以一个新的硬盘来还原的,不是重装哦,是还原哦。
SCSI 硬盘的第一个分区叫/dev/sda1,第二个叫/dev/sda2,以此类推。
(3)文件系统
那什么是文件系统?简单些说吧,文件系统就是对文件的存放方式和检索方式,每个操 作系统都运行在文件系统之上,Windows 是 fat32 和 ntfs,而 Linux 就是 ext2,ext3 等 等了,这些平时我们所说的东西就是文件系统。所以分了区之后就应该在它上面建立文件系 统啦。
完成之后运行 d源自文库 -k 来查看挂载是否成功。see?它们全都挂载成功,并且显示了它们 使用了百分之几的空间。
3、进行备份
好了,这时就可以进行备份的工作了,输入下面的命令 #cp /mnt/etc/fstab /mnt/mnt/full-backup-sas-`date '+%d-%B-%Y'`. fstab. txt #tar -zcvpf . /mnt/full-backup-sas-`date '+%d-%B-%Y'`.tar.gz \ --directory /mnt —exclude=. /mnt . 2> . /mnt/error.txt