더북(TheBook)

소유권 변경하기

파일 소유권 변경을 실습해보기 위해 cd 명령으로 /tmp 디렉터리로 이동하고 touch 명령으로 임시 파일 sample을 생성합니다. sudo 명령을 이용해서 시스템에 존재하는 다른 사용자 권한으로 파일을 생성하면 해당 사용자 계정이 파일 소유자가 됩니다.

shinjaehun@losttemple:~$ cd /tmp
shinjaehun@losttemple:/tmp$ sudo -u gunsmoke touch sample
shinjaehun@losttemple:/tmp$ ls -l sample
-rw-r--r-- 1 gunsmoke gunsmoke 0 9월 21 23:02 sample
Tip

touch는 빈 파일을 생성하는 명령입니다.

파일의 소유권을 변경하는 명령은 chown(change the owner of a file)입니다. chown [옵션] [사용자 계정 및 그룹] [파일] 형식으로 입력합니다. 파일의 소유권을 변경할 때는 루트 계정으로 권한이 필요합니다. 명령을 실행한 결과 파일 소유자가 변경되었습니다.

shinjaehun@losttemple:/tmp$ sudo chown shinjaehun sample
shinjaehun@losttemple:/tmp$ ls -l sample
-rw-r--r-- 1 shinjaehun gunsmoke      0 9월 21 23:02 sample

사용자 계정과 그룹 사이에 ‘.’ 또는 ‘:’를 넣어 소유자와 그룹을 동시에 바꿀 수 있습니다.

shinjaehun@losttemple:/tmp$ sudo chown shinjaehun:shinjaehun sample
shinjaehun@losttemple:/tmp$ ls -l sample
-rw-r--r-- 1 shinjaehun shinjaehun    0 9월 21 23:02 sample

디렉터리를 대상으로 소유권을 변경하는 경우를 실습해봅시다. sudo -u 명령으로 gunsmoke 계정을 통해 images라는 디렉터리를 만들고 디렉터리에 ‘images01’과 ‘images02’라는 파일을 생성합니다.

shinjaehun@losttemple:/tmp$ sudo -u gunsmoke mkdir images
shinjaehun@losttemple:/tmp$ sudo -u gunsmoke touch images/image01
shinjaehun@losttemple:/tmp$ sudo -u gunsmoke touch images/image02

images 디렉터리와 디렉터리 내 ‘image01’, ‘image02’ 파일의 소유권과 그룹이 모두 gunsmoke로 설정되어 있습니다.

shinjaehun@losttemple:/tmp$ ls -l
drwxr-xr-x 2 gunsmoke gunsmoke 4096 9월 21 23:10 images
...
shinjaehun@losttemple:/tmp$ ls -l images/
-rw-r--r-- 1 gunsmoke gunsmoke 0 9월 21 23:10 image01
-rw-r--r-- 1 gunsmoke gunsmoke 0 9월 21 23:10 image02

chown으로 디렉터리의 소유권을 변경하면 디렉터리는 소유권이 변경되지만 디렉터리 속에 들어 있는 파일은 그대로 유지됩니다.

shinjaehun@losttemple:/tmp$ sudo chown shinjaehun:shinjaehun images
shinjaehun@losttemple:/tmp$ ls -l
drwxr-xr-x 2 shinjaehun shinjaehun 4096 9월 21 23:10 images
…
shinjaehun@losttemple:/tmp$ ls -l images/
-rw-r--r-- 1 gunsmoke gunsmoke 0 9월 21 23:10 image01
-rw-r--r-- 1 gunsmoke gunsmoke 0 9월 21 23:10 image02

재귀를 뜻하는 -R(recursive) 옵션을 사용하면 디렉터리와 디렉터리에 있는 파일들의 소유권을 함께 바꿉니다. 명령 하나로 디렉터리에 존재하는 모든 파일의 소유권을 변경할 수 있으므로 매우 유용합니다.

shinjaehun@losttemple:/tmp$ sudo chown -R shinjaehun:shinjaehun images/
shinjaehun@losttemple:/tmp$ ls -l images/
-rw-r--r-- 1 shinjaehun shinjaehun 0 9월 21 23:10 image01
-rw-r--r-- 1 shinjaehun shinjaehun 0 9월 21 23:10 image02
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.