共计 4629 个字符,预计需要花费 12 分钟才能阅读完成。
Snapshot 命令快速进行在线备份和恢复的方法是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
为何使用 Snapshot
为何使用 snapshot 而不是 tar 或 copy 实用工具?使用 snapshot 时,文件系统被冻结,确保您能获得完整的副本,并且可避免“打开文件”、“正在运行进程”或“文件未找到”等问题。另外,通常无需关闭应用程序,尽管我通常在制作快照前会让应用程序进入静态状态;之后再取消静态状态。
您最多可拥有 JFS2 文件系统的 15 个连续外部快照。在测试环境中升级应用程序时,常见的做法是每次更新文件系统中包含的环境后,都制作一个快照。
进行 JFS2 在线备份是一件非常好的事情,但还需要能够在出现错误时恢复内容。使用 rollback 实用工具,通过指定快照所驻留的设备,可将外部快照回滚到制作快照时的那个点。没有什么比这个功能更好了。要回滚备份快照,可使用 restore 命令。
个人第一项
使用哪种方法来创建快照取决于您最喜欢哪种方法。所以让我们介绍一下各种快照类型:
外部快照
在现有的 JFS2 文件系统上创建
其存储空间位于不同的逻辑卷上
可作为单独的文件系统来挂载
有一个只读的数据区域
备份快照
主要是 snapshot 命令的一个接口
执行所有快照工作
在存档文件或磁带上保存最终得到的文件系统备份
如果某个快照遇到空间不足问题,该文件系统的所有快照都将变为无效的 mdash; 换言之,都不可用。在我自己的工作中,我更喜欢外部快照,主要是因为可以根据需要挂载它们,以便更好地查看。
外部快照
文件系统名为 /opt/portal。其大小是 512M,数据文件 281M 多。
# lsfs |grep -w portal /dev/fslv02 -- /opt/portal jfs2 1048576 rw yes no # df -m |grep portal /dev/fslv02 512.00 231.60 55% 7 1% /opt/portal # pwd /opt/portal # ls app_be app_fr app_nl lost+found
要创建外部快照,作为一条规则,我用约原始文件系统大小的一半来创建该快照。IBM 文档建议的快照大小是源文件系统的 10 % 到 15 %。但是,我喜欢为快照提供充足的空间,并且从安全性方面来看也是有好处的。在本例中,50 % 的空间相当于 250M。创建快照的常见格式为:
snapshot -o snapfrom= -o size=
现在创建外部快照:
# snapshot -o snapfrom=/opt/portal -o size=250M Snapshot for file system /opt/portal created on /dev/fslv04
自动创建一个逻辑卷来保存快照。为了确认已创建了快照,使用 snapshot 命令查询相关文件系统的快照,如:
# snapshot -q /opt/portal Snapshots for /opt/portal Current Location 512-blocks Free Time * /dev/fslv04 524288 523520 Sun Nov 4 10:57:46 GMT 2012
现在,我可以挂载快照,查看已复制的数据,但首先需要创建挂载快照所需的目录:
# mkdir /snap_portal # mount -v jfs2 -o snapshot /dev/fslv04 /snap_portal # df -m |grep portal /dev/fslv02 512.00 231.60 55% 7 1% /opt/portal /dev/fslv04 256.00 255.62 1% - - /snap_portal
现在,我可用 cd 命令进入该快照 (/snap_portal) 文件夹并查看已复制的文件;注意,文件系统是只读的,不允许写入数据:
# cd /snap_portal # ls app_be app_fr app_nl lost+found # ls file1
file1:The file system has read permission only.
现在,我可以进一步将快照文件系统备份到磁带或 SAN。假设我已对 /opt/portal 执行了某些数据维护操作并且误删除了一个文件,那么只需从已挂载的快照中将被删除的文件复制到 /opt/portal 中。但是,现在我们来创建 /opt/portal 的另一个快照:
# snapshot -o snapfrom=/opt/portal -o size=250M Snapshot for file system /opt/portal created on /dev/fslv05
和前面类似,查询 /opt/portal 的快照:
# snapshot -q /opt/portal Snapshots for /opt/portal Current Location 512-blocks Free Time /dev/fslv04 524288 523520 Sun Nov 4 10:57:46 GMT 2012 * /dev/fslv05 524288 523520 Sun Nov 4 11:00:53 GMT 2012
在上面的输出中,* 代表 *** 的快照。如果以后不再需要使用某个快照,可使用 snapshot 命令删除该快照。删除快照的通用格式为:
snapshot -d
例如,要删除 fslv04,我可使用以下命令:
# snapshot -d
/dev/fslv04
假设由于某些更新导致 /opt/portal 上出现错误,因此需要恢复整个文件系统。我可以选择要回滚哪个快照。对我而言,这是快照的主要卖点之一。如果已经制作了多个快照,那么就有多个恢复点。在我们的演示中,我将回滚在 10:57 制作的快照,即 /dev/fslv04。首先我要卸载所有快照(如果已挂载的话),然后卸载 /opt/portal,之后执行 rollback 命令。在这个例子中,时间点是 Sunday, Nov. 4 的 10:57。rollback 命令的常见格式为:
rollback -v
进行回滚时,会删除该文件系统的所有快照。要回滚并恢复到原始文件系统 /opt/portal,我可使用:
# umount /opt/portal # rollback -v
/opt/portal /dev/fslv04 Restoring block 1 Restoring block 1000 Restoring block 2000 ... Restoring block 12000 Total blocks restored = 12809 rmlv:Logical volume fslv04 is removed. rmlv:Logical volume fslv05 is removed. Rollback complete
要确认没有留下任何快照,可列出快照:
# snapshot -q /opt/portal /opt/portal has no snapshots.
现在,我可以重新挂载 /opt/portal,并且已恢复了文件系统的原始内容!
# mount /opt/portal
备份快照
backsnap 在后台为您完成大部分的工作。它创建逻辑卷来保存快照,然后将内容复制到一个存档文件中或磁带设备上。然后可使用 restore 命令来恢复已备份的文件。使用 /opt/portal 文件系统创建备份快照,让我们看看它是如何工作的。backsnap 命令的常见格式为:
backsnap -m -s size -f
在这个例子中,我将使用以下值:/backsnap_portal 是临时挂载点;250M 是大小;/opt/dump/backup_portal 是存档文档;/opt/portal 是源文件系统。
# backsnap -m /backsnap_portal -s size=250M -f /opt/dump/backup_portal /opt/portal Snapshot for file system /opt/portal created on /dev/fslv05 backup:Backing up /dev/rfslv05 to /opt/dump/backup_portal. backup:There are an estimated 286768 1k blocks. backup:There are 287321 1k blocks on 1 volumes. backup:The backup is complete.
现在我们有了一个存档文件 backup_portal,它位于目录 /opt/dump 中。看看存档的大小,是 280M:
# du -ms /opt/dump/backup_portal 280.56 backup_portal
要确认文件已位于存档中,我可使用 restore 命令列出各个文件:
# restore -tvf /opt/dump/backup_portal
要从存档文件中将文件 app_be 恢复到 /opt/portal,我可使用:
# cd /opt/portal # restore -xvf /opt/dump/backup_portal app_be. Extracting directories from media. Initializing the symbol table. Extracting requested files.. Specify the next volume number:1 Extracting file ./app_be.
要制作一个快照并将文件置于磁带 rmt0,同时使用以前的备份快照的属性,我可使用:
# backsnap -m /backsnap_portal -s size=250M -f /dev/rmt0 /opt/portal
如果您已制作了快照并且已将内容发送到磁带,可使用 restore 命令列出磁带,如:
# restore -tvf /dev/rmt0
也可使用以下命令列出已制作的快照:
# snapshot -q /opt/portal Snapshots for /opt/portal Current Location 512-blocks Free Time * /dev/fslv08 524288 522496 Sun Nov 4 11:30:25 GMT 2012
如果决定要删除快照,已发送到磁带的已存档文件不会发生任何变化,这与删除外部快照不同。也就是,除非您以前将该快照的其他备份发送到某些介质上。
注意空间
作为系统管理员,我相信快照是进行在线备份的出色方式,并且如果出现了错误,还能恢复内容。但是要记住,一定要注意文件系统中已用的空间;您可不想因为空间不足导致最终得到无效的快照吧。
关于 Snapshot 命令快速进行在线备份和恢复的方法是什么问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注丸趣 TV 行业资讯频道了解更多相关知识。