首页 > 技术文章 > Netbackup常用命令--bprestore

yihr 2019-07-18 18:07 原文

bprestore

bprestore – 从 NetBackup 服务器还原文件
大纲
bprestore [-A | -B | -rb] [-K] [-l | -H | -y] [-r] [-T] [-L progress_log
[-en]] [-R rename_file] [-C client] [-D client] [-S master_server]
[-disk_media_server media_server][-t policy_type] [-p policy] [-k
"keyword_phrase"] [-cm] [-drs] [-md] [-dd] [-td temp_dir] [-s date]
[-e date] [-F file_options] [-spsredir_server hostname] [-spscurver]
[-spsignorelock] [-spspreserveiis] [-spsrestoresecurity] [-spsverkeep
[0 | 1 | 2]] [-vhd_fn VHD_filename] [-vhd_type 0 | 1] [-vhd_dsize
VHD_disk_size] [-vhd_dof 0 | 1] -BR portal_name | teamsite_name |
Exchange_2010_redirected_path] [-copy copy_number] [-granular_restore]
[-priority number] [-w [hh:mm:ss]] [-ev_migrated_data] -f listfile
| filenames [-print_jobid] [-optimized_backup 0 | 1]

在 UNIX 系统上,此命令的目录路径为 /usr/openv/netbackup/bin/
在 Windows 系统中,此命令的目录路径为 install_path\NetBackup\bin\

描述

用户可通过 bprestore 还原一个或多个已备份或已存档的文件。您也可以命名要还
原的目录。如果包括一个目录名,bprestore 将还原此目录中的所有文件和子目
录。可以使用以下方法排除在以前的还原操作中包括的文件或目录路径:在文件或
目录路径的前面放置一个惊叹号 (!)(不适用于 NDMP 还原)。例如,如果您希望
在还原时排除目录的某一部分,这种排除功能将非常有用。

注意:如果未指定策略或日期范围,bprestore 将从最近的完全备份映像开始。包
括所有后续的增量式和差异备份映像。将从这些映像中还原文件的最新副本。
默认情况下,成功提交 bprestore 后,将返回到系统提示符状态。该命令在后台工
作,它并不直接返回完成状态。可以通过使用 -w 选项来更改此行为,使 bprestore
在前台工作,并在指定的时间段之后返回完成状态。
bprestore 命令使用指定时间段内的最新备份来还原文件,但实际映像还原除外。
(请参见 -T 选项的说明。)

bprestore除非包括 -K 选项,否则 bprestore 会重写本地客户端磁盘上已存在的任何同名文
件。您还可以还原在另一个客户端(-C 选项)上备份或存档的文件。要从其他客户
端还原,必须先接受 NetBackup 管理员的验证。

常用选项

-A | -B | -rb
指定数据将从存档 (-A)、备份 (-B) 还是快照回滚 (-rb) 还原。默认值为 -B。
注意:回滚 (-rb) 操作始终从副本 1 进行。如果副本 1 过期,则回滚失败。

bprestore-C client
指定客户端名称,以查找用于从中还原文件的备份或存档。该名称必须与它在
NetBackup 目录库中显示的名称相同。其默认值是当前客户端的名称。
注意:默认情况下,目标客户端并不是源客户端。请参见 -D client 选项的说明。

-copy copy_number
指定要用于还原的副本号。用户可以从主副本以外的其他副本进行还原。例
如,-copy 3 将还原文件或文件列表的副本 3。
另外,可以在全局级别(适用于所有还原操作)指定要从其还原的副本。将副
本编号放置在文件 ALT_RESTORE_COPY_NUMBER 中。

-D client
指定目标客户端。其默认值是当前客户端的名称。
在 UNIX 系统上,主服务器 root 用户可以使用此选项执行以下操作:将已还原
的文件定向至 -C 选项指定的客户端之外的其他计算机。
在 Windows 系统上,主服务器管理员可以使用此选项执行以下操作:将已还
原的文件定向至 -C 选项指定的客户端之外的其他计算机。

-f listfile
指定一个文件 (listfile),其中包含要还原的文件列表,且可以不用 filenames 选
项来使用该文件。在 listfile 中列出所有文件路径,每个路径必须单独占一行。
文件列表所要求的格式取决于文件名称中是否包含空格或换行符。
要还原名称中不包含空格或换行符的文件,请使用以下格式:
filepath
其中,filepath 是要还原的文件的路径。例如:
注意:对于 Windows 系统,驱动器盘符使用大写字母。例如,C:\NetBackup\Log1。
UNIX 系统:
/home
Windows 系统:
C:\programs
要还原名称中包含空格或换行符的文件,请使用以下格式之一:
filepathlen filepath
filepathlen filepath start_date_time end_date_time
filepathlen filepath -s datetime -e datetime
filepath 是要还原的文件的路径。
filepathlen 是文件路径中的总字符数。
要排除在以前的还原操作中包括的文件或目录路径,请在该文件或目录路径前
面放置一个惊叹号 (!)。NDMP 和 FlashBackup 还原不支持排除选项。
以下是 filepathlen filepath 的一个使用示例:
UNIX 系统:
5 /home
4 /etc
4 /var
19 /home/abc/test file
12 !/etc/passwd
Windows 系统:
11 C:\programs
8 C:\winnt
22 C:\documents\old memos
17 !C:\programs\test

-f filenames
命名一个或多个要还原的文件,可用来代替 -f 选项。
必须将指定的任何文件列在命令行结尾处,位于所有其他选项之后。必须使用绝对文件路径。
要排除在以前的还原操作中包括的文件或目录路径,请在该文件或目录路径前
面放置一个惊叹号 (!)。NDMP 和 FlashBackup 还原不支持排除选项。
对于 Windows 系统,驱动器盘符使用大写字母。例如,C:\NetBackup\log1。

-F file_options
允许恢复 NetBackup 文件。

-granular_restore
启用 Active Directory 中对象和属性的还原。如果未指定此选项,还原仍会运
行,但备份无法生成粒度还原。

-k "keyword_phrase"
指定 NetBackup 在搜索用来还原文件的备份或存档时使用的关键字短语。该短
语必须与此前和备份或存档相关联的关键字短语匹配,该备份或存档是使用
bpbackup 或 bparchive 命令的 -k 选项创建的。
请使用该选项代替其他还原选项,或者将该选项与其他还原选项结合使用,以
便更加轻松地还原备份和存档。以下元字符用于简化与短语中的关键字或部分
关键字匹配的任务:

  • 匹配任何字符串。
    ? 字符匹配任何单个字符。
    [ ] 匹配中括号内指定的字符序列中的一个字符。
    [ - ] 匹配由 - 分隔的字符范围中的一个字符。
    关键字短语的长度最多可达 128 个字符。允许使用所有可打印字符,包括空格
    ( ) 和句号 (.)。
    短语必须用双引号 ("...") 或单引号 ('...') 括起来。
    默认的关键字短语为空字符串。

-L progress_log [-en]
指定要在其中写入进度信息的现有文件的名称。例如:
UNIX 系统:netbackup/logs/user_ops/proglog
Windows 系统:NetBackup\logs\user_ops\proglog
默认情况下,不使用进度日志。
使用 -en 选项可生成英文的日志条目。

-M
启用要监视的客户端作业。

-p policy
指定为其执行了备份或存档的策略。

-print_jobid
向 stdout 显示 bprestore 命令所启动的还原作业的作业 ID。

-r
指定此选项将还原原始分区(UNIX 系统)或磁盘映像(Windows 系统),而
不是文件系统。

-R rename_file
为备用路径还原操作指定更改后的文件名。
例如:bprestore -R /C/renamefile /C/origfile
其中 /C/rename_file 是更改名称后的文件,/C/origfile 是要重命名的文件。
输入的路径名必须为绝对路径。
重命名文件中的条目使用以下形式:
change backup_filepath to restore_filepath
文件路径必须以 /(斜杠)开头。
在 UNIX 系统上:例如,下面的条目将 /usr/fred 重命名为 /usr/fred2:
change /usr/fred to /usr/fred2
在 Windows 系统上:例如,下面的条目将 C:\users\fred 重命名为
C:\users\fred2:
change /C/users/fred to /C/users/fred2
驱动器盘符全部使用大写字母,并用回车键结束该条目。
还原到 Windows 客户端时,还可以使用以下方法来指定重命名文件中的条目。
(请勿将此方法用于其他客户端。)
rename bulength backup_filepath reslength
restore_filepath
其中:
bulength 是备份路径中 ASCII 字符的数量。
reslength 是还原路径中 ASCII 字符的数量。
第一个匹配的 backup_filepath 将替换为 restore_filepath 字符串。
例如,下面的条目将 C:\fred.txt 重命名为 C:\fred2.txt:
rename 11 /C/fred.txt 12 /C/fred2.txt(一定要用回车键结束该条目。)
仅允许对此选项使用默认路径。Veritas 建议使用默认路径。如果无法在您的设
置中使用 NetBackup 默认路径,应向 NetBackup 配置中添加自定义路径。

-s date, -e date
指定列表的开始和结束日期范围。bprestore 命令仅从在指定的开始和结束日
期范围内创建的备份或存档还原文件。

-s 为还原时段指定开始日期和时间。bprestore 仅从在指定的日期和时间之后
(包括此时间)创建的备份或存档还原文件。
注意:要还原多数据流映像,请先运行 bplist -l 获取在上次包含文件的备份
过程中所需文件的修改时间。在运行 bprestore 命令时,请将该日期指定为-s。
如果没有为已使用多数据流备份的文件指定开始日期或结束日期,可能会生成错误。
默认情况下返回最新的映像。对于备份,此映像为最新的完全备份(如果存在
完全备份)。如果不存在完全备份,则还原最新的增量式备份或用户控制的备份。

-e 为还原时段指定结束日期和时间。bprestore 仅从在指定的日期和时间(或
之前)创建的备份或存档还原文件。所用的格式与开始日期和时间的格式相同。
除非针对实际映像还原,否则结束备份的日期和时间不必十分精确(请参见 -T
选项的说明)。bprestore 将还原具有指定备份日期和时间的文件。如果没有
指定,它将还原结束日期和时间之前的文件(最新备份)。默认值是当前的日
期和时间。

-S master_server
指定 NetBackup 服务器的名称。
在 UNIX 系统上,默认为 /usr/openv/netbackup/bp.conf 文件中的第一个服
务器。
在 Windows 系统上,默认为在“指定 NetBackup 计算机”对话框的“服务
器”选项卡上被指定为当前服务器的服务器。若要显示此对话框,请在客户端
上启动“备份、存档和还原”用户界面。然后在“文件”菜单上单击“指定NetBackup 计算机”。

-t policy_type
指定与策略类型相对应的以下编号之一。Windows 客户端的默认编号是 13,
所有其他客户端的默认编号都是 0。
0 = Standard
8 = MS-SharePoint
13 = MS-Windows
16 = MS-Exchange-Server
19 = NDMP
20 = FlashBackup
21 = Split-Mirror
25 = Lotus-Notes
29 = FlashBackup-Windows
30 = Vault
35 = NBU-Catalog
38 = PureDisk-Export
39 = Enterprise-Vault
40 = VMware
41 = Hyper-V
44 = BigData

-T 指定实际映像还原,即仅还原在上次实际映像备份中存在的文件和目录。该选
项仅在执行了实际映像备份后才有用。如果未指定该选项,则还原所有符合指
定条件的文件和目录,即使它们已被删除也是如此。
bprestore如果指定了 -T 选项,则所请求的映像必须具有唯一标识。可以使用具有秒粒
度的 -e 选项来实现唯一标识。此时将忽略 -s 选项(如果有)。可以使用带-l 和 -Listseconds 选项的 bplist 命令来检索映像的秒粒度。

bprestore示例

示例 1 - 要从在 2010 年 4 月 1 日 06:00:00 至 2010 年 4 月 10 日 18:00:00 期间执
行的 file1 备份还原文件,请输入以下命令:
UNIX 系统:
#bprestore -s 04/01/2010 06:00:00 -e 04/10/2010 18:00:00
/usr/user1/file1
Windows 系统:
#bprestore -s 04/01/2010 06:00:00 -e 04/10/2010 18:00:00
C:\user1\file1

示例 2 - 要使用最新备份来还原 restore_list 文件中列出的文件,请输入以下命
令:
UNIX 系统:
#bprestore -f restore_list
Windows 系统:
#bprestore -f c:\restore_list

示例 3
UNIX 系统:
从与包含 My Home Directory 的关键字短语相关联的备份还原目录 /home/kwc。使
用名为 /usr/openv/netbackup/logs/user_op/bkup.log 的进度日志。在一行内
输入如下内容:
#bprestore -k "My Home Directory"
-L /usr/openv/netbackup/logs/user_op/bkup.log
/home/kwc
Windows 系统:
从与包含 My Home Directory 的关键字短语相关联的备份还原目录 C:\kwc。使用
名为 c:\Program Files\Veritas\NetBackup\logs\user_ops\bkup.log 的进度
日志。在一行内输入如下内容:
#bprestore -k "My Home Directory"
-L c:\Program Files\Veritas\NetBackup\logs\user_ops\bkup.log
C:\kwc

bprestore示例 4 - 从与包含 My Home Dir 的关键字短语相关联的备份还原 Windows 客户端
slater 上的驱动器 D。使用名为 bkup.log 的进度日志。在一行内输入以下全部命令
或使用反斜杠续行符:
UNIX 系统:
#bprestore -k "My Home Dir" -C slater -D slater -t 13 -L /usr/openv/netbackup/logs/user_op/bkup.log /D
Windows 系统:
#bprestore -k "My Home Dir" -C slater -D slater -t 13
-L c:\Program Files\Veritas\NetBackup\logs\user_ops\bkup.log D:\

示例 5 - 假定 UNIX 客户端上有一个名为
/usr/openv/netbackup/logs/user_ops/rename 的重命名文件,并且它包含以下命令:
change /home/kwc/linkback to /home/kwc/linkback_alt
要将名为 /home/kwc/linkback 的硬链接还原到该客户端中的备用路径
/home/kwc/linkback_alt,请运行以下命令:
#bprestore -H -R
/usr/openv/netbackup/logs/user_ops/rename
/home/kwc/linkback

示例 6 - 假定您要从文件 user1 的备份还原文件。
备份是在 2012 年 4 月 1 日 06:00:00 至 2012 年 4 月 10 日 18:00:00 期间执行的。
此外,您还想排除扩展名为 .pdf 的所有文件,但 final_doc.pdf 文件除外。要执
行此操作,请在一行内运行以下命令:
UNIX 系统:
#bprestore -s 04/01/12 06:00:00 -e 04/10/12
18:00:00 /home/user1 !/home/user1/*.pdf /home/user1/final_doc.pdf
Windows 系统:
#bprestore -s 04/01/12 06:00:00 -e 04/10/12 18:00:00
C:\user1\ !C:\user1*.pdf C:\user1\final_doc.pdf
文件
UNIX 系统:
bprestore$HOME/bp.conf
/usr/openv/netbackup/logs/bprestore/log.mmddyy
Windows 系统:
install_path\NetBackup\logs\bprestore*.log

推荐阅读