Linux 大文件拆分
远程传输大文件时,如果网络不稳定容易功亏一篑,此时可考虑将大文件按指定大小拆分成多个小文件,便于重传。
可通过对比文件传输前后的MD5码,判断文件是否损坏或被篡改。
以下以传输一个17G大文件(win2008.img)作完整示例:
1、计算大文件MD5码:
md5sum win2008.img
2、按固定大小500M进行拆分:
split -b 500m win2008.img win2008
其中win2008.img为待拆分文件名,win2008为拆分生成文件名前缀,生成文件为
win2008aa、win2008ab.......win2008az、win2008ba....win2008bh
根据被拆分文件实际大小,最后一个小文件可能不足500M。
3、计算每个小文件的MD5码:
for var in $(ll |grep win2008 | awk '{print $9}'); do md5sum $var;done
将输出的一列MD5码粘贴到excel中便于比对。
4、scp远程传输所有小文件。
5、传输完毕后,在目标机计算所有小文件MD5码,如果某个小文件和传输前对应小文件的MD5码不同则说明文件不正确,重新传输。
6、将小文件合并成大文件
cat win2008* > win2008.img
分割的时候是按字母顺序排下来的,cat也是按照字母顺序处理的。
7、计算合成大文件的MD5码:
md5sum win2008.img
8、和传输前大文件MD5码一致表明大文件成功传输。
分享到:
相关推荐
SQLDumpSplitter就是用来解决这个问题的,它能够将大的SQL dump文件拆分成更小、更易管理的部分。 该工具的核心功能在于其智能地分析SQL文件的结构,识别INSERT语句和其他数据库操作,并按照这些语句进行拆分。这样...
在IT领域,大文件拆分是一项常见的操作,尤其在数据传输、存储或备份时,由于各种网络限制或系统要求,可能需要将一个大的文件分割成若干小块来处理。这通常涉及到磁盘空间管理、数据完整性保护以及方便的重组过程。...
大文件拆分和合成是 Linux 系统中一个常用的操作,可以使用 split 命令将大文件拆分成小文件,并使用 cat 命令将小文件合并成大文件。此外,还可以使用 tar 命令将多个文件打包成一个文件,并使用 du 命令显示文件或...
文件拆分是指将一个大的文件分割成多个小文件,通常是因为单个文件过大,无法通过某些系统或网络限制进行传输,或者为了便于存储在容量有限的媒介上。例如,如果你有一个几GB的大文件需要发送给朋友,但邮件附件...
HJSplit是一款简单易用且功能强大的文件拆分与合并工具,它能够将大文件分割成若干个小文件,方便传输和存储,同时也能轻松地将这些小文件合并回原文件,保持数据完整性。 一、HJSplit简介 HJSplit是由Jan ...
接着,客户端可以将文件拆分成数据块,通过TCP发送到服务器端。服务器端接收这些数据块,并按照接收到的顺序重组文件,最后保存到本地。 源代码中可能包含以下几个关键部分: 1. **网络套接字编程**:C语言中,...
1. 分块:将文件拆分为1024字节或更小的数据块。 2. 添加头信息:每块数据前添加控制字符,标识数据块的序号和类型。 3. 加密:使用CRC校验计算数据块的校验值并附加到数据块后面。 4. 发送:通过串口将加密后的数据...
MammothCopy使用高效的文件分块技术,将大文件拆分成小块并分别传输,然后在目标位置重新组合。这种分块传输方式可以有效减少网络拥塞,提高传输效率。同时,通过校验机制确保数据完整性,确保接收的文件与源文件...
对于大规模文件传输,可能需要考虑优化策略,如使用多线程或异步I/O提高并发性能,或者使用分块传输减少内存占用。 8. **压缩包子文件`FileTransmitSystem`**: 这个文件很可能是源代码或者编译后的可执行文件,...
4. **文件传输**:在TCP连接上,可以将文件内容拆分为多个数据块,然后逐个发送。接收端同样按顺序接收并组合成原始文件。在C语言中,可以使用fread和fwrite等文件操作函数与recv和send结合,完成文件的传输。 5. *...
尽管在Linux中,TeraCopy并不直接适用,但是有一些类似功能的工具,比如`rsync`和`cpio`,它们具有断点续传、错误校验和并行传输的能力,能够大大提高大文件和目录的传输效率。 1. **rsync**: 这是一个强大的同步...
6. 大文件传输优化:对于大文件,项目可能采用了断点续传、分块传输等策略,以减少因网络问题导致的传输失败。此外,为了提高效率,可能还使用了多线程技术,让文件传输和聊天功能可以并行执行。 7. 安全性:虽然本...
在进行TCP文件传输时,通常会将大文件拆分成多个小数据块,逐个发送并确认接收。 在Qt中,我们可以利用QNetworkAccessManager和QTcpSocket类来实现TCP通信。QNetworkAccessManager主要用于HTTP和FTP等网络请求,而...
在Socket通信中,发送方将文件拆分成数据块,并逐个通过Socket发送到接收方。接收方则需要正确地接收这些数据块并重新组合成原始文件。 1. **文件头**: 文件头是文件接收过程中的第一步,通常包含关于文件的重要元...
HJ-Split for Fedora GNU/Linux就是这样一款免费、开源的文件拆分软件,它能够帮助用户轻松处理大文件,使其适应各种环境的需求。 HJ-Split是一款多平台的文件管理工具,特别适用于Linux操作系统。它不仅具备文件...
LRZSE工具能够将大文件拆分成小的数据包,然后通过串口逐个发送,接收端再重新组合成原始文件。 在ZYNQ交叉编译环境中编译LRZSE工具是一项关键任务,因为ZYNQ平台的ARM处理器并不直接支持所有标准的Linux命令或工具...