gzip 압축 아카이브의 "." 폴더

gzip 압축 아카이브의 "." 폴더

VirtualBox VM에 Ubuntu의 최소 설치를 만들었습니다. 그런 다음 친구들과 공유할 수 있도록 보관하기로 결정했습니다. 나는 그들이 Linux 명령을 시험해 볼 수 있도록 그것을 사용하게 했습니다.

명령을 사용하여 보관합니다.

tar -zcvf ./Hackcraft.tar.gz ./Hackcraft

서류전형은 매우 순조롭게 진행되었습니다. 그러나 FileRoller에서 아카이브를 열면 첫 번째로 보이는 디렉토리가 "."임을 알 수 있습니다. 인용없이. 그 디렉토리를 더블클릭해서 그 안을 들여다보니, 보관되어 있던 Hackcraft 폴더가 보였습니다. 그 안에 내 파일이 모두 들어있어요.

문제는 왜 최상위 폴더가 .? 입니다. 예를 들어 터미널에서 CD를 사용할 때 현재 폴더를 나타내는 데 사용된다는 것을 알고 있습니다. 그런데 왜 거기에 있습니까?

답변1

당신이 준 명령은 경로가 ./Hackcraft;로 시작하는 타르볼을 생성합니다. 이것을 실행하면 볼 수 있습니다

tar tf Hackcraft.tar.gz

File Roller는 tarball 폴더의 내용을 폴더별로 분할하여 표시합니다 . 이로 인해 이름이 지정된 폴더가 포함된 이름이 /루트 폴더로 표시됩니다 ..Hackcraft

(아카이브 자체에는 .항목이 포함되어 있지 않습니다.)

답변2

tar아카이브에 항목이 있으면 현재 ./디렉토리의 소유권과 권한을 기록하는 데 사용됩니다. 따라서 압축을 풀면 현재 디렉터리의 소유권과 권한이 변경될 수 있습니다.

즉, 실행한 명령으로 인해 구성원이 tar포함된 아카이브가 생성되어서는 안 됩니다 ./. FileRoller최상위 디렉터리를 암시적으로 제거하는 것이 가능합니다 .

관련 정보