파일과 디렉토리 정보를 아래의 명령어를 통해 표시하면 drwxr-xr-x를 비롯한 여러 값들이 나타난다.
$ ls -al
합계 108
drwxr-xr-x 25 root root 4096 4월 27 03:13 .
drwxr-xr-x 25 root root 4096 4월 27 03:13 ..
drwx------ 2 root root 4096 4월 28 14:33 .pulse
-rw------- 1 root root 256 4월 25 00:02 .pulse-cookie
drwx------ 2 root root 4096 4월 27 03:13 .w3m
drwxr-xr-x 2 root root 4096 4월 24 23:39 bin
drwxr-xr-x 3 root root 4096 4월 25 00:00 boot
drwxr-xr-x 15 root root 3280 4월 28 14:33 dev
drwxr-xr-x 136 root root 12288 4월 28 15:25 etc
drwxr-xr-x 4 root root 4096 4월 27 17:22 home
lrwxrwxrwx 1 root root 30 4월 24 23:20 initrd.img -> /boot/initrd.img-3.2.0-4-amd64
drwxr-xr-x 16 root root 4096 4월 24 23:53 lib
drwxr-xr-x 2 root root 4096 4월 24 23:23 lib64
drwx------ 2 root root 16384 4월 24 23:16 lost+found
drwxr-xr-x 4 root root 4096 4월 24 23:16 media
drwxr-xr-x 2 root root 4096 12월 14 21:56 mnt
...
...
파일 | 디렉토리 정보
drwxr-xr-x
맨 앞의 d 값은 디렉토리라는 의미다.
d값 대신에 올 수 있는 값은 아래와 같다.
- : regular (file)
d : directory
c : character special
b : block special
p : fifo
I : symbolic link
s : socket
맨 앞의 값을 제외한 rwxr-xr-x 값은 3개씩 잘라서 값의 의미를 갖는다.
rwx : 유저 권한
r-x : 그룹 권한
r-x : 그외 권한
유저 권한은 해당 소유자가 할 수 있는 권한을 말한다.
그룹 권한은 해당 그룹 내의 유저가 갖는 권한을 말한다.
그외 권한은 위에 해당하지 않는 유저가 갖는 권한을 말한다.
rwx를 다시 의미있게 분석하면
r : 읽기 권한
w : 쓰기 권한
x : 실행 권한
이렇게 된다.
소유자가 root이므로 root만이 rwx권한을 갖고 root의 그룹내 유저들만이 r-x 권한을 갖으며 그외 유저들은 r-x 권한을 갖는 것이다.
권한 변경
파일 또는 디렉토리의 권한은 chmod의 명령어를 통해 변경하게 된다.
$ chmod 777 lib
위 명령어는 lib의 권한을 777로 변경했다.
유저 권한 : 7
그룹 권한 : 7
그외 권한 : 7
값으로 변경된 것이다.
여기서 숫자의 값은 유저가 갖는 3가지 권한의 합을 나나낸다.
즉 rwx의 합을 말한다.
각각의 값은 아래에 나온 값의 의미를 갖는다.
r : 4
w : 2
x : 1
읽고, 쓰고, 실행가능한 값은 4+2+1=7이다.
만약 읽기만 가능하도록 하면 4+0+0=4이다.
따라서 777이란 의미는 모든 유저가 읽고, 쓰고, 실행이 가능하다 라는 뜻이다.
그럼 해당 소유자만 모든 권한을 갖고 그외 유저는 모두 접근 못하게 한다면 700을 입력하면 될 것이다. (rwx------)
그럼 해당 소유자만 모든 권한을 갖고 그룹 유저들은 읽고 쓰기만 가능하고 그외 유저는 읽기만 가능하게 한다면 764가 될 것이다. (rwxrw-r--)
그럼 마지막으로 해당 소유자가 읽고,쓰기만 하고 그룹 유저들은 읽기만 가능하며, 그외 유저는 실행만 가능하게 한다면 621 값을 가지게 될 것이다. (rw--w---x)
소유자 변경
소유자와 그룹 소유자를 변경하려면 chown 명령어를 사용하면 된다.
$ chown root:root lib
위 명령어는 소유아이디가 root, 그룹 아이디가 root인 lib로 변경한 것이다.
만약 계정 아이디가 m이 있고, root소유를 m에게 넘긴다면 아래와 같은 명령어를 사용하면 된다.
$ chown m lib
만약 그룹 아이디가 m이 있고, root 그룹 소유를 m그룹에게 넘긴다면 앞을 비우고 :뒤에 그룹 아이디를 적으면 된다.
$ chown :m lib
위처럼 둘다 소유자 및 그룹 소유자를 변경한다면
$ chown m:m lib
lib는 디렉토리다. 만약 디렉토리 내부의 모든 디렉토리와 파일까지 같이 변경한다면 옵션 -R을 사용하면 된다.
$ chown -R m:m lib
'리눅스 > 리눅스 - 데비안 계열' 카테고리의 다른 글
[데비안] 프로그램 버전 확인 모음 (0) | 2013.04.30 |
---|---|
[데비안] 실행되는 프로세스 보기 (ps) (0) | 2013.04.28 |
[데비안] 사용한 명령어를 보는history 명령어 설정 (0) | 2013.04.27 |
[데비안] 일반 계정의 .bashrc 설정 내용 (0) | 2013.04.27 |
[데비안] 내가 사용하는 .bash 설정 값 (1) | 2013.04.27 |