Computer >> 컴퓨터 >  >> 시스템 >> Linux

리눅스 chown 명령어로 파일 소유권 변경하는 방법 완벽 가이드

리눅스 chown 명령어로 파일 소유권 변경하는 방법 완벽 가이드

리눅스(Linux) 시스템에서 모든 파일은 소유자(owner)와 그룹 소유자(group owner)와 연결되어 있습니다. 적절한 권한이 없다면 해당 파일이나 디렉터리에 접근하거나 수정할 수 없습니다. 리눅스에는 이러한 소유권을 관리할 수 있는 chown(change owner) 명령어가 기본으로 제공되며, 이를 통해 파일과 디렉터리의 소유자 및 그룹 소유자를 자유롭게 변경할 수 있습니다. 이번 글에서는 chown 명령어를 활용해 리눅스에서 파일과 폴더를 더 효율적으로 관리하는 방법을 자세히 알아보겠습니다.

리눅스에서 chown 명령어 사용법

chown 명령어는 다음과 같은 형식으로 사용합니다:

sudo chown [새_소유자]:[새_그룹_소유자] 파일명

파일의 현재 권한 확인하기

파일의 소유자(또는 그룹 소유자)를 변경하기 전에 먼저 ls -l 명령어로 현재 파일의 권한을 확인하는 것이 좋습니다. 이 명령어를 사용하면 작업하려는 파일의 소유자와 그룹 소유자를 한눈에 파악할 수 있습니다.

리눅스 chown 명령어로 파일 소유권 변경하는 방법 완벽 가이드

파일/디렉터리의 소유자만 변경하기

리눅스에서는 파일의 소유자만 별도로 변경하는 것도 가능합니다. 명령어 문법에서 콜론(:)을 기준으로 두 부분으로 나뉘는데, 첫 번째 부분은 새 소유자를, 두 번째 부분은 새 그룹 소유자를 의미합니다. 또한 파일의 소유자를 변경하려면 슈퍼유저(superuser) 권한이 필요하므로 모든 chown 명령어 앞에 sudo를 붙여야 합니다.

sudo chown maketech: docker-machine

명령 실행 후 ls -l로 결과를 확인해 보겠습니다:

$ ls -l
total 1964
-rw-r--r--  1 userkubetrain user_kubetrain    2148 Mar 18  2019  certnew.cer
-rw-r--r--  1 maketech      user_kubetrain      48 Jan 29 10:13  docker-machine

"maketech"가 이제 해당 파일의 새 소유자가 된 것을 확인할 수 있습니다. 기본적으로 chown 명령어는 단일 파일이나 디렉터리에만 적용됩니다. 폴더 내의 모든 파일과 하위 디렉터리에 변경 사항을 일괄 적용하려면 -R(재귀적) 옵션을 사용해야 합니다:

sudo chown -R maketech virtual-machine

사용자 이름 대신 UID를 사용하여 파일 소유자를 변경할 수도 있습니다:

sudo chown -R 1002 virtual-machine

파일 또는 디렉터리의 그룹 소유자만 변경하기

다른 사용자에게 파일 접근 권한을 부여하고 싶다면, 해당 사용자들을 하나의 그룹으로 묶은 뒤 파일의 그룹 소유권을 변경하면 됩니다.

sudo chown :maketechpublic -R docker-machine

실행 결과를 확인해 보겠습니다.

리눅스 chown 명령어로 파일 소유권 변경하는 방법 완벽 가이드

위 예시처럼 새 그룹 소유자 이름 앞에 콜론(:)을 붙이는 이유는, 이것이 새 사용자 이름이 아니라 그룹 이름임을 명확히 나타내기 위해서입니다.

파일의 사용자와 그룹 동시에 변경하기

파일이나 디렉터리의 소유자와 그룹 소유자를 한 번에 변경하려면 두 값을 모두 지정하면 됩니다:

sudo chown maketech:maketechpublic -R docker-machine

이렇게 하면 디렉터리의 새 소유자를 지정하는 동시에, 해당 디렉터리를 함께 사용할 수 있는 그룹(즉, 그룹에 속한 사용자들)도 함께 지정하게 됩니다.

리눅스의 chown 명령어는 파일의 사용자 및 그룹 소유권을 변경하는 역할을 담당합니다. 실무에서는 chmod 명령어와 함께 사용하여 리눅스 환경에서 파일 권한을 더욱 체계적으로 관리하는 경우가 많으니, 두 명령어를 함께 익혀두면 큰 도움이 됩니다.