Blog Content

    티스토리 뷰

    chown 파일 소유권 고치기

    사용자가 파일을 소유하고 있는 상황에서 사용자의 UID와 GID를 변경할 때 무슨 일이 생기는지 살펴보기 위해 File1과 File2라는 새로운 파일 두 개를 먼저 생성하자.

    UID

    다음은 이 절에서 살펴볼 예제 파일 두 개다.

    <PRE class=displaycode>$ls -l File* -rw-r----- 1 bduda security 21 May 19 00:23 File1-rw-r----- 1 bduda security 23 May 19 00:24 File2 </PRE>

    파일 소유자는 bduda이고 기본 그룹은 security다. 이제 bduda UID를 변경해 보자.

    <PRE class=displaycode>$usermod -u 34578 bduda$grep bduda /etc/passwdbduda:*:34578:7:tester:/tmp/bduda:/usr/bin/ksh </PRE>

    이제 UID를 변경했으니 파일 소유권을 살펴보자.

    <PRE class=displaycode>$ls -l File*-rw-r----- 1 203 security 21 May 19 00:23 File1-rw-r----- 1 203 security 23 May 19 00:24 File2 </PRE>

    두 파일 소유자는 203로 바뀌었다. 즉, 변경하기 전 bduda UID 값이다. 따라서 파일 소유권을 원래 주인인 bduda로 바꿔야 한다.

    <PRE class=displaycode>$ chown bduda File*$ ls -l File*-rw-r----- 1 bduda security 21 May 19 00:23 File1-rw-r----- 1 bduda security 23 May 19 00:24 File2 </PRE>

    만약 사용자가 소유한 파일이 4000개에 이른다면? 파일 소유자를 일일이 고쳐야 한다면?

    GID

    마찬가지로 다음은 이 절에서 살펴볼 예제 파일 두 개다.

    <PRE class=displaycode>$ls -l File* -rw-r----- 1 bduda security 21 May 19 00:23 File1-rw-r----- 1 bduda security 23 May 19 00:24 File2 </PRE>

    기본 그룹은 security다. 여기서 security GID를 변경해 보자.

    <PRE class=displaycode>$ chgroup "id=7013" security$grep security /etc/groupsecurity:!:7013:root,bduda </PRE>

    이제 GID를 변경했으니 파일 소유 그룹을 살펴보자.

    <PRE class=displaycode>$ls -l File*-rw-r----- 1 bduda 7 21 May 19 00:23 File1-rw-r----- 1 bduda 7 23 May 19 00:24 File2 </PRE>

    두 파일의 기본 그룹은 7이다. 즉, 변경하기 전 security GID 값이다. 따라서 파일 기본 그룹을 원래 그룹인 security로 고쳐야 한다.

    <PRE class=displaycode>$chgrp security File*$ls -l File*-rw-r----- 1 bduda security 21 May 19 00:23 File1-rw-r----- 1 bduda security 23 May 19 00:24 File2 </PRE>

    만약 UID와 GID를 변경한 후에 파일 소유자를 고치지 않는다면 어떻게 될까? 새로 생성하는 사용자나 그룹이 UID 203이나 GID 7로 만들어진다면, 앞서 bduda와 security가 소유하던 파일 전체를 새 사용자와 새 그룹이 소유하게 된다. 이는 바람직하지 못할 뿐더러 심각한 보안 문제를 초래한다. 다음 절에서는 AIX 시스템에서 소유자가 없는 파일을 찾아본다.


    'Linux' 카테고리의 다른 글

    [Linux 파일정보] resolv.conf  (0) 2017.04.17
    [Linux cmd] nslookup  (0) 2017.04.17

    Comments