| 
 | 
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)。 
 
 
 |   
 
评分
- 
查看全部评分
 
 
 
 
 
 |