728x90
링크
- 특정 파일 또는 디렉터리에 접근을 쉽게 할 수 있도록 하는 방법
- 파일 시스템이 물리적인 장치인 하드디스크 상에 저장되어있는 특정 파일의 위치를 가리키는 것
하드 링크
- 하드 디스크의 특정 주소
심볼릭 링크
- 윈도우의 바로가기 개념과 비슷하며 실질적인 디스크 상의 파일을 가리키는 것이 아니라 파일 시스템상의 특정 파일을 가리키는 것
링크 생성 명령어
- ln [옵션] [원본] [링크]
- 옵션을 지정하지 않고 링크 파일을 생성하면 하드 링크를 생성할 수 있다.
- 옵션으로 -s를 지정하고 링크 파일을 생성하면 심볼릭 링크를 생성할 수 있다.
권한
- 리눅스의 모든 파일과 디렉터리는 권한(퍼미션)을 가지고 있다.
- 리눅스의 파일 시스템 상에 권한에 대한 정보를 저장하는 부분이 있다.
- 퍼미션들은 시스템 상에 존재하는 파일들에 대한 읽기, 쓰기, 실행에 대한 접근 여부 결정
- ls -l 명령어로 확인 가능
- 이러한 퍼미션은 다중 사용자의 환경을 제공하는 리눅스 환경에서는 가장 기초적인 접근 통제 방법
drwxr-xr--. 3 root root 18 9월 28 22:07 .config
- 총 10개의 문자, 첫 번째 문자는 해당 파일의 종류
- 앞에 root는 소유자 뒤에 root는 그룹
- 두 번째 ~ 열 번째 문자는 권한
- 두 번째부터 열 번째 문자를 세 개씩 끊어서 읽는다.
- rw- : 소유자 권한
- r-x : 관리 그룹 권한
- r-- : 나머지 권한
- 소유자 : 일반적으로 파일이나 디렉터리를 생성한 사용자, 명령어로 변경 가능
- 관리 그룹 : 파일이나 디렉터리를 생성한 사용자가 속한 그룹, 명령어로 변경 가능
- 나머지 : 소유자도 아니고 관리 그룹에 속한 사용자도 아닌 경우
- r : 읽기 권한이 있음
- w : 쓰기 권한이 있음
- x : 실행 권한이 있음
- -: 권한이 없음
권한 설정 방법
- chmod [권한] [파일 또는 디렉터리 이름]
- [권한] : 권한을 입력할 때는 심볼릭 모드와 옥텟(8진수) 모드 2가지 방식을 이용하여 입력 가능하다.
- [파일 또는 디렉터리 이름] : 파일, 디렉터리를 지정할 때는 절대 경로 또는 상대 경로 모두 가능하다.
심볼릭 모드
대상 권한 권한 부여 여부
소유자, u | 읽기, r | 권한부여, + |
관리 그룹, g | 쓰기, w | 권한 회수, - |
나머지 사용자, o | 실행, x |
ex) 소유자에게 쓰기 권한을 준다.
chmod u+w file
옥텟 모드
--- | --x | -w- | -wx | r-- | r-x | rw- | rwx |
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
r : 4, 읽기 권한이 있음
w : 2, 쓰기 권한이 있음
x : 1, 실행 권한이 있음
umask
파일 또는 디렉터리를 생성할 때 권한 값을 결정한다.
기본 권한(8진수) | 기본 권한(문자) | |
파일 | 644 | rw-r- -r- - |
디렉터리 | 755 | rwxr-xr-x |
- 파일이나 디렉터리 생성할 때 기본적으로 권한 값은 파일의 경우 644 디렉터리의 경우 755로 설정된다.
- 이 값은 umask 값에 의해서 결정되는 값으로 파일은 666에서 umask값을 not 연산을 수행 후 둘을 and 연산, 디렉터리는 777에서 같은 방식으로 구해진다.
- umask 값은 umask 명령어를 이용해서 변경 가능하며 재부팅하면 초기화된다. umask의 기본값은 022이다.
- 재부팅 후에도 적용을 시키려면 사용자 초기화 파일에 설정해야 한다.
권한에 따라 영향받는 파일 및 디렉터리 명령어
명령어 | 파일 | 디렉터리 |
읽기 | more, cat, head, tail | ls |
쓰기 | vi 편집기로 내용 수정 | touch, mkdir, mv, cp, rm |
실행 | 파일 이름 | cd |
728x90
'개발 > Linux' 카테고리의 다른 글
프로세스, 아카이브(tar), 압축 (0) | 2022.07.29 |
---|---|
특수권한, 쉘 명령어 (0) | 2022.07.28 |
grep, fgrep, find 명령어 (0) | 2022.07.26 |
리눅스 파일 관련 명령어, vi 명령어 (0) | 2022.07.22 |
리눅스 기초, 디렉터리 관련 명령어 (0) | 2022.07.21 |