如何将数据从 ubuntu 机器安全地传输到外部硬盘驱动器?
How to securely transfer data to a external hard drive from an ubuntu machine?
我想将巨大的数据(每个文件大约 15GB,总共大约 2TB)传输到一个新的硬盘而不丢失(损坏)数据。如何传输和验证数据是否完全复制到硬盘?
我试过:
rsync -avP /data/fastq/001q1.fastq.gz 001q1.fastq.gz
循环为:
for i in *.fastq.gz; do
rsync -avP $i /data/external_hdd/$i;
done
但是如何验证数据是否被完整复制?
rsync
已经对数据完整性进行了内部检查,您只需要它“告诉”您它已完成,例如通过添加 && echo transfer complete
如果未显示该消息,则可能是传输失败,传输未完成。
如果您想在失败时显示一条消息,也可以使用 || echo transfer failed
如果两者都需要,最简洁的方法是使用 if
结构:
if rsync -avP /data/fastq/ /data/external_hdd/; then
echo transfer complete
else
echo transfer failed
fi
你应该把 ""
放在 echo
if rsync -avP /data/fastq/ /data/external_hdd/; then
echo "transfer complete"
else
echo "transfer failed"
fi
我想将巨大的数据(每个文件大约 15GB,总共大约 2TB)传输到一个新的硬盘而不丢失(损坏)数据。如何传输和验证数据是否完全复制到硬盘? 我试过:
rsync -avP /data/fastq/001q1.fastq.gz 001q1.fastq.gz
循环为:
for i in *.fastq.gz; do
rsync -avP $i /data/external_hdd/$i;
done
但是如何验证数据是否被完整复制?
rsync
已经对数据完整性进行了内部检查,您只需要它“告诉”您它已完成,例如通过添加 && echo transfer complete
如果未显示该消息,则可能是传输失败,传输未完成。
如果您想在失败时显示一条消息,也可以使用 || echo transfer failed
如果两者都需要,最简洁的方法是使用 if
结构:
if rsync -avP /data/fastq/ /data/external_hdd/; then
echo transfer complete
else
echo transfer failed
fi
你应该把 ""
放在 echo
if rsync -avP /data/fastq/ /data/external_hdd/; then
echo "transfer complete"
else
echo "transfer failed"
fi