jiho_bae
Go devlog
jiho_bae
전체 방문자
오늘
어제
  • 분류 전체보기 (158)
    • JavaScript (38)
      • theory (34)
      • vanilla (4)
    • HTML & CSS (2)
    • Browser (3)
    • CS (6)
      • linux (1)
      • shell (2)
      • compiler (2)
    • DS & Algorithm (87)
      • theory (5)
      • basic (7)
      • programmers (30)
      • baekjoon (45)
    • Design Pattern (2)
    • Error (4)
    • Git & Github (4)
    • Tools (1)
    • 부트캠프 (4)
    • Small Tips (2)
    • Java (3)
    • test (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 1753 최단경로 javascript
  • 자바스크립트 커링
  • 리액트 프로젝트 디버깅하기
  • 프로그래머스 숫자카드나누기 javascript
  • JavaScript
  • 25632 소수 부르기 게임
  • 13460 javascript nodejs
  • fetch 취소하기
  • 깃 이전 커밋에서 새 브랜치 만들기
  • 덧칠하기 javascript
  • 백준 17406 nodeJS
  • 가사 검색 자바스크립트
  • 자바스크립트 모듈 시스템
  • 백준 자바스크립트 입력 템플릿
  • 퀵정렬 자바스크립트
  • 대충만든자판 javascript
  • 계수정렬 자바스크립트
  • 리코쳇 로봇 javascript
  • safari invalid date error
  • 자바스크립트 이벤트 위임
  • 외벽 점검 javascript
  • 병합정렬 자바스크립트
  • 자바스크립트 배열의 특수함
  • 자바스크립트 비동기 마이크로 태스크 큐와 렌더링 과정
  • 카카오 코딩테스트 양궁대회 nodeJS
  • javascript use strict
  • 억억단을 외우자 javascript
  • 자바스크립트 채팅방 스크롤
  • safari Date format NaN
  • 자바스크립트 sort는 왜 그모양일까

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
jiho_bae

Go devlog

[리눅스] 파일 접근 권한
CS/linux

[리눅스] 파일 접근 권한

2021. 7. 25. 00:38

파일 접근 권한

다음과 같은 "permission denied" 경고를 본적 있는가?

 

이는 파일 접근 권한때문에 생기는 이슈이다.

특정 파일이 읽을 수는 있어도 실행할 수 없을 수도 있고, 디렉토리에 접근이 불가능 할 수도 있다.

 

이와 같이, 모든 파일에는 사용자마다 접근할 수 있는 권한이 있다.

다음의 표로, 파일 접근 권한을 요약할 수 있다.

r : read, w : write, x : execute 권한을 나타낸다.

 

터미널에서 ls -l 명령어로 위와 같이 파일의 권한을 볼 수 있다.

각각 순서대로 파일 속성(타입), 소유자 권한, 소유그룹 권한, 그 외 권한 으로 나타낸다.

 

-/rw-/r--/r-- 다음의 결과를 가지고 파일 타입, 소유자 권한, 그룹 권한, 그 외 권한에 대해 설명해보겠다.

 

파일 타입

-/rw-/r--/r-- 의 첫번째 - 부분이다.

 

파일의 타입을 나타내며, 타입의 종류는 다음과 같다.

- : 일반 파일
d : 디렉토리
l : link
p : name pipe
s : socket
c : character device
b : block device

를 나타낸다.
아마 우리는, [- 혹은 d]에 해당하는 파일을 많이 볼 것이다.

 

소유자 권한

-/rw-/r--/r-- 의 두번째 rw- 부분이다.

 

말 그대로, 이 파일의 소유자에 대한 권한을 나타낸다.

 

rw- 순서대로 r,w,x의 위치를 의미한다.

rw-의 의미는, read + write => 소유자가 이 파일을 읽고 쓸 수 있음을 의미한다.


-는 x의 위치인데, x가 존재하지 않으므로 소유자는 이 파일을 실행할 수 없다.

**ls -l** 결과로
-rwxrw-r-- 1 root group 45 nov 16 05:15 test.txt
와 같이 나타나는데, root에 해당하는 부분이 파일의 소유자를 의미한다.
group의 위치에 해당하는 부분이 파일의 소유자 그룹을 의미한다.

 

소유그룹 권한

-/rw-/r--/r-- 의 세번째 r-- 부분이다.

 

이 파일의 소유자 그룹에 속한 유저의 권한을 나타낸다.
위에서 언급했듯이, 계정이 group의 위치에 있는 그룹에 속해있다면, 소유자 그룹에 속한 것이다.

 

r--는 소유자 그룹이 이 파일을 읽을 수 있음을 의미한다.

 

그 외 권한

-/rw-/r--/r-- 의 마지막 r-- 부분이다.

 

소유자도 아니고, 소유자 그룹에 속해있지도 않은 모든 유저는 이 권한에 속한다.

이것 역시 r--로 그 외 유저는 이 파일을 읽을 수 있음을 의미한다.

 

파일의 권한을 변경하는 방법

chmod 명령어를 이용해서 파일의 권한을 변경할 수 있다.

 

rwx 권한은 각각 421을 뜻하는데,

권한이 444면 r--r--r--
권한이 644면 rw-r--r--로 나타낸다.

 

 

chmod 명령어를 이용해서 다음의 미션을 수행해보자.

 

1) 소유자는 모든 권한을 가진다.
2) 소유자 그룹은 읽고 실행할 수 있는 권한을 가진다.
3) 그 외는 읽기만 가능하다.

소유자 : rwx >> 7
소유자 그룹 : r-x >> 6
그 외 : r-- >> 4

chown {권한} {파일}
chmod 764 test.txt

권한 변경 결과

 

소유자를 변경하는 방법

chmod 명령어를 이용해 소유자를 변경할 수 있다.

 

chown {소유자:소유그룹} {파일or폴더}
chown james:chelsea football.txt

이 명령어를 해석해보면,

football.txt파일의 새 소유자는 james이며 새 소유그룹은 chelsea이다.

 

 

저작자표시
    jiho_bae
    jiho_bae
    하루에 한 걸음씩

    티스토리툴바