Linux 권한 정리 (2) – 명령어 사용법, (Linux 권한 관리 chmod)

Linux 권한 관리 chmod 를 알아보자

4월 9일(게시일) 기준 국내/외 핫 이슈 :
“코로나바이러스” , “코스피1807.14” , “트럼프 미국 대통령 WHO 에 자금 지원 중단?”

Permission Denied

또 permission denied…?


리눅스 파일 권한에 대한 설명은 이전 글인
Linux 권한(permission) 정리!
를 참고하시면 됩니다.

리눅스 권한 관리 chmod
Permission denied…

리눅스 파일 시스템을 사용하다 보면, 항상 흔하게 겪는 일이 Permission denied, Access Denied 등일 것 이다.
이를 해결 하기 위해선 필수적으로 알아야할 커맨드들이 있다.

$ chmod / chown / chgrp

이번에 설명할 내용은,

chmod

Linux 권한 관리 chmod 를 할 때, 사람마다 하는 방법이 조금 다양하다 (사실 2가지 방법)

  • 숫자로 변경하기
  • 권한 인터페이스로 변경하기

하지만 가장 일반적인 방법은 숫자를 활용하는 방법일 것이다. 어디서 많이 들어본 것 같은 숫자, 777











[숫자로 변경하기]

777 들어본 적은 있을 것이다. 혹은 이미 Permission denied 에 대해 에러를 검색한 사람은 한번쯤은 봤을 법.
(잘못된 problem solving일 확률이 매우 높다!!!!!!)

이미 앞선 포스트에서 말했듯이,
리눅스의 파일시스템은 (human readable) -wrxwrxwrx 의 형태로 되어 있다

컴퓨터를 공부한 사람이라면, 2-진법에 대해서 공부한 적이 있을 것이다.
왜 2-진법에 대해서 갑자기 말하냐고?
7을 2진법으로 바꾸면 111 이다.

거두절미 하고,

7
=> 1 1 1
=> w r x

따라서 7은 모든 권한을 준다는 의미가 된다.

이해를 돕기 위해, 740 (이런 권한을 사실 써본적은 없다)

7 4 0
권한 111 100 000
wrx w–
모든 권한 부여 쓰기 권한 부여 모든 권한 없음

만약 명령어로

$ chmod 740 helloworld.txt

한다면,

  • 사용자(owner/user) 에겐 모든 권한 부여
  • 그룹(group) 에겐 쓰기 권한 부여
  • 타 사용자(other) 에겐 모든 권한 제한

만약 무슨말인지 모르겠다면…

Linux 권한(permission) 정리! 를 참고해주세요











[권한 인터페이스로 변경하기]

왜, 굳이 권한 항목에 대해서 설명할 때,
사용자(owner/user), 그룹(group), 타 사용자(other) 라고, 영어까지 표기해가면서 썼을까?

바로 인터페이스를 사용하기 위함이다. (물론, 아니다)

$ chmod o+w helloworld.txt

이전, 숫자로 변경하기 시에는 o+w 대신에 숫자가 들어갔다. 그렇다면 지금 나온 o+w 는 무엇을 의미할까?

o+w : 다른 사용자(other) 에게 (w)rite 권한을 부여

를 나타낸다.

물론 권한을 뺏을 수도 있다.

o-w : 다른 사용자(other) 에게 (w)rite 권한을 뺏음

설명을 덧붙이자면,
================================
앞에 나온 o 는 (u)ser/(g)roup/(o)ther 를,
+ 는 +/- 를,
w 는 w/r/x 를
================================
사용하여 파일권한을 관리할 수 있다.

이해를 돕기 위해, 한가지 더 예를 들어보면,

$ chmod g-r helloworld.txt

이는, 그룹에 대한 읽기 권한을 뺏음 을 나타낸다.

이제 permission denied 에러에 대해서 stackoverflow를 검색해서 777 하는 일은 없도록 하자!

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다