|
4#
楼主 |
发表于 2019-5-2 10:31:48
|
只看该作者
本帖最后由 hfut 于 2019-5-16 13:31 编辑
Snapshot -命令行选项
Drive Snapshot 拥有一套非常简单的命令行界面:
备驱动器到文件
C:\> SNAPSHOT C: X:\C-Drive.sna
该命令将备份C: 盘到 X:\C-Drive.SNA。
要备份多个驱动器卷,只需创建如下的简易的批处理:
SNAPSHOT C: \\Server\Backups\C-Drive.sna
SNAPSHOT D: \\Server\Backups\D-Drive.sna
SNAPSHOT E: \\Server\Backups\E-Drive.sna
这将备份 C:, D:, E: 到你的服务器指定位置的文件。
另外,你也可以使用以命令——
SNAPSHOT C:+D:+E: \\Server\Backups\$disk-Drive.sna
一次性同时备份 C: 和D: 和 E: 。
要创建一个物理磁盘上的所有分区的备份(这里以HD1为例),可以用以下命令:
SNAPSHOT HD1:* \\Server\Backups\$disk-Drive.sna
选项 -L650
多数情况下,可能需要限制单个映像文件的大小,以便将它们写入光盘。
默认的最大尺寸是650mb;你可以改变L后面的参数来设定你的单个映像文件大小限制。
为了避免在DOS下恢复备份到驱动器时出现异常,你应该保持这个值低于2GB。
选项 -R [empty Recycle bin ]
这将在备份驱动器之前先清空该驱动器的回收站。
选项 -W [Wait]
如果启动时光标在左上角,Snapshot将假设它是从一个批处理文件启动的,并等待按任意键结束运行,这样你就可以灵活控制程序的执行。
如果它是从计划任务启动,则这可能是不必要的。
这个按任意键的动作可以用 –W 参数忽略掉。
选项 -G [Graphical]
For those who have created a shortcut to a customized Snapshot command, but still want to see a graphical progress.
Useful if you have configured a shortcut or similar for automatic backup, telling the user 'Click here to backup your drive'.
It has a few sub modes like
-G show progress, wait for user to click [exit] when done
-Go show progress, exit when done if everything worked, else tell him so
-Gm start minimized
-Gx show progress, always exit when done
对于那些已经创建了一个自定义快照命令的快捷方式的人来说,可能仍然希望看到一个图形化的进程。
如果你已配置了一个快捷方式或类似的自动备份,这个选项可告诉用户“单击此处备份您的驱动器”。
它有几个子模式——
-G 显示进度,完毕后等待用户点击[退出]
-Go 显示进度,一切操作完毕后退出,否则提示反馈信息
-Gm 以最小化模式启动
-Gx 显示进度,完毕时总是退出
选项 -T [Test]
你可以在创建映像后对映像进行有效性测试。
这将彻底重读一次映像文件,并检查其一致性校验。
但是(特别是在批处理中)单独测试映像可能更好,比如——
snapshot x:\image.sna -T
由此你可以知道是否出现了因服务器宕机导致映像创建失败,或存在“不可靠的数据写入”。
任何的操作失败将返回Errorlevel > 0。
差异备份
差异备份
驱动器允许创建快照差异备份。
差异备份只能创建一次完整映像。
在此之后,一个差异备份只包含自上次完全备份完成后更改的内容。
至于为什么选择差异备份,和一些实现细节,详见下文。
实现和用法:
有三种不同的文件用法——
• 完全备份:这将可以将备份存放到异地安全位置,并不再用于备份用途,只用于查看或恢复。
• 一个扩展名带.HSH的校验文件(hash):这是一个目录的完整的映像。
只用于创建差异映像;你如果你不计划使用差异映像就可以删除。
默认情况下,它存放完整映像的同一位置,最好应该位于本地驱动器(由于性能原因)
• 差异备份文件:(.SNA, .SN1,...)
注意: 完全支持旧的映像(1.37版本之前),此时相当于“完整的” 映像。
完全(全部)备份;同时生成一个校验和文件:
C:>snapshot C: X:\C_full.sna (与一般情形相同)
相应的,将在相同位置自动创建 . HSH 扩展名的Hash文件。
附加选项
-O 禁止生成Hash文件
-ODirname 在不同的位置创建Hashfile
-Odirname 用一个不同的名称创建Hash文件
从现有的校验和文件(重新)创建映像,可能映像较旧:
C:>snapshot X:\C_full.sna -HC_checksum.hsh
差异备份(必须存在校验和文件):
C:>snapshot C: X:\C_diff.sna -hX:\C_full.hsh
映射并浏览一个差异备份映像 (所有分卷部件必须可在线访问):
C:>snapshot X:\C_diff.sna
使用与“常规”映像相同的选项。
从Windows恢复一个差异映像:
C:>snapshot X:\C_diff.sna d:
使用与“常规”映像相同的选项。
从DOS(恢复磁盘)恢复一个差异映像
两步操作:简单地分别恢复所有映像(完整映像和差异映像)
a:>snapshot restore hd1 primary1 X:\C_full.sna
a:>snapshot restore hd1 primary1 X:\C_diff.sna
从命令行设置一个口令
--setdefaultpwd=MySuperSecretPassword
该口令将用于备份\恢复以及映像映射加载。恢复和加载映像将将询问口令。
恢复一个磁盘卷
C:\> SNAPSHOT X:\D-Drive.sna D:
从X:\D-Drive.sna恢复驱动器D: 。
这将覆盖 D: 盘上的所有数据!
限制与普通的快照恢复相同。
从命令行设置密码
你可以从命令行使用 -PW=SuperSecret 的格式来设置口令——
C:>Snapshot C: X:\Backup\c-drive.sna -PW=SuperSecret
该命令将只覆盖默认口令。
如果你有不同的口令,并且没有从命令行设置口令,则将使用默认口令。
如果你有默认口令,但仍然不希望你的映像被加密,则你必须指定一个空白的密码:
C:>Snapshot C: X:\Backup\c-drive.sna -PW=
从备份中排除文件/目录
某些情况下可能需要从备份中排除某些文件或目录。
通常这是针对PAGEFILE.SYS 和HIBERFIL.SYS(程序会自动这么做), 但也可以用于针对临时文件、大的视频文档(你可能需要使用DVD来另行备份它们)。
由于技术原因,排除文件中的数据的没有被保存,但它们的目录结构将被保存。
因此,无论是查看备份,还是在并恢复映像后,文件*看起来*完整,但会包含所有为零的数据(查看时)或随机数据(恢复后)。
因此,映像包含一个在恢复映像后新生成的批处理作业任务,以避免可能发生的混乱(这将删除所有未保存的文件)——'SnapshotDeleteAfterRestore.BAT'.
文件和目录可以通过以下方式被排除:
--exclude:\Temp
--exclude:\Temp\* (which is equivalent)
--exclude:\Windows\Memory.dmp
多个选项之间可以用逗号分隔,样式如下——
--exclude:\Temp,\Windows\Memory.dmp,\Windows\Minidump\*,"\Documents and Settings","\Program Files",\Windows\$NtUninstall* (1.38)
注意:
\temp 和 \temp\* 是等效的。
文件名中的空格必须用封闭的引号括起来(”filen ame”)。
子目录也同样被排除在外。
使用日期、星期等创建文件名
一些具有特殊含义的字串在命令行中可替代数据、计算机名、磁盘,等等。
因此以下这些是有意义的命令:
c:\>snapshot C: \\server\backups\$computername\$DISK-$DATE.sna
$date 6位日期 YYMMDD
$computername 计算机名
$type 差异映像 --> 'dif'
$disk 驱动器盘符 (C,D,...)
$weekday 星期, 2 字符
$year 年(4 位数)
$month 月份(1..12)
$day 日期 (1..31)
$week 周数 (1..53)
加载一个磁盘映像为虚拟磁盘
C:\> SNAPSHOT X:\C-Drive.sna Z: -V
加载映像 X:\C-Drive.SNA 为磁盘 Z:
几种变通用法:
-VM 只加载映像,但不打开浏览
用于在批处理文件中使用
-VQ Z: 加载卷不显示任何对话框
-!unmount:Z 卸载Z:
-!unmount 卸载所有驱动器 (从1.38)
Snapshot 可以按如下带有'start' 的方式启动:
start Snapshot x:\image.bat Z: -vq
xcopy z:\Data c:\Data
Snapshot -!unmount:Z
按文件扩展名排除某类文件:
--exclude:"\*.MP3,\*.TMP"
象预期那样工作。
修复损坏的映像
不幸的是,映像可能被损坏。
一些映像的子文件可能丢失或无法读取,数据可能会被损坏,等等,或者映像不再能够被加载。
作为一个磁盘映像,这是无用的,因为你永远不会知道丢失了什么数据。
但通常你所需要的只是映像中的某几个文件。
如果存在.SNA文件:
c:>snapshot x:\DAMAGED.SNA --repair:Y:\REPAIRED.SNA
这将试图重建可加载映像;至少在虚拟驱动器运行CHKDSK后,你还能够获取一些数据。新的映像需要大约与原始映像相同的大小。
1.44 以下命令
c:>snapshot x:\DAMAGED.SNA --repair:Y:\REPAIRED.SNA --OnlyOffsetInfo
新的映像 Y:\REPAIRED.SNA 只包含偏移信息。这种修复操作使用的磁盘空间少得多。该映像可以被从命令行加载:
c:>snapshot x:\DAMAGED.SNA --OffsetInfoFile:Y:\REPAIRED.SNA
迁移到不同硬件
如果你使用 PE 来恢复映像,可运行以下命令:
c:>snapshot --AddDriver
将询问你要被安装的驱动器,以及(要恢复的)Windows的位置,并且将这个驱动器安装为一个附加的磁盘驱动器。
备份特殊选项
--LogFile:C:\LOGFILE.TXT 重定向输出到 C:\LOGFILE.TXT um.
--UseVSS
--NoVSS
--ForceVSS 指示使用 Windows VSS 卷阴影服务或内部驱动。
--AllWriters 在所有支持的应用程序使用VSS服务(exchange、Oracle、SQL Server,…)通知启动备份和成功完成;参见VSS。这会截断事务日志。
--ExcludeWriter: "NameWriter1","NameWriter2","NameWriter3"...
sets implicit --AllWriters, but disables a given writer; see also VSS
--IncludeWriter: "NameWriter1","NameWriter2","NameWriter3" ...
只使用指定的写入者列表。
--CreateDir 自动创建目标目录。
1.43 --DedupTarget Server 2012优化存储; 禁用压缩
1.43 --AutoBackupSize:512 如果设置此参数,在同一驱动器上所有小分区也将被备份(如hd1-1.sna,hd1-2。SNA,…)。目的是保存所有启动系统必须的分区。
--exclude:\temp
--exclude:\*.tmp
--exclude:@excludeList.txt
--exclude:\media\*.MP3 允许排除备份的目录、文件或文件类型。
--FullIfHashIsMissing 差异备份期间如果检测到备份损坏或丢失散列文件,就创建一个新的完整备份。
--exec:"NET START ORACLE"
--exec:"RestartExchange.bat" 用于内部驱动程序使用:在快照创建后(启动备份后几秒钟),你可以执行外部命令。这必须是命令行的最后一条命令!
--LimitIORate:10 限制目标驱动器的最大I/O速率为10MB/s (1-100)。
恢复映像特殊选项
--Activate X:
--Deactivate X: 激活/取消激活分区 X:
--resize C: 100000 扩展系统盘 C: 到 100 GB, 或现在的分区大小。
--resizepart C: 100000 同时扩展分区和文件系统到100 GB
--resizepart 不能收缩分区!
--RestoreMBR HD1 filename - 恢复分区的前512个字节
--RestorePartitionStructure HD1
filename 恢复所有分区信息,包括启动代码(最多63个扇区),扩展分区……
推荐用 –RestoreMBR 代替
1.43 --Extendpartitions:Image.sna HD1 如同 --RestorePartitionstructure, 但扩展所有的NTFS分区到整个磁盘的比例。
1.44 --EntireDisk Image-C.sna HD1 使用相同的Snapshot命令恢复分区结构和所有保存的映像(snapshot HD1:* Image-$disk.sna) 到磁盘 HD1
--Schedule C: D:\image.sna 下次启动时计划从文件D:\IMAGE.SNA 恢复到 C:。D: 必须是一个固定驱动器,不支持网络驱动器。
--ListSchedule 显示计划恢复任务。
--RemoveSchedule 移除计划恢复任务。
--autoreboot:off
--autoreboot:any
--autoreboot:success 恢复后的规则行为:
计算机重启模式:从不/总是/只在错误发生时。
--AddDriver
--MergeIDE 添加额外的磁盘驱动器(disk-)。
--ClearSignature HD1
--SetSignature HD1 01234567 设置/清除磁盘签名。
--show
--showlist 显示两个找到的驱动器或分区的不同格式的信息。
加载映像的特殊选项
--? 列出所有选项
--setdefaultpwd=MyPassword 向注册表写入一个密码以作为默认的加密口令。
--repair:X:KAPUTT.SNA
Y:\REPARIERT.SNA 试图读出映像中的部分缺失、不可读、被破坏的内容。效果不能保证。
--QuickCheck:test.sna 如果映像看上去是完整的,对其快速检查,程序在映像备份文件的起始和结尾有些特殊标志供快速检查。不能代替使用 –T 进行完整检查。
--register:Lizenzdata.txt 生成一个带有授权信息的snapshot.exe。
--merge:new_full.sna diff_image.sna 将一个完全映像和一个差分映像融合成一个新的完整映像。
1.44 --NetUse:\\server\share,N:,Username,Password 用盘符N:连接网络共享驱动器 \\server\share
1.44 --NetUse:\\server\share,Username,Password 不使用盘符连接网络共享\\server\share \\server\share
1.44 --AddFTPAccount:Username,Server,Password,Port 添加一个FTP帐户提供的登录信息。如果省略了端口号,则将使用默认端口(21)。
1.44 --DeleteFTPAccount:Username,Server,Password,Port 删除给定用户的FTP帐户的登录信息。如果省略了端口号,则将使用默认端口(21)。
|
评分
-
查看全部评分
|