기계적 인조 인간

리눅스에서 Chown 명령 (파일 소유권)

Linux - Change Permissions and Ownership for Files and Folders (chmod, chown, members, groups )

Linux - Change Permissions and Ownership for Files and Folders (chmod, chown, members, groups )

차례:

Anonim

chown 명령을 사용하면 지정된 파일, 디렉토리 또는 기호 링크의 사용자 및 / 또는 그룹 소유권을 변경할 수 있습니다.

Linux에서 모든 파일은 소유자 및 그룹과 연관되며 파일 소유자, 그룹 구성원 및 기타에 대한 권한 액세스 권한이 지정됩니다.

이 학습서에서는 실제 예제를 통해 chown 명령을 사용하는 방법을 보여줍니다.

chown 사용법

chown 명령을 사용하는 방법을 시작하기 전에 기본 구문을 검토하십시오.

chown 명령 표현식은 다음 형식을 chown .

chown USER FILE(s)

USER 는 새 소유자의 사용자 이름 또는 사용자 ID (UID)입니다. GROUP 은 새 그룹의 이름 또는 그룹 ID (GID)입니다. FILE(s) 은 하나 이상의 파일, 디렉토리 또는 링크의 이름입니다. 숫자 ID는 + 기호로 시작해야합니다.

  • USER 만 지정하면 지정된 사용자가 지정된 파일의 소유자가되고 그룹 소유권은 변경되지 않습니다. USER: -사용자 이름 뒤에 콜론 (:)이 있고 그룹 이름이 제공되지 않으면 사용자는 파일의 소유자가되고 파일 그룹 소유권은 사용자의 로그인 그룹으로 변경됩니다. USER:GROUP 사용자와 그룹이 둘 다 지정되면 (공백없이) 파일의 사용자 소유권이 지정된 사용자로 변경되고 그룹 소유권이 지정된 그룹으로 변경됩니다. :GROUP 사용자가 생략되고 그룹 앞에 콜론 : 이 있으면 파일의 그룹 소유권 만 지정된 그룹으로 변경됩니다. : 사용자와 그룹을 지정하지 않고 콜론 (:) 만 제공하면 변경되지 않습니다.

기본적으로 chown 은 성공시 출력을 생성하지 않고 0을 반환합니다.

ls -l 명령을 사용하여 파일을 소유 한 사람 또는 파일이 속한 그룹을 찾으십시오.

ls -l filename.txt

-rw-r--r-- 12 linuxize users 12.0K Apr 8 20:51 filename.txt |- | | | +-----------> Group +-------------------> Owner

sudo 권한을 가진 루트 또는 사용자 만 파일의 그룹 소유권을 변경할 수 있습니다.

파일 소유자를 변경하는 방법

파일 소유자를 변경하려면 chown 명령 다음에 새 소유자의 사용자 이름과 대상 파일을 인수로 사용하십시오.

chown USER FILE

예를 들어, 다음 명령은 file1 파일의 소유권을 linuxize 라는 새 소유자로 linuxize .

chown linuxize file1

여러 파일 또는 디렉토리의 소유권을 변경하려면 공백으로 구분 된 목록으로 지정하십시오. 아래 명령은 file1 파일과 dir1 디렉토리의 소유권을 linuxize 라는 새 소유자로 linuxize .

chown linuxize file1 dir1

사용자 이름 대신 숫자 사용자 ID (UID)를 사용할 수 있습니다. 다음 예제는 file2 라는 파일의 소유권을 UID가 1000 새 소유자로 변경합니다.

chown 1000 file2

숫자 소유자가 사용자 이름으로 존재하면 소유권이 사용자 이름으로 이전됩니다. 이 접두사를 피하려면 ID를 + .

chown 1000 file2

파일의 소유자와 그룹을 변경하는 방법

소유자와 파일 그룹을 모두 변경하려면 chown 명령 다음에 공백과 대상 파일이없는 콜론 (:)으로 구분 된 새 소유자와 그룹을 사용하십시오.

chown USER:GROUP FILE

다음 명령은 file1 이라는 파일의 소유권을 linuxize 및 group users 라는 새 소유자로 변경합니다.

chown linuxize:users file1

콜론 (:) 다음에 그룹 이름을 생략하면 파일 그룹이 지정된 사용자의 로그인 그룹으로 변경됩니다.

chown linuxize: file1

파일 그룹을 변경하는 방법

파일 그룹 만 변경하려면 chown 명령 뒤에 콜론 (:)과 새 그룹 이름 (공백없이)과 대상 파일을 인수로 사용하십시오.

chown:GROUP FILE

다음 명령은 file1 이라는 파일의 소유 그룹을 www-data .

chown:www-data file1

파일의 그룹 소유권을 변경하는 데 사용할 수있는 다른 명령은 chgrp 입니다.

심볼릭 링크 소유권을 변경하는 방법

재귀 옵션을 사용하지 않으면 chown 명령은 심볼릭 링크 자체가 아니라 심볼릭 링크가 가리키는 파일의 그룹 소유권을 변경합니다.

예를 들어, /var/www/file1 을 가리키는 심볼릭 링크 symlink1 의 소유자 및 그룹을 변경하려고하면 chown 은 심볼릭 링크가 가리키는 파일 또는 디렉토리의 소유권을 변경합니다.

chown www-data: symlink1

대상 소유권을 변경하는 대신 " 'symlink1'을 역 참조 할 수 없음: 권한이 거부되었습니다"라는 오류가 발생할 수 있습니다.

대부분의 Linux 배포에서 심볼릭 링크가 기본적으로 보호되어 대상 파일에서 작업 할 수 없기 때문에 오류가 발생합니다. 이 옵션은 /proc/sys/fs/protected_symlinks 지정되어 있습니다. 1 은 활성화 됨과 0 비활성화됨을 의미합니다. 심볼릭 링크 보호를 비활성화하지 않는 것이 좋습니다.

심볼릭 링크 자체의 그룹 소유권을 변경하려면 -h 옵션을 사용하십시오.

chown -h www-data symlink1

파일 소유권을 재귀 적으로 변경하는 방법

주어진 디렉토리 아래의 모든 파일과 디렉토리에서 재귀 적으로 작업하려면 -R ( --recursive ) 옵션을 사용하십시오.

chown -R USER:GROUP DIRECTORY

다음 예제는 /var/www 디렉토리에있는 모든 파일 및 서브 디렉토리의 소유권을 www-data 라는 새 소유자 및 그룹 www-data .

chown -R www-data: /var/www

디렉토리에 기호 링크가 포함 된 경우 -h 옵션을 전달하십시오.

chown -hR www-data: /var/www

디렉토리 소유권을 재귀 적으로 변경할 때 사용할 수있는 다른 옵션은 -H -L 입니다.

chown 명령에 전달 된 인수가 디렉토리를 가리키는 기호 링크 인 경우 -H 옵션을 사용하면 명령이이를 통과합니다. -L chown 에게 발견 된 디렉토리에 대한 각 기호 링크를 순회하도록 지시합니다. 일반적으로 시스템을 손상 시키거나 보안 위험을 초래할 수 있으므로 이러한 옵션을 사용하지 마십시오.

참조 파일 사용

--reference=ref_file 옵션을 사용하면 지정된 파일의 사용자 및 그룹 소유권을 지정된 참조 파일 ( ref_file )과 동일하게 변경할 수 있습니다. 참조 파일이 기호 링크 chown 인 경우 대상 파일의 사용자 및 그룹을 사용합니다.

chown --reference=REF_FILE FILE

예를 들어 다음 명령은 file1 의 사용자 및 그룹 소유권을 file2 할당합니다.

chown --reference=file1 file2

결론

chown 은 파일의 사용자 및 / 또는 그룹 소유권을 변경하기위한 Linux / UNIX 명령 행 유틸리티입니다.

chown 명령에 대한 자세한 내용은 chown 매뉴얼 페이지를 방문하거나 터미널에 man chown 을 입력하십시오.

초크 터미널