잠시만 기다려주세요
요청하신 글로벌웹호스팅코리아™ 웹페이지를 Loading 중 입니다...

서비스 소개
이용요금 안내
서비스 환경
세부 설비
연동망 구성
서비스 신청
잦은 질문과 답변
판매왕
이미지/파일 호스팅
멀티 도메인 연결
데이터베이스
이메일(E-mail) 추가
서비스 전환
(2005-02-03 [16:16], Hit : 7033)
파일의 퍼미션(Permission : 접근권한) 에 대하여...



1. 퍼미션이란?


Windows (NT/2000/XP 외) 와는 달리 멀티유저 운영체제인 Unix/Linux 는 보안상의 이유로 다른 사람이 자신의 파일을 읽거나 파일에 다른 내용을 기록하는 것을 막을 수 있습니다. 이런 역할을 하는 것을 퍼미션이라고 합니다. 한 사용자가 다른 사용자의 파일을 마음대로 처리하게 될 수도 있기 때문에 이것을 예방하기 위해서 생성되는 파일이나 디렉토리에 각각의 접근허가권을 두어서 허가한 사용자(그룹)들만이 파일에 대한 접근권한을 가지게 만드는 것입니다. 이들 속성을 이용하여 각 파일 및 디렉토리들을 다른 사람들과 공유하거나 아니면 개인적인 목적으로만 사용할 수 있습니다. 퍼미션은 소유자/소유자가 속한 그룹/그외 유저(그룹)으로 나누어 주어지게 됩니다.


* 그룹 (group) 이해하기


유저는 기본적으로 특정 그룹에 소속되어 있습니다.
관리자가 특별히 그룹을 지정하지 않으면 계정 이름이 그룹 이름이 됩니다.
만약 관리자가 관리의 편의를 위해 그룹을 구분을 지었다면 유저 이름과 그룹 이름이 다를 수 있습니다.


2. chmod 명령


 


2.1 chmod 란?


chmod 은 파일, 디렉토리, 장치, 프로그램등의 퍼미션(접근 권한)을 바꾸는 명령입니다.
접근 권한은 소유자, 소유 그룹, 그외 유저(그룹)의 3가지 대상으로 지정할 수 있고 각각의 대상에게 자신의 파일에 대한 읽기(read), 쓰기(write), 실행(execute) 권한을 지정할 수 있습니다.

2.2 chmod 사용하기


먼저 간략한 chmod 의 사용법은 다음과 같습니다.
파일의 퍼미션을 바꾸려면 로그인 후 다음과 같이 하면 됩니다.


[user@webhostingkorea.net /user]# chmod 퍼미션값 대상


여기서에 퍼미션 값은 권한 변경 대상과 접근 권한으로 이루어져 있으며 이것을 다시 3자리 숫자로 표현할 수 있습니다.
대상은 퍼미션을 바꾸려는 파일이나 디렉토리 장치를 말합니다.


예를 들어, test.html 파일을 소유자만 읽기, 쓰기가 가능하고, 소유 그룹과 그외 유저(other)들은 읽기만을 허용하려고 하면
아래와 같이 하면 됩니다.


[user@webhostingkorea.net /user]# chmod 644 test.html

반복되는 특정 디렉토리 안에 모든 파일의 퍼미션을 바꾸려면 명령에 -R 옵션을 사용합니다.


예를 들어, /home/public_html/ 디렉토리와 그안에 있는 모든 파일들의 퍼미션을 755로 할려면 아래와 같이 하면 됩니다.


[user@webhostingkorea.net /user]# chmod -R 755 /home/public_html/

2.3 퍼미션과 값


중요한 파일 퍼미션에 대해 알아보겠습니다.
Unix/Linux 에서 모든 파일과 디렉토리는 3가지 대상에 대한 접근 권한을 가지고 있습니다.
소유자는 소유자 자신의 파일에 대하여 그룹과 시스템에 있는 모든 유저들에 대한 접근권한을 지정할 수 있습니다.
현재 설정된 퍼미션을 보고 싶으면 ls -l 명령을 하면 됩니다.


[user@webhostingkorea.net /user]$ ls -l


  total 11


  drwx------    2 ty   ty       4096 Jun  9 00:01 mail


  -rw-------    1 ty   ty        557 Jul  4 12:22 mbox


  drwx------    2 ty   ty       4096 Apr  5 20:55 nsmail


  drwx---r-x    4 ty   ty       4096 Jun 11 21:34 public_html

처음 부분은 파일의 퍼미션을 보여줍니다.


drwx---r-x  

처음 문자는 파일의 타입을 나타냅니다. 'd' 는 디렉토리를 의미합니다. '-'는 표준파일입니다.


다음 9 문자는 파일의 퍼미션을 나타냅니다. 처음 3문자는 파일 소유자가 가지는 퍼미션을 나타내고,


두 번째 3문자는 소유자가 속해있는 그룹에 대한 퍼미션을, 마지막 3문자는 모든 유져(그룹)에 대한 퍼미션을 나타냅니다.

drwxr-xr-x

1

root

root

1200

Aug

7

04:02

test.html

파일의 타입과 허가권

링크의 수

소유자

소유그룹

파일의 크기

 마지막 수정일

 마지막 수정 시간

파일이름

 


 


 


d

rwx

r-x

r-x

파일의 타입

소유자 권한

소유자 그룹 권한

그외 유저 권한

d : 디렉토리
- : 표준파일
l : 링크파일

 다음은 퍼미션을 표현하는 문자에 대한 설명입니다. 또한, 각각의 퍼미션 문자는 대응하는 값을 가지고 있습니다.


 문자

의미

 r

읽기

4

 w

쓰기 (추가, 수정, 리네임 등)

2

 x

실행

1

그리고 이 값들을 결합시켜서 퍼미션을 지정합니다.


퍼미션

의미

---

0

 퍼미션 없음

--x

1

 실행

r--

4

 읽기 전용

r-x

5

 읽기, 실행

rw-

6

 읽기, 쓰기

rwx

7

 읽기, 쓰기, 실행

아래에 3자리 숫자를 조합하여 만들 수 있는 중요한 퍼미션 몇가지를 적어보았습니다. 기본 보안과 관련된 것이니 꼭 알아둡시다.


퍼미션

의미

-rw-------

600

 소유자만 읽기 쓰기 퍼미션을 가집니다. 그 밖에 누구에게도 어떠한 접근권한도 주지 않습니다.

-rw-r--r--

644

 소유자는 읽기, 쓰기 퍼미션을 가집니다. 그룹과 그 외 유저는 오직 읽기 퍼미션만을 가집니다.

-rw-rw-rw-

666

 *매우 위험* 모두에 대하여 읽기 쓰기 권한을 줍니다.  다른 유저가 당신의 파일을 고칠 수 있습니다.

 -rwx------

700

 소유자만 읽기, 쓰기, 실행권한을 가집니다. 소유자가 프로그램을 실행할 때 사용됩니다.

-rwx--x--x

711

 소유자는 읽기, 쓰기, 실행을 할수 있는 퍼미션입니다.  그룹과 그외는 오직 실행만 할 수 있고, 읽기와 쓰기는 되지 않습니다.

-rwxr-xr-x

755

 소유자는 읽기, 쓰기, 실행권한을 가집니다. 그룹과 그 외 유저는 읽기, 실행 권한을 줍니다. (홈페이지 계정에 사용됩니다.)

-rwxrwxrwx

777

 *매우 위험* 모두에게 읽기, 쓰기, 실행 퍼미션을 줍니다. 다른 유저가 파일을 수정할수 있고 이로 인해 문제가 생길수 있습니다.

drwx------

700

 소유자만이 디렉토리의 읽기, 쓰기가 됩니다.

drwx--x--x

711

 이 퍼미션은 디렉토리를 다른 유저의 접근으로부터 보호합니다. 오직 소유자만이 이 디렉토리안의 내용물을 보거나 수정할수 있고 다른 유저나 그룹들은 그것을 읽지는 못합니다.

drwxr-xr-x

755

 이 디렉토리는 소유자만이 바꿀수 있지만 모든 유저들이 그안의 내용을 볼 수 있습니다. (홈페이지 계정에 사용됩니다.)


3. chown 명령


 


3.1 chown 이란?


파일에 대한 소유자를 바꾸기 위해서는 chown명령을 사용합니다. 이명령은 root 만이 사용할 수 있습니다. chown을 사용하면 소유자를 바꾸면서 소유 그룹도 바꿀 수 있습니다.

3.2 chown 사용하기


파일의 소유자를 바꿀려면 root로 로그인 후에 다음과 같이 하면 됩니다.


  [user@webhostingkorea.net /user]# chown 소유자이름 파일이름


소유자 이름은 유저의 로그인 이름을 말하는 겁니다. 또, 파일 이름은 소유자를 바꿀 파일 이름을 나타냅니다.


예를 들어서, index.html 의 소유자를 root에서 username로 바꿀려면 다음과 같이 하면 됩니다.


[user@webhostingkorea.net /user]# chown username index.html

 또한 서브디렉토리와 파일까지 포함해서 소유자를 바꾸려면 -R 옵션을 사용하면 됩니다. 예를 들어, public_htmlf 디렉토리와 그 안의 모든 서브디렉토리와 파일의 소유자를 username로 바꾸려면 다음과 같이 하면 됩니다.


  [user@webhostingkorea.net /user]# chown -R username public_html

 또다른 옵션으로 파일의 소유자와 그룹을 같이 바꾸려면 다음과 같이 하면 됩니다.  


  [user@webhostingkorea.net /user]# chown 소유자.그룹 파일이름


아래의 예제는 test.html 디렉토리의 소유자는 username로 그룹은 username로 바꾸는 예제 입니다.


  [user@webhostingkorea.net /user]# chown username.username test.html

그리고 소유 그룹만을 바꾸기 원한다면 chgrp 명령을 사용하면 됩니다. chgrp의 사용예는 다음과 같습니다.


  [user@webhostingkorea.net /user]# chgrp username test.html


test.html 의 소유 그룹을 username로 바꾸는 명령입니다.


  




MSIE 6.0 (Windows NT 5.1) 210.105.172.170

윗글CGI 및 웹서버 Error별 원인 및 조치 방법
아랫글VI(VIM) 편집기 사용하기

판매왕 바로가기
무료 게시판, 프로그램 서비스