菜鸟科技网

tsm 备份命令

TSM 的备份操作主要通过一个名为 dsmc 的命令行客户端来完成,理解 dsmc 的命令结构和常用选项是进行 TSM 备份和恢复的基础。

tsm 备份命令-图1
(图片来源网络,侵删)

核心命令:dsmc

dsmc 是 TSM 客户端的“瑞士军刀”,几乎所有操作都通过它来执行,其基本语法如下:

dsmc <command> [options] [files_to_process]
  • <command>: 具体要执行的命令,如 backup, restore, query 等。
  • [options]: 命令的选项,用于控制行为,如 -filelog, -tapeprompt 等。
  • [files_to_process]: 要处理的文件或目录,如果不指定,TSM 会根据配置文件(dsm.opt)中的 includeexclude 规则来处理。

最常用的备份命令

backup - 备份文件或目录

这是最核心的备份命令,用于将本地文件系统中的数据备份到 TSM 服务器。

基本语法:

dsmc backup <source_path>

示例:

tsm 备份命令-图2
(图片来源网络,侵删)
# 备份单个文件
dsmc backup /home/user/document.txt
# 备份整个目录(包括其所有子目录和文件)
dsmc backup /home/user/project/
# 备份当前目录下的所有 .log 文件
dsmc backup *.log

常用选项:

选项 全称 描述
-subdir=yes subdir 非常重要,包含所有子目录,默认情况下,TSM 可能不备份子目录,除非在配置文件中设置或使用此选项。
-tapeprompt=yes tapeprompt 当需要加载磁带时,提示用户操作,通常用于脚本中设置为 no 以实现自动化。
-filelog=/path/to/logfile filelog 将备份操作的详细输出(处理的每个文件)记录到指定的日志文件中。
-verbose verbose 显示更详细的信息,如每个文件备份的状态(成功、失败、跳过)。
-description="My Project Backup" description 为本次备份操作添加一个描述,这个描述会与备份数据关联,方便日后查询和管理。
-domain=/home/user domain 指定一个备份域,该域中的文件会被备份,这等同于直接跟路径,但更明确。
-incr incremental 执行增量备份,只备份自上次备份以来修改过的文件,这是最常用的备份类型。
双连字符,用于分隔 TSM 命令选项和文件名,当文件名以 开头时非常有用。

增量备份 vs. 完整备份

  • 增量备份 (-incr): 强烈推荐,这是最高效的备份方式,TSM 会记录文件的最后修改时间,只备份那些发生变化的文件,恢复时,需要从最新的完整备份开始,依次应用后续的增量备份。
  • 完整备份 (-full): 备份指定域中的所有文件,无论它们是否被修改过,耗时且占用资源大,通常只在特定策略下(如每周日)执行。

增量备份示例:

# 执行一次增量备份 /home/user/data,并将详细日志记录到 /var/log/tsm_backup.log
dsmc backup -subdir=yes -incr -verbose -filelog=/var/log/tsm_backup.log /home/user/data

incremental - 执行增量备份

这是 backup -incr 的一个别名,功能完全相同,使用哪个取决于个人习惯。

# 与上面的命令效果完全一样
dsmc incremental -subdir=yes -verbose /home/user/data

辅助和管理命令

备份完成后,您需要管理这些备份数据。

query - 查询备份数据

这是最常用的查询命令,用于查看哪些文件已经被备份、备份的状态等。

基本语法:

dsmc query <object> [options]

常用查询对象:

对象 描述 示例
backup 查询所有已备份的文件列表。 dsmc query backup
filespace 查询客户端在服务器上注册的文件空间(即盘符或顶级目录)。 dsmc query filespace
archive 查询已归档的文件,归档通常用于长期保存单个重要文件。 dsmc query archive

query backup 常用选项:

选项 描述 示例
-date=2 查询最近2天内的备份数据。 dsmc query backup -date=2
-volser=TAPE01 查询存储在特定卷(磁带或存储池)上的备份数据。 dsmc query backup -volser=TAPE01
-description="My Project" 查询带有特定描述的备份数据。 dsmc query backup -description="My Project"
/home/user/data 查询特定路径的备份数据。 dsmc query backup /home/user/data

示例:

# 查询 /home/user 目录下所有文件的备份状态
dsmc query backup /home/user
# 查询最近3天内备份的文件
dsmc query backup -date=3
# 查询备份描述为 "Monthly Full Backup" 的文件
dsmc query backup -description="Monthly Full Backup"

restore - 恢复文件或目录

当数据丢失或损坏时,使用 restore 命令从 TSM 服务器恢复数据。

基本语法:

dsmc restore <source_tsm_path> <destination_local_path>

关键点:

  • <source_tsm_path>: 是指在 TSM 服务器上的逻辑路径,而不是本地的路径,这个路径通常与您当初备份时的路径一致。
  • <destination_local_path>: 恢复到本地的目标路径,如果目录不存在,TSM 会尝试创建。

常用选项:

选项 描述 示例
-subdir=yes 恢复所有子目录。 dsmc restore /home/user /tmp/restore
-replace=all 非常强大且危险,覆盖本地所有同名文件,无论其内容是否更新。 dsmc restore -replace=all /home/user /tmp/restore
-replace=never 绝不覆盖本地文件,如果本地文件较新,恢复会跳过。 dsmc restore -replace=never /home/user /tmp/restore
-pick 交互式选择,当有多个版本的备份文件时,会提示您选择要恢复哪个版本。 dsmc restore -pick /home/user/old_file.txt /tmp/
-date=3 恢复3天前的版本。 dsmc restore -date=3 /home/user /tmp/restore
-latest 默认行为,恢复文件的最新版本。 dsmc restore -latest /home/user /tmp/restore

恢复示例:

# 将 /home/user 在 TSM 上的完整备份恢复到本地的 /mnt/recovery/user
dsmc restore /home/user /mnt/recovery/user
# 恢复特定文件,并选择一个旧版本进行恢复
dsmc restore -pick /home/user/document.docx /tmp/
# 恢复 5 天前的版本,并覆盖本地所有同名文件
dsmc restore -date=5 -replace=all /home/project /mnt/recovery/project

实用技巧与最佳实践

  1. 使用配置文件 (dsm.opt):

    • 将常用选项(如 servername, commmethod, tcpport, compressalways, subdir=yes)写入 /etc/dsm.opt (Linux) 或 dsm.opt (Windows),避免每次命令都输入。
    • 使用 includeexclude 规则来定义默认要备份或排除的目录/文件。
  2. 使用调度器 (crontab / Task Scheduler):

    • 将备份命令放入 crontab (Linux) 或 Windows 任务计划程序中,实现自动化备份。
    • 示例 (crontab): 0 2 * * * /usr/bin/dsmc backup -incr -filelog=/var/log/tsm_cron.log /home/data (每天凌晨2点执行增量备份)。
  3. 日志管理:

  • 始终使用 -filelog 选项将备份/恢复的输出重定向到日志文件。
  • 定期检查日志文件,确保备份成功,并排查错误。
  1. 理解存储策略:
  • 备份的数据会被存放在 TSM 服务器的存储池中,存储池的类型(如磁盘、磁带)和管理类决定了数据的保留期、复制策略和最终存储位置。
  • 确保您的客户端被分配了正确的管理类,以满足您的业务需求(如快速恢复、长期归档)。
  1. 定期测试恢复:
  • 备份的最终目的是为了恢复,定期从 TSM 恢复文件到测试环境,验证备份数据的完整性和可用性。

常见问题排查

  • ANS1017IAEST3001I 错误: 通常是网络连接问题,检查 TSM 服务器名、端口、防火墙设置。
  • ANS1197I No files were backed up: 检查路径是否正确,文件是否存在,以及 include/exclude 规则是否排除了该文件。
  • ANS2025I Backup not attempted because of previous errors: 在执行备份前,先前的检查步骤(如连接、认证)已经失败,导致备份中止,需要先解决前面的错误。

希望这份详细的指南能帮助您掌握 TSM 的备份命令!

分享:
扫描分享到社交APP
上一篇
下一篇