728x90
반응형
728x90
반응형

22. 사용자의 추가

사용자(user)를 추가하는 방법에 대해 알아보겠습니다.

명령어는 크롬에서 검색하여 사용해도 되니 굳이 외우지 않아도 된다고 합니다.

 · sudo useradd -m tom : -m옵션은 홈 디렉토리를 만들어 주는 것이라 합니다.

 · cd /home : 홈 디렉토리로 이동합니다.

 · ls : duru라는 사용자가 추가 되었습니다.

 · sudo -duru : duru라는 사용자로 로그인합니다.

사용자 계정은 만들었지만 패스워드는 입력하지 않았기 때문에 에러 메시지가 뜹니다.

 · sudo passwd duru : 패스워드를 세팅해줍니다.

 · sudo pwd : duru는 슈퍼 권한이 없기 떄문에 에러가 뜹니다.

 · sudo usermod -a -G sudo duru : duru에게 sudo명령을 사용할 수 있도록 권한을 부여합니다.

    -a는 append 그룹의 사용자를 추가한다는 의미이고 -g를 같이 사용해야 합니다. 



man usermod : usermod에 대한 도움말이 나옵니다. q를 통해 빠져나올 수 있습니다.



23. 권한(Permission)

23.1 권한 기초

블로그나 게시판을 사용할 때 쓴 글의 공개여부를 할 수 있는 기능이 있습니다. 이를 권한이라고 합니다

유닉스 계열 시스템에서 권한의 대상은 file과 directory입니다.

사용자가 파일과 디렉토리에 대한 권한을 지정하는 것입니다.

즉 파일과 디렉토리에 대해 read(읽기) & 쓰기(write) & 실행(execute)의 기능을 추가,제거 하는 것이죠.

 · touch perm.txt : perm.txt라는 txt파일을 생성합니다.

 · ls -l perm.txt : perm.txt파일에 대한 상세보기 입니다.

 · echo '문자열' : 화면에 문자열을 표준 출력하는 명령어입니다.

 · echo 'hi' > perm.txt : hi라는 메시지가 perm.txt에 출력됩니다.

 · cat perm.txt : hi가 출력되는 것을 확인할 수 있습니다.

하지만 duru사용자가 echo 'hello' > perm.txt을 입력하면 permission denied 에러 메시지가 출력됩니다.

- | rw- | rw- | r-- | 1 | duru duru | 3 | Aug 30 10:50  | perm.txt 

- : type으로 기본적인 파일을 의미합니다. d는 디렉토리를 의미합니다.

rw- : User(사용자)의 권한으로 파일에 대해 읽기, 쓰기 권한이 있습니다.

rw- : Group(그룹)의 권한으로 파일에 대해 읽기, 쓰기 권한이 있습니다.

r-- :  Other(다른 사람)의 권한으로 파일에 대해 읽기 권한만 있습니다. 


23.2 권한을 변경하는 방법(chmod)

rw-rw-r--를 access mod라고 부릅니다.

권한을 변경할 수 있는데요. 만약 다른 사람에게 노출되어야 하는 정보가 아니라면 r을 없애야겠죠.

바로 chmod인데요 change mode의 약자로 권한을 변경합니다. 

 · chmod o-r perm.txt : other의 r권한을 빼는 명령어

 · chmod o+r perm.txt : other의 r권한을 추가하는 명령어

 · chmod o+w perm.txt : other의 w권한을 추가하는 명령어

 · chmod u-r perm.txt : user의 r권한을 빼는 명령어



23.3 실행의 개념과 권한 설정

실행은 X, execute의 약자로서 파일에 대해 실행 가능 여부를 설정하는 것입니다.

 · nano hi-machine.sh : hi-machine.sh파일 편집기로 이동합니다.

 · #!/bin/bash : bash파일을 통해 아래의 코드를 실행합니다.

 · echo 'hi hi hi hi' 

입력 후 ctrl+x -> y 저장 후 빠져나옵니다.

 · ls --l : hi-machine.sh 파일이 생성되었습니다.

 · /bin/bash hi-machine.sh : hi hi hi hi메시지가 뜨면서 실행되지만

. · /hi-machine.sh : 실행 권한이 없기에 permission denied 에러가 뜹니다.

 · chmod u+x hi-machine.sh; : 사용자의 권한을 추가합니다.

 · chmod o+x hi-machine.sh : 다른 사용자에게도 x권한을 추가합니다.



23.4 directory의 권한

파일은 읽기, 쓰기, 실행히 분명한 반면 디렉토리는 읽기, 쓰기 실행이 불분명합니다.

 · mkdir perm;cd perm;echo 'hi' > perm.txt : perm디렉토리 생성 후 접속하여 hi메시지를 perm.txt파일에 저장합니다.

 · cd .. : 상위 디렉토리로 이동

 · ls -l : perm 디렉토리가 생성되었습니다.

 · chmod o-r perm : perm디렉토리에 다른 사용자가 읽기를 제거하는 명령어입니다.

 · chmod o-w perm : 디렉토리 안에 w권한이 없으면 파일을 생성할 수 없습니다. 파일 이름도 변경이 불가하죠.


23.5 chmod사용법 정리

다음은 chmod의 편리한 사용법입니다.

사용법을 외우려 하지 말고 필요할 때 마다 검색하는 게 편리하다고 합니다.

 · chmod 111 perm.txt : user, group, other --x권한을 부여하는 명령어

 · chmod 222 perm.txt : user, group, other --w권한을 부여하는 명령어

 · chmod 444 perm.txt : user, group, other --r권한을 부여하는 명령어

 · chmod 333 perm.txt : user, group, other -wx권한을 부여하는 명령어

 · chmod 555 perm.txt : user, group, other r-x권한을 부여하는 명령어



 · chmod a+r perm.txt : a all 모든 사용자에게 r권한을 부여하는 명령어

 · chmod a+r perm.txt : a all 모든 사용자에게 w권한을 부여하는 명령어

 · chmod a-r perm.txt : a all 모든 사용자에게 w권한을 제거하는 명령어

 · chmod a=rwx perm.txt : a all 모든 사용자에게 rwx권한을 부여하는 명령어

 · chmod a=r perm.txt : a all 모든 사용자에게 r권한을 부여하는 명령어




24.그룹

24.1 그룹 Intro

User는 파일을 만든 사람, u rwx

Other는 유저가 아닌 모든 사람,o rwx

Group 그룹은 특정 사용자의 집단, g rwx

리눅스는 다중 사용자 시스템으로 user나 other필수로 알아야 하며 흐름의 구조상 그룹도 알아야 한다고 합니다.


24.2 groupadd

계정 : egoing : developer

cd /var

mkdir developer : 권한 에러

sudo mkdir developer : developer디렉토리를 생성합니다.

cd developer/ : developer그룹 디렉토리로 이동합니다.

echo ‘hi, killershin’ > killershin.txt : 그룹은 root로 되어있기에 권한 에러뜹니다.

add group in linux 검색으로 활용합니다.

sudo groupadd developer = sudo !! 직전 명령어 입력

nano /etc/group : 그룹에 대한 정보를 갖고 있는 파일 ctrl+x

egoing k8805 멤버로 추가해야합니다.

sudo usermod –a –G developer egoing

sudo usermod –a –G developer k8805 : 그룹에 add되었습니다.

exit

cd /var/developer/

man cdown

sudo chown root:devleoper :현재디렉토리 소유자는 root 그룹은 developer

ls –al : 그룹이 root에서 developer 변하였습니다.

sudo chmod g+w : 그룹에 w권한을을 부여합니다.

 

계정 : K8805 : developer

Cd developer/

Exit

cd /var/developer/

 

계정 : Leezche : designer

Cd developer/

exit

cd /var/developer/



생활코딩 리눅스 강의

728x90
반응형

'OS > Linux' 카테고리의 다른 글

리눅스 명령어 이해하기9!!  (0) 2017.09.01
리눅스 명령어 이해하기8!!  (2) 2017.08.31
리눅스 명령어 이해하기6!!  (0) 2017.08.29
리눅스 명령어 이해하기5!!  (0) 2017.08.28
리눅스 명령어 이해하기4!!  (2) 2017.08.27
728x90
반응형

+ Recent posts