리눅스 소유자 그룹 변경 - linugseu soyuja geulub byeongyeong

리눅스 환경에서 파일 및 경로의 소유자(ownership) 및 그룹(group) 변경 방법에 대하여 알아봅니다.

# 리눅스 파일 및 경로 사용자, 그룹 변경 chown
리눅스는 파일 및 경로에 소유자와 그룹 사용자를 지정할 수 있습니다. 이렇게 설정하는 이유는 적절한 접근 권한을 통해 허용 범위를 지정하기 위해서 입니다. 예를들어 읽기, 쓰기, 삭제 등 특정 목적에 따라 권한 부여를 위해 필요한 명령어 입니다. 그럼 아래는 어떻게 소유자 및 소유 그룹을 변경하고 그 예제를 살펴보도록 합니다.

! 소유자만 변경하는 경우
먼저 소유자 및 그룹 변경을 하려면 chown 명령어를 사용합니다.

chown <옵션> 소유자 파일

간단한 문법은 위와 같습니다. 예를들어 아래는 webisfee 사용자를 web.txt 파일의 소유자로 지정합니다.

chown webisfree web.txt

이제 web.txt의 소유자를 확인하면 webisfree로 변경된 것을 확인할 수 있습니다.

! 그룹만 변경하기
이번에는 소유자 변경이 아닌 그룹의 변경이 필요한 경우 :을 사용합니다. 그룹명이 webgroup이라면 아래와 같이 그룹명 앞에 :을 추가하여 입력합니다.

chown :webgroup web.txt

이제 그룹이 변경되었습니다.

! 사용자, 그룹 둘 다 변경하는 방법
이 번에는 소유자와 그룹 두 가지 모두를 변경할 경우입니다. :을 사용하여 앞에는

chown webisfree:webgroup web.txt

위와 같이 : 기호를 사용하여 소유자와 그룹 모두 변경하는 것이 가능합니다.

! 하위 디렉토리 포함 파일, 경로 사용자, 그룹 변경하기
현재 경로에서 하위 디렉토리 및 파일을 포함하여 변경하는 방법입니다. 이 경우 -R 옵션을 사용합니다. 만약 /test라는 폴더와 하위 모든 디렉토리 및 파일을 변경하기 위해서는 아래와 같이 입력합니다.

chown webisfree:webgroup -R test

이제 모든 하위 요소를 포함하여 그룹 및 사용자 변경이 완료되었습니다.

여기까지 파일 및 경로 소유자와 그룹 사용자에 변경 방법에 대하여 알아봤습니다.

리눅스 chown (리눅스 소유자, 그룹 변경)

리눅스 소유자 그룹 변경 - linugseu soyuja geulub byeongyeong
리르2016. 11. 18. 14:43

리눅스에서는 여러 계정과 그룹이 있는데 각각 권한이 다르게 부여되어 있습니다.

다른 계정이 사용할수 없도록 막거나 특정 계정만 사용할수 있도록 소유자와 그룹을 변경해줘야 하는데요

간단히 사용법을 알아봅시다.

1. 파일을 변경하기 전 소유자, 그룹 확인하기

[root@system]# chown [-옵션] [소유자]:[그룹] [파일명]
이런 식의 구문으로 동작하는데요
변경하기 전에  ls -all 명령어로
현재 파일이 가지고 있는 소유자나 권한을 확인합니다.

[root@system]# ls -all
-rw-r--r-- 1 root root 4096 2016-11-23 14:42 test
이런 형식으로 파일들의 정보가 출력되는데요
root계정이 소유되어 있고 root 그룹에 들어가 있네요

2. 파일 소유자, 그룹 변경하기

[root@system]# chown mysql:smart test
임의로 소유자를 mysql 그룹을 smart로 변경해주었습니다.

[root@system]# ls -all
-rw-r--r-- 1 mysql smart 4096 2016-11-23 14:42 test
변경이 되었음을 확인할수 있습니다.

[root@system]# chown -R mysql:smart test
-R 옵션을 주면 폴더와 폴더 내부 파일까지 전부 다 소유자와 그룹이 변경됩니다.

소유권 확인

먼저 소유권을 확인하기 위해서는 아래 명령어로 확인이 가능하다.

ls -al 

위 명령어를 입력하면 아래와 같은 형태로 결과물이 나온다.

-rw-r--r--   1 kimkc  staff      36864  5 10  2015 Currency.db

여기서 소유권자가 kimkc이고, 그룹 식별자가 staff이다.

파일 소유권 변경

root 권한에에서 아래 명령어를 실행한다.

명령어

chown {소유권자}:{그룹식별자} {소유권을 변경하고 싶은 파일명}

test.sh 파일명의 소유권자를 aaa로 하고, 그룹식별자를 bbb로 변경하는 명령어는 아래와 같다.

예제

chown aaa:bbb test.sh

디렉토리 소유권 변경

root 권한에에서 아래 명령어를 실행한다.

명령어

chown {소유권자}:{그룹식별자} {소유권을 변경하고 싶은 디렉토리명}

/home/test 디렉토리만 소유권자를 aaa로 하고, 그룹식별자를 bbb로 변경하는 명령어는 아래와 같다.

예제

chown aaa:bbb /home/test

위 명령어로 디렉토리 소유권은 변경하게 되면 /home/test 디렉토리만 소유권이 변경되고, 이하 디렉토리는 소유권이 변경되지 않는다.

하위 디렉토리까지 모두 소유권 변경

root 권한에에서 아래 명령어를 실행한다.

명령어

chown -R {소유권자}:{그룹식별자} {소유권을 변경하고 싶은 디렉토리명}

/home/test 디렉토리와 이하 모든 디렉토리 및 파일들의 소유권자를 aaa로 하고, 그룹식별자를 bbb로 변경하는 명령어는 아래와 같다.

예제

chown -R aaa:bbb /home/test

위 명령어로 디렉토리 소유권은 변경하게 되면 /home/test 디렉토리는 물론 이하 모든 디렉토리 소유권이 변경된다.

리눅스에서 파일 또는 폴더의 소유자를 변경하는 방법

리눅스에서 chown 이라는 명령어를 사용하여 파일이나 폴더 또는 하위경로의 소유자를 변경합니다. 

파일, 폴더의 그룹, 사용자를 변경할 수 있습니다. 

소유자(사용자, 그룹) 변경 명령어 , chown

chown [옵션] [소유자:소유그룹] [파일 또는 폴더]

옵션

-R : 하위 경로의 소유자를 모두 변경합니다. 

-f : 소유자 변경이 안 될때 오류 메시지 표출합니다.

-c : 변경된 파일을 자세히 표출합니다.

-v : 작업상태를 출력합니다. 

--help : 도움말을 보여줍니다. 

--version : 버전 정보를 보여줍니다. 

"testfile1.txt" 의 소유자(owner)를 "user1"으로 변경합니다. 

[root@itworld ~]# chown user1 testfile1.txt

[root@itworld ~]# -l

-rwxr-xr-x 1 user1 user2 6 8월 18 10:08 testfile1.txt

"testfile1.txt"의 소유자가 user1으로 변경된 것을 확인하실 수 있습니다.  

"testfile1.txt" 의 소유그룹(group)을 "user3"으로 변경합니다. 

[root@itworld ~]# chown :user3 testfile1.txt

[root@itworld ~]# -l

-rwxr-xr-x 1 user1 user3 6 8월 18 10:18 testfile1.txt

"testfile1.txt"의 소유그룹이 "user3"으로 변경되었습니다. 

"testfile1.txt" 의 소유자를 "user2", 소유그룹을 "user5"로 변경합니다. 

[root@itworld ~]# chown user2:user5 testfile1.txt

[root@itworld ~]# -l

-rwxr-xr-x 1 user2 user5 6 8월 18 10:10 testfile1.txt

testfile1.txt 의 소유자, 소유그룹이 각각 user2, user5로 변경된 것을 확인실  수 있습니다. 

하위 디렉토리의 소유자 모두 변경, -R 

"/home/etc/test1"폴더를 포함한 하위 디렉토리의 소유자, 그룹을 모두 "user1"로 변경합니다.

[root@itworld ~]# chown -R user1:user1 /home/etc/test1