Download/Copy tar.gz 从 S3 到 EC2 的文件
Download/Copy tar.gz File from S3 to EC2
当我从 AWS S3 下载 tar.gz 文件,然后尝试解压它时,出现以下错误:
tar -xzvf filename_backup_jan212021_01.tar.gz
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
当我检查它是什么类型的文件时,我得到这个:
file filename_backup_jan212021_01.tar.gz
filename_backup_jan212021_01.tar.gz: ASCII text
这是我用来将文件从 S3 复制到我的 EC2 的命令:
aws s3 cp s3://bucket_name/filename_backup_jan212021_01.tar.gz .
请帮我找到从 AWS S3 下载后提取 tar.gz 文件的解决方案。
tar -xzvf filename_backup_jan212021_01.tar.gz
gzip: stdin: not in gzip format
file filename_backup_jan212021_01.tar.gz
filename_backup_jan212021_01.tar.gz: ASCII text
cat filename_backup_jan212021_01.tar.gz
/home/ec2-user/file_delete_01.txt
/home/ec2-user/file_jan2021.txt
/home/ec2-user/filename_backup_jan1.tar.gz
/home/ec2-user/filename_backup_jan1.txt
/home/ec2-user/filename_backup_jan2.tar.gz
/home/ec2-user/filename_backup_jan3.tar.gz
所有这些都表明上传到 S3 的文件本身不是 gzip 压缩后的 tar 文件,而只是上传了文件名 .tar.gz
的纯文本文件。虽然文件名和扩展名用于向人类指示内容类型,但计算机不这么认为:)
您可以使用
创建文件
tar cvzf <archive name> </path/to/files/to/be/tarred> && aws s3 cp <bucket path> <archive name>
创建存档并将其上传到 S3,然后使用您在问题中提到的命令下载它们。当然用正确的名称替换占位符等等
当我从 AWS S3 下载 tar.gz 文件,然后尝试解压它时,出现以下错误:
tar -xzvf filename_backup_jan212021_01.tar.gz
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
当我检查它是什么类型的文件时,我得到这个:
file filename_backup_jan212021_01.tar.gz
filename_backup_jan212021_01.tar.gz: ASCII text
这是我用来将文件从 S3 复制到我的 EC2 的命令:
aws s3 cp s3://bucket_name/filename_backup_jan212021_01.tar.gz .
请帮我找到从 AWS S3 下载后提取 tar.gz 文件的解决方案。
tar -xzvf filename_backup_jan212021_01.tar.gz
gzip: stdin: not in gzip format
file filename_backup_jan212021_01.tar.gz
filename_backup_jan212021_01.tar.gz: ASCII text
cat filename_backup_jan212021_01.tar.gz
/home/ec2-user/file_delete_01.txt
/home/ec2-user/file_jan2021.txt
/home/ec2-user/filename_backup_jan1.tar.gz
/home/ec2-user/filename_backup_jan1.txt
/home/ec2-user/filename_backup_jan2.tar.gz
/home/ec2-user/filename_backup_jan3.tar.gz
所有这些都表明上传到 S3 的文件本身不是 gzip 压缩后的 tar 文件,而只是上传了文件名 .tar.gz
的纯文本文件。虽然文件名和扩展名用于向人类指示内容类型,但计算机不这么认为:)
您可以使用
创建文件tar cvzf <archive name> </path/to/files/to/be/tarred> && aws s3 cp <bucket path> <archive name>
创建存档并将其上传到 S3,然后使用您在问题中提到的命令下载它们。当然用正确的名称替换占位符等等