咨询电话:023-88959644    24小时服务热线:400-023-8809
NEWS CENTER ·
新闻动态
关注中技互联 关注前沿

Linux服务器上如何备份和恢复

发表日期:2014-10-20    文章编辑:    浏览次数:89    标签:

 进行通常的备份应当是担任任的体系管理者的最高优先思考。尽管Linux 是一个高度牢靠的工作体系, 体系失效依然能够发作。能够由于硬体毛病,电源中止,或其他不行预料的疑问。



  更多见的这些疑问是来自人为的过错,不妥的变动,乃至由于删去重要的档案。假如您担任管理体系上的用户, 一定能够常被需求重建由于不小心误删的档案。



  假如您进行通常备份,以每日为根底较好 (最少对更动频频的运用者档案),您将会有助於减少档案的损失,而且添加恢复程度。



  最安全的备份办法是将他们纪录於不一样的媒体中,例如磁带,抽取式硬碟,可写式 cd .等。 然後将您的备份和您的 Linux体系分开寄存。有时候这能够并不实践 -- 或许在您能够寄存备份磁带的当地没有防火室 ! 或是在榜首优先的地址没有办法存取这样的外部备份体系。尽管如此,依然能够进行备份,仅仅会遭到一点约束。



  在我效劳的单位,我在几个 Linux 体系上进行备份。按状况的不一样,有些备份寄存在磁带,其他则写入位於网路上的不一样伺服器中,但是有一些依然运用 cron 主动工作 (能够由于伺服器位在远端,在那里每天进行磁带备份是不切实践或不能够的),简单的放在别离不一样磁碟上的切割区中 (例如,放在 ``/archive/'' 档案体系) 。



  在家里,我没有外部的备份体系,我也没有许多的磁碟空间去寄存备份印象档。因而,我改为只备份在``/home/'' 的我的运用者档案,一样的还有一些在 ``/etc/''的自订设定档,将备份寄存在别离不一样的磁碟切割区中。



  伺服器备份程序



  进行Linux备份有几种不一样的办法,其间包含一切 Linux 发行版别中都有的指令列东西,例如 ``dd'', ``dump'', ``cpio''以及 ``tar''。其他还有文字型态东西,例如 ``Amanda'' 及 ``Taper'',这些是被设计来在备份及回存进程中参加更友善的运用者介面。当然也有图形介面的东西,像是``KDat''。最後,还有商业化的备份东西,像是 ``BRU'' 和 ``PerfectBackup+''。这些备份计划中任何之一都足以供给您名贵材料的维护。



  这里有一些包含哪里能够获得东西的列表,能够在“Linux Applications and Utilities Page”找到,位於http://www.xnet.com/~blatura/linapp2.html#back. 当决议好备份办法,您能够要思考下列几点要素:



  可携性 - 备份的可携性 (亦即. 从一个 Linux 发行版别或运用 Unix备份然後回存到别的一个; 例如从Solaris 到 Red Hat Linux) 对您而言是不是重要 ? 假如是,能够想要挑选一个指令列的东西 (亦即. ``dd'',``dump'', ``cpio'', 或 ``tar''),由于您能够恰当地断定该东西能够在另一个 *nix 体系上找到。



  无人或主动备份 - 定期主动进行备份而不需人力介入之才能,对您而言是不是重要 ? 假如是,您能够需求能援助该计划的东西及备份媒体。



  运用者友善 - 运用者友善的介面对您而言是不是重要 ? 假如是,您能够想要挑选一个文字或图形介面的东西。商业的运用程式能够供给最简洁的介面及技术援助。



  远端备份 - 从远端机器进行备份及回存的才能对您而言是不是重要 ? 假如是,您能够想要挑选指令列或文字形式的东西而不是图形介面(除非您有恰当快的网路连接及履行远端 X sessions 的才能)。



  网路备份 - 从网路主机进行备份及回存对您而言是不是重要 ? 假如是,您能够要用一些援助从网路存取备份设备的指令列东西(像是 ``tar''),或是专用东西程式例如 ``Amanda'' 或是一些商业东西程式。



  媒体型态 - 备份能够贮存在许多不一样的媒体,像是磁带,外接式硬碟,ZIP 磁碟,或可读写 CD。思考价格及牢靠性,贮存容量,及传送速度。



  正告: 当备份您的体系时, 不要包含 ``/proc'' 伪档案体系 ! /proc 中的档案并非真的档案,而仅是看起来像档案的描绘,而且指向中心材料结构的连接。备份 ``/proc/kcore'' ,这现实上这是一个假装档案,包含回忆体中一切的材料,会糟蹋许多的磁带 ! 您能够也需求防止备份 ``/mnt'' 档案体系,除非您有从 CD-ROM,软碟机,网路共享档案,或其他设备设备上备份的特别需求。



  明显地,备份及回存的进程会因您所挑选的备份办法而有所不一样。但是,在这一节,我将会评论我最常运用的两种东西备份的办法 : ``tar'' (其称号源於“Tape ARchiver”),这是一个指令列式的东西,在 *nix 体系中具有很高的可携性 ; 以及 ``KDat'',一个来自於 KDE 套件的图形介面磁带备份东西。



  最後,我应当弥补一点,依您所挑选的备份办法,即便该东西没有树立於主动备份时刻表上的才能,您依然能够运用 cron 功能进行该主动备份。 参阅运用Cron 和 Crontab 档进行主动工作 有关运用 cron 的细节以及怎么树立 crontab 行程表档案。



  运用 ``tar''备份:假如您挑选 ``tar'' 作为您的备份计划,您能够要花点时刻去了解各种的指令选项 ; 键入 “man tar” 有更深化的明细。您还需求了解怎么存取恰当的备份媒体 ; 尽管在 Unix 的国际中对待一切的设备就像处置档案一样,假如您写入到一个字元设备像是磁带,“档案”的称号即是设备自身的称号 (亦即. ``/dev/nst0'' 是一个SCSI介面的磁带机)。



  下面的指令会将您的悉数 Linux 体系备份於 ``/archive/'' 档案体系,除了 ``/proc/'' 假装档案体系,``/mnt/'', ``/archive/'' 档案体系 (没必要备份咱们的备份档 !),还有 Squid 很大的快取材料档 (是的,依我之见,糟蹋备份媒体而且不需求去备份)以外的任何已挂载的档案体系 :



  tar -zcvpf /archive/full-backup-`date '+%d-%B-%Y'`.tar.gz



  --directory / --exclude=mnt --exclude=proc --exclude=var/spool/squid .



  不要被上面的指令吓到 ! 当咱们将其分为两部分,您将会发现这个强力东西之美。



  上列的指令指定了选项 ``z'' (紧缩; 备份材料经由 ``gzip''紧缩), ``c'' (树立; 一个 archive 档开端被树立),``v'' (verbose; 显现出现已备份好的档案), ``p'' (答应保存;维护的材料将会被 “回忆” ,能够被回复)。``f'' (档案) 选项後面接的是的要写入的 archive 档 (或设备)称号,留意包含材料的档名是怎么得到的,只要用两个後引号将``date'' 指令圈起来。 通常的命名常规是在未紧缩过的档案後面加上 `` .tar'' ,紧缩的档案加上 ``tar.gz'' ``--directory'' 选项奉告 tar 在开端备份前首要跳到以下的档案途径 ( 在本例中是``/''目录 )。 ``--exclude'' 选项奉告 tar 不要备份所指定的档案或目录。最後, ``.'' 符号奉告 tar 要备份当前目录中的一切东西。



  留意: 有一点很重要有必要了解的即是 tar 的选项是巨细写不一样的 ! 此外,大多数的选项能够用助记符号加以简化(亦即. ``f''), 或许运用较易回忆的选项全名 (亦即. ``file'')。 助记符号前用一个``-'' 字元作为字首作为辨识,在全名的前面有两个这种符号的字首。参阅 “man”页以得到更多有关运用 tar 的资讯。



  另一个比如,这一次只要写入指定的档案体系 (和上一个除了破例悉数写入的比如相反) 到一台 SCSI 的磁带机 :tar -cvpf /dev/nst0 --label="Backup set created on `date '+%d-%B-%Y'`." --directory / --exclude=var/spool/ etc home usr/local var/spool



  在上面一行的选项,留意没有用到 ``z'' (紧缩) 选项。我强烈主张对立写入紧缩材料到磁带上,由于假如磁带上材料有一部份损坏,您会失掉悉数备份 ! 但是,未紧缩的贮存的 archive 档具有很高的可恢复性,即便磁带上的档案有一部份损毁。



  由于磁带机是一个字元设备,没有办法指定一个的确的档名。因而,指定给 tar 的档名可简化为设备称号,``/dev/nst0'',是在 SCSI 排汇上的榜首个磁带设备。



  留意: ``/dev/nst0'' 设备在备份做好後不会回带 ; 因而有能够将好几组备份写到同一磁带。(您也能够挑选``/dev/st0''这个设备,在这种景象磁带在备份完後会主动回带)



  已然咱们无法对一套备份指定档名, ``--label'' 选项能够来写进档案自身一些有关这一套备份的资讯。



  最後,只要包含在 ``/etc/'', ``/home/'', ``/usr/local'', 及 ``/var/spool/'' (除了 Squid 的 快取材料档)会写进磁带。



  当运用磁带时,能够运用下列指令回带,以及退出磁带:



  mt -f /dev/nst0 rewind



  mt -f /dev/nst0 offline



  小窍门: 您将会发现到当 archive 档树立时,前面的``/'' (斜线) 符号会被 tar 去掉。这是 tar 的预设操作形式, 这是成心用来维护您防止覆写这些重要档案的原先版别,以防万一您不慎在重建进程中覆写了不准确的档案。



  假如您真的不喜欢这个特性 (记住,这是特性!) 您能够指定 tar ``--absolute-paths'' 选项,这样会保存前面的斜线。但是,我不主张这样做,由于很风险 !



  运用``KDat''备份: 假如您运用 KDE 桌面环境,我信任您会发现``KDat'' 公用程式不光强大而且对运用者很友善。此外,另一个好处是KDat 运用``tar'' 作为其备份 engine。因而,用 KDat 写入的备份组不光能够用 KDat 读取,也能够用 tar ! 这使得 KDat 成为在运用者友善及备份可携性中极好的挑选。



  小窍门: 即便您决议不运用也不设备完好的 KDE 套件,假如您设备了 Qt 函式馆就依然能够运用KDE。



  当您榜首次履行 KDat,您需求树立一个备份 profile。这个 profile 告诉 KDat 您想要备份体系中的哪些档案。假如您要的话,您能够树立好几个备份 profile,依照您的需求 (例如,您能够树立一个 profile 叫做“Full Backup”作体系的彻底备份,或是 “Quick Backup”只备份运用者的档案)。



  要树立备份 profile,能够挑选从选单栏中“File”选项挑选“Create Backup Profile” (或在“Backup Profiles”文件夹上按滑鼠右键,然後挑选 “Create Backup Profile”)。在右手边的是 KDat 视窗,您能够改动各种设定,像是profile 称号,archive 称号, tar 选项, 以及其他的。单击 “Help” 选单有关於这些设定的用处阐明。



  要指定哪些档案应当包含在您的 backup profile, 在 ``/'' 目录文件夹旁的核对图示上敲一下左键。这会断定一切的档案及这个目录下一切东西都会备份。然後,在文件夹旁的小 ``+''符号上敲一下左键,材料夹会打开,显现档案及以下的目录。您能够扫除掉所不想备份的档案;只要在您想扫除的每一个档案或目录旁的核对符号上敲一下左键。例如,一个彻底备份应当包含已符号的一切档案及目录,要扫除 ``/proc'' (一个假装档案体系,包含您当前运作体系的材料),``/mnt'' ( 位於CD-ROM下面的目录,软碟机,网路共享常被挂载在此),而且假如您是 Squid 运用者,``/var/spool/squid'' (Squid的快取材料档)。一旦您选好了适宜的档案,在您树立好的备份 profile 上按一下左键,然後在“Files >>” 钮上按一下左键将选好的档案移进您的备份 profile。



  留意: 假如您的伺服器材料到无穷到无法实践寄存到磁带中,您需求树立别离的备份 profiles,备份组中每部份一个。



  实践进行备份时,将磁带放入,从 “File” 选单中挑选 “Mount Tape” (或是用滑鼠敲一下看起来像磁带的图示)。



  这样会 “挂载” 磁带 (现实上,由于磁带机是字元设备,现实上无法挂载它 -- 本来 KDat 仅仅先回带,试着去读取最初资讯,假如成功,找寻磁带机上契合的索引。不然,KDat 会提醒您格局化磁带。



  (留意: 假如 KDat 继续反映没有磁带在磁带机但现实上有,您应当断定在参数中指定的磁带机称号准确,在选单栏顶用滑鼠敲一下 “Edit” 选项然後挑选“User Preferences”.)



  一旦 KDat 现已挂载好磁带,在您开端备份前有必要挑选备份的 profile。当计划开端备份,只要在您要的备份 profile上敲一下右键,然後在“Backup”上敲一下左键。KDat 会先显现一个对话框告诉您有关您所挑选备份 profile 的细节 ;在“Ok” 上敲一下左键就会开端备份。



  当备份开端进行,KDat 会显现一个有各种状况资讯的对话框 (通过时刻,备份巨细,备份比率,估计剩馀时刻,档案数量及一共写入 bytes 数),以及现已备份档案的列表。一个包含好几 gigabyte 材料的彻底备份能够需求花上好几个小时。必要的话,在备份进程中任何时候您能够在“Abort” 钮上敲一下左键抛弃备份。



  一旦备份完结,您能够在选单栏中挑选 “Edit”,再选 “Unmount Tape”以解挂载磁带,或在磁带图示上敲一下,这样磁带会回带然後跳出。



  无疑地, 比例行备份更重要的事即是当疑问发作後能让重要档案正常回复 !



  明显地,就像伺服器备份程序所评论的,进行回存的程序依您所挑选的备份计划而有所不一样。在这一节,我将会评论由 ``tar'' 及 ''KDat''所备份的回存办法。



  运用 ``tar'' 回存:



  下面的指令会从 ``full-backup-09-October-1999.tar.gz'' 回存一切的档案,这是咱们 Linux 体系的备份例 (依照在 运用``tar'' 备份 一节中的指令例所做的):tar -zxvpf /archive/full-backup-09-October-1999.tar.gz



  上面的指令会从 archive 档中取出一切的档案,保存原档案的具有者及权限。 ``x'' 选项用来作解出(其他的选项在 运用``tar'' 备份 这节中有说到:)



  正告: 从一个 tar 的 archive档中解出档案能够是一件风险的事,因而有必要慎重进行。或许这些档案作时并未包含准备好的途径 (有一些被误导或未被奉告的开展者散他们的档案时能够会这样),表明档案会被解到当前的目录下。或许档案紧缩时有加上 ``/'' 斜线 (当备份档树立时指定 ``--absolute-paths'' 选项),表明档案会被回存到肯定方位 (即便您不情愿)。或许或许档案紧缩时未加上 ``/'' 斜线, 表明档案会被解到当前的目录下 (即便您不情愿这样)。当然,全看备份是怎么树立的。由于这个原因,我强烈主张先在 ``tar''指令加上``t'' (type) 选项加以测验,然後当您彻底断定指令会依您预期进行後将 ``t'' 换成``x'' (extract) 。



  假如您不需求回存 archive 中一切的档案,您能够指定一个或更多的档案,依照下面例 :



  tar -zxvpf /archive/full-backup-09-October-1999.tar.gz etc/profile usr/local/bin/tolower



  上面的指令会从例的档案回存 ``etc/profile'' 及 ``usr/local/bin/tolower''



  假如您只试着从您的 archive 档中回存一个或几个档案,除非您的确地指定和 archive 档中所寄存一样的档名及途径,不然不会成功。 下面的例会帮您解决疑问:



  tar -ztvpf /archive/full-backup-09-October-1999.tar.gz | grep -i profile



  在上面的例,一切在 archive 档中的档案都以档名列出。一切的成果都会输出到 ``grep'' 指令 (运用 grep的``i'' 选项可疏忽稠浊的状况),显现``profile''中任何档案的目录及档名。当您的确决议要回存的档名时,您能够用通常的 tar 指令表达指定所要回存的档案。



  就像在 伺服器备份程序 所说到的,当树立一个 archive 档时, tar 会从档案途径去掉前面的 ``/'' (斜线)符号。



  这表明档案回存时能够不会在和备份时一样的方位完毕。因而,不要改动到 ``/'' root 目录或许``--directory /'' 选项。



  留意: 一个更安全的办法是在不一样的目录回存档案 (例如您的 home 目录),然後比对,搬移及更新档案到之後的初始方位。



  运用``KDat''回存:



  要从 KDat 树立的备份组回存一个或更多档案,将备份磁带放进磁带机,从“File”选单项目挑选“Mount Tape”(或在磁带的图示上按下滑鼠左键) KDat 会试着从磁带读入最初资讯,假如成功的话,会试着找寻契合最初资讯的磁带索引。这个索引存在硬碟,是由 KDat 为所格局化的每一个备份磁带所做的仅有档案,每一次进行备份就会更新。假如契合的档案索引丢失了(或许您回存的备份组是由另一部机器所备份的,或是由于硬碟损毁而删去了索引档), KDat 会告诉您这件事,而且假如能够读取磁带重建索引的话会问询您。由於您有必要在您回存档案前先重建索引,按左键挑选“Yes”是有意义的。



  (留意: 一但磁带重新索引过,称号会成为“Reindexed Tape”。 您能够将它重新命名成原来的姿态)



  当磁带索引成功地读入,能够用来挑选您想从备份组回存的档案或目录,和您树立备份档时所用的办法非常一样(检查 伺服器备份程序 有关挑选档案进程的具体阐明)。



  当您挑选好适宜的档案,您能够从目录页中的“File”选项挑选“Restore...”开端回存程序 (或在磁带回存的图示上按滑鼠左键)。KDat会显现一个对话框,让您确认要回存的档案。此外,您有指定回存的档案所到目录的选项。这让您回存重要档案到您的 home 目录下,然後能够和预期方位中的档案做对比,移动或是更新。这实践上是最安全的回存档案办法。



  要开端回复程序,在“Okay”钮上按一下,KDat 会扫描磁带而且开端回存选定好的档案。



  有时,您会发现不运用 KDat 回存一个用 KDat 备份过的档案是有必要或有协助的。或许您想要在不供给图形介面的体系上回存这些档案,或是您的网路速度很慢而透过它履行 KDat 是不切实践。幸运地, KDat 运用 ``tar'' 东西写入备份材料, 在任何 *nix 体系都有的指令列东西。



  假如您计划用 tar 回存用 KDat 树立的备份组,就像您回存用 tar 自身备份的一般备份组所做的选项一样。记住,材料组并未以紧缩格局贮存。



  留意: 当您试着运用 tar 存取由 KDat 所做的备份组时,䖰。假如縀定会得到过错消息。这是由于当磁带榜首次格局化时 KDat 参加了最初及其他资讯。重 tar 指令两三次就会跳到档案真实最初的当地。

如没特殊注明,文章均为中技互联原创,转载请注明来自www.zjcoo.com
相关新闻

CopyrightZJCOO technology Co., LTD. All Rights Reserved.    

渝ICP 备11003429号

  • qq客服
  • 公众号
  • 手机版
  • 新浪微博