工作站免费在线托管

<上一页 | 内容 | 下一页>

1.1. 简单的 Shell 脚本


以下 shell 脚本使用 tar 在远程安装的 NFS 文件系统上创建存档文件。 存档文件名是使用其他命令行实用程序确定的。


#!/斌/庆典

####################################

#

#备份到NFS挂载脚本。

#

####################################


#备份什么

backup_files="/home /var/spool/mail /etc /root /boot /opt"


# 备份到哪里。 dest="/mnt/备份"


# 创建存档文件名。 day=$(date +%A) hostname=$(hostname -s) archive_file="$hostname-$day.tgz"


#打印开始状态信息。

echo "将 $backup_files 备份到 $dest/$archive_file" 日期

回音


#使用tar备份文件。

tar czf $ dest / $ archive_file $ backup_files


# 打印结束状态消息。 回声

回显“备份完成”日期


# $dest 中的长文件列表以检查文件大小。 ls -lh $dest


$备份文件: 列出您要备份的目录的变量。 应定制该列表以满足您的需要。

$天: 保存星期几的变量(星期一、星期二、星期三等)。 这用于为一周中的每一天创建存档文件,提供 XNUMX 天的备份历史记录。 还有其他方法可以完成此操作,包括使用日期实用程序。

$主机名: 变量包含 系统的主机名。 使用存档文件名中的主机名,您可以选择将来自多个系统的每日存档文件放在同一目录中。

$归档文件: 完整的存档文件名。

• $dest:存档文件的目的地。 在执行备份脚本之前,需要创建并安装该目录。 请参见第 2 节,“网络文件系统 (NFS)” [p. 253]。 XNUMX] 有关使用 NFS 的详细信息。

状态消息: 使用 echo 实用程序打印到控制台的可选消息。

tar czf $dest/$archive_file $backup_files: 用于创建存档文件的 tar 命令。

c: 创建存档。

z: 通过压缩存档的 gzip 实用程序过滤存档。

f: 输出到存档文件。 否则 tar 输出将被发送到 STDOUT。

ls -lh $dest: 可选语句打印一个 -l 长上市 -h 目标目录的人类可读格式。 这对于存档文件的快速文件大小检查很有用。 此检查不应取代测试存档文件。


这是一个简单的备份 shell 脚本示例; 然而,有许多选项可以包含在这样的脚本中。 请参见第 1.4 节“参考资料”[p. 327] 用于提供更深入的 shell 脚本信息的资源链接。


OnWorks 的顶级操作系统云计算: