Linux Alpine에서 “tar : invalid magic”오류를 해결하는 방법 수 없습니다. 이 답변을 시도했지만

Alpine Linux에 sqlite를 설치하고 있습니다. 다운로드 sqlite-autoconf-3130000.tar.gz했지만 tar열 수 없습니다. 이 답변을 시도했지만 작동하지 않습니다. tar이 메시지를 제공합니다 :

tar: invalid magic
tar: short read

나는이 명령들을 썼다.

wget https://www.sqlite.org/2015/sqlite-autoconf-3090100.tar.gz
tar -zxvf sqlite-autoconf-3090100.tar.gz



답변

tar 패키지를 설치하십시오 (apk add tar). Busybox tar (기본값)는 모든 기능을 지원하지 않습니다.


답변

tar프란체스코가 파일 체크섬을 실제로 확인해야한다고 지적 했으므로 알파인 버전 이 호환되지 않는 것은 아닙니다 .

curl https://github.com/someproject/releases/project-1.1.0.gz | tar -xvzfDockerfile에서 작업하는 동안이 문제가 발생 했습니다.

내가 잊어 버린 것은 curl리디렉션을 허용하는 경우에만 리디렉션을 수행 한다는 것이 밝혀 졌으므로 -L실제 파일에 도달하지 않았으므로 문자 그대로 리디렉션이 있음을 알리는 html을 다운로드하고있었습니다. 추가하면 -L컨테이너에 새 파일을 추가 하지 않고 파일을 저장할 수 있습니다 tar(추가 한 “bloat”이외 curl).


답변

tar : invalid magic은 파일이 손상되었음을 의미합니다.

일치하는 경우 md5sum을 확인하십시오 … 이것은 내가 얻은 것입니다.

 md5sum  sqlite-autoconf-3090100.tar.gz
 74931054399a2d7acf35637efe8d6f45  sqlite-autoconf-3090100.tar.gz


답변

나는 같은 문제가있어서 해결했지만 같은 문제에 직면했는지 확실하지 않습니다.

오류일으킨 코드 :

wget www.example.com/file.tar.gz
tar -zxvf file.tar.gz

그것을 해결 한 코드 :

wget https://www.example.com/file.tar.gz
tar -zxvf file.tar.gz

“https : //”를 잊어 버렸습니다. 여기서 파일은 다운로드되었지만 tar는 같은 오류를 나타냅니다. 파일을 찾을 수 없으면 사용하십시오

도커 빌드 -캐시 없음


답변