使用 pigz 的备份脚本确保在备份服务器上使用 CPU
Backup script using pigz ensuring CPU is used on backup server
当前备份的脚本只使用 tar,没有压缩。我们需要压缩备份,但是我们需要 CPU 利用率来压缩这些备份以在备份服务器
上进行
当前:
tar -cvf - . | ssh user@backupserver.com "cat > ~/vps/v16/vzpbackup_${CTID}_${HNAME}_${TIMESTAMP}.tar"
新:
tar -cvf - . | ssh user@backupserver.com "cat > ~/vps/v17/vzpbackup_${CTID}_${HNAME}_${TIMESTAMP}.tar" ; ssh user@backupserver.com "cd ~/vps/v17/; tar --use-compress-program=pigz -cvf vzpbackup_${CTID}_${HNAME}_${TIMESTAMP}.tar.gz vzpbackup_${CTID}_${HNAME}_${TIMESTAMP}.tar"
有没有更好的方法来实现这个目标?
是的。您可以即时压缩:
tar -cvf - . | ssh user@backupserver.com "pigz > ~/vps/v17/vzpbackup_${CTID}_${HNAME}_${TIMESTAMP}.tar.gz"
背景:因为您已经通过管道发送了一个 tar
文件,您只需要在接收方压缩管道数据——最后得到一个压缩的 tar 文件。
顺便说一句,您问题中的 "New" 脚本将创建一个压缩的 tar
文件,其中包含未压缩的 tar
文件。这可能不是你想要的。
当前备份的脚本只使用 tar,没有压缩。我们需要压缩备份,但是我们需要 CPU 利用率来压缩这些备份以在备份服务器
上进行当前:
tar -cvf - . | ssh user@backupserver.com "cat > ~/vps/v16/vzpbackup_${CTID}_${HNAME}_${TIMESTAMP}.tar"
新:
tar -cvf - . | ssh user@backupserver.com "cat > ~/vps/v17/vzpbackup_${CTID}_${HNAME}_${TIMESTAMP}.tar" ; ssh user@backupserver.com "cd ~/vps/v17/; tar --use-compress-program=pigz -cvf vzpbackup_${CTID}_${HNAME}_${TIMESTAMP}.tar.gz vzpbackup_${CTID}_${HNAME}_${TIMESTAMP}.tar"
有没有更好的方法来实现这个目标?
是的。您可以即时压缩:
tar -cvf - . | ssh user@backupserver.com "pigz > ~/vps/v17/vzpbackup_${CTID}_${HNAME}_${TIMESTAMP}.tar.gz"
背景:因为您已经通过管道发送了一个 tar
文件,您只需要在接收方压缩管道数据——最后得到一个压缩的 tar 文件。
顺便说一句,您问题中的 "New" 脚本将创建一个压缩的 tar
文件,其中包含未压缩的 tar
文件。这可能不是你想要的。