我采取了哪些步骤:
在 Linux 机器(RHEL-6)上:tar -cvf <tarname.tar>
。
在 Unix 机器(Solaris-10)上:并通过 ftp 将 tarfile 传输到 Unix 系统。sftp <[email protected]>
现在在 Unix 上解压:tar -xvf <tarname.tar>
。
在提取文件时,我发现一些文件的文件名被截断,如下所示:
bash-3.2$ ls -lt
total 48
-rw-r--r-- 1 user group 454 Jan 13 01:53 FileNam
相反FileName.txt
,我得到的是FileNam
。
tar -tvf <tarname.tar>
还显示截断的文件名。
将 tar 文件从 Linux 传输到 Unix 后,如何才能正确提取该文件(而不是通过 Windows)?
注意:在 Unix 上传输的 tarfile 具有完整的文件名;只有在提取 tarfile 时才会创建具有截断文件名的文件。
答案1
弗朗西斯的回答 关于 Solaris 和 Linux 上 tar 互操作性的问题是正确的。
如果您能找到的话,您可以从 sunfreeware 站点安装 gtar(GNU tar)– 谷歌搜索“sunfreeware gnu tar”。
cpio
或者,您可以使用最便携*nixes 之间的文件归档选项。过去,当我无法访问 gtar 时,我曾使用 cpio 成功地在 AIX、Linux、Solaris、HP-UX ↔ Linux 之间切换。