![sudo tar는 추출된 파일 소유권을 알 수 없는 사용자로 변경합니다.](https://linux55.com/image/83927/sudo%20tar%EB%8A%94%20%EC%B6%94%EC%B6%9C%EB%90%9C%20%ED%8C%8C%EC%9D%BC%20%EC%86%8C%EC%9C%A0%EA%B6%8C%EC%9D%84%20%EC%95%8C%20%EC%88%98%20%EC%97%86%EB%8A%94%20%EC%82%AC%EC%9A%A9%EC%9E%90%EB%A1%9C%20%EB%B3%80%EA%B2%BD%ED%95%A9%EB%8B%88%EB%8B%A4..png)
나는 다음 명령을 실행하고 있습니다 :
$ sudo tar xvzf nexus-latest-bundle.tar.gz
추출된 파일은 알 수 없는(1001) 사용자의 것입니다.
drwxr-xr-x 8 1001 1001 4096 Dec 16 18:37 nexus-2.12.0-01
drwxr-xr-x 3 1001 1001 4096 Dec 16 18:47 sonatype-work
정상적인 구성에서는 루트 소유자가 아니어야 합니까?
저는 AWS AMI에서 복사한 Linux 설치 작업을 진행하고 있습니다.
답변1
파일을 루트로 추출하면 tar는 원래 소유권을 사용합니다. --no-same-owner
옵션(또는 ) 을 사용하여 이를 무시할 수 있습니다 -o
.
귀하의 tar 파일은 해당 파일을 추출한 시스템에 존재하지 않는 사용자/그룹을 참조합니다.
해당 파일의 압축을 풀면당신 자신(권한이 없는 사용자), 자신이 소유한 파일만 생성할 수 있습니다.
암소 비슷한 일종의 영양타르 매뉴얼설명하다:
--same-owner
아카이브를 추출할 때 tar는 이 옵션이 있는 tar 아카이브에 지정된 소유자를 유지하려고 시도합니다. 이는 수퍼유저의 기본 동작입니다. 이 옵션은 일반 사용자에게만 제공됩니다. 섹션을 참조하세요파일 속성 처리.
답변2
tar 파일을 만든 사람의 유효 사용자 ID와 그룹 ID(UID:GID)는 1001:1001입니다. 소유권과 권한은 기본적으로 유지되기 때문에 tar
확장 시 이러한 값을 상속받게 됩니다. 시스템에 UID:GID 1001:1001을 사용하는 사용자가 있는 경우 이 파일은 해당 사용자가 소유하게 됩니다.