TJ_Log
[Linux] 리눅스의 아이노드(inode), 심볼릭 링크(Symbolic link), 하드링크(Hard link)에 대해 본문
[Linux] 리눅스의 아이노드(inode), 심볼릭 링크(Symbolic link), 하드링크(Hard link)에 대해
PTJ 2022. 5. 26. 15:561. 아이노드(inode)란?
- 아이노드(inode)는 유닉스 계통의 파일 시스템에서 사용하고 있는 자료 구조로 파일 또는 디렉터리들의 고유한 정보가 담겨져 있는 중요한 자료구조 입니다.
- 파일 시스템 내에 파일과 디렉토리는 고유한 inode를 가지고 있으며 inode번호를 통해 구분이 가능합니다.
- 사용자가 파일또는 디렉터리에 접근하려고 하면 파일 이름을 사용하지만 내부적으로 파일 이름은 먼저 디렉토리 테이블에 저장된 inode 번호로 매핑되며 그 다음 해당 inode번호를 통해 해당 inode 정보에 액세스 됩니다.
inode 정보 | 설명 |
inode 번호 | inode 고유 식별 번호 |
파일 모드 | 16비트 플래그로 이루어진 파일의 실행 권한. 소유자, 그룹, 기타 사용자의 권한과 파일 형식, 실행 프래그 등을 나타냄 |
링크 수 | 이 inode에 대한 참조 수 |
소유자 id | 파일의 소유자 id |
그룹 id | 파일 소유자의 그룹 아이디 |
파일 크기 | 파일의 크기 |
파일 주소 | 실 데이터가 나오는 파일 주소 |
마지막 접근 정보 | 마지막으로 파일에 접근한 시간 |
마지막 수정 | 마지막으로 파일을 수정한 시간 |
아이노드 수정 | 마지막으로 아이노드를 수정한 시간 |
2. 심볼릭 링크(Symbolic Link)
- 심볼릭 링크는 원본 파일의 inode를 가리키는 정보가 있는 파일입니다. => 윈도우에 바로가기와 유사함
- 원본 파일에 대한 정보가 포함되어 있지 않고 파일 위치를 가르키는 포인터만 포함된 새로운 inode를 가진 링크 파일이 생성됩니다.
- 파일 시스템 또는 디렉토리에 연결할 경우 사용합니다.
- 원본 파일을 삭제하면 해당 파일을 가르키던 심볼릭 링크는 동작을 안하게 됩니다.
- 명령어 ln -s [원본 파일명] [링크 파일명]
3. 하드 링크(Hard Link)
- 하드 링크는 원본 파일의 inode위치를 가르키는 포인터로 심볼릭과는 달리 새로운 inode 생성이 없습니다.
- 일반적인 복사와는 다르게 데이터를 복사한 것이 아니라 inode번호만 복사합니다. 즉 시스템의 데이터는 여전히 1개만 존재 합니다.
- 저장 공간, 성능, 안정성 측면에서도 하드링크가 심볼릭링크보다 우수하며 링크파일을 원본 파일을 다른 위치로 옮겨도 상관없이 동작하게 됩니다. 반면 심볼릭 링크는 동작이 안됩니다.
- 원본 파일을 삭제해도 하드 링크는 inode위치를 가르키므로 하드링크는 동작하게 됩니다.
- 명령어 ln [원본 파일명] [링크 파일명]
4. 그림 요약
'STUDY > Linux' 카테고리의 다른 글
[Linux] chmod 파일 권한관리 명령어 (rwx) (0) | 2022.05.26 |
---|---|
[Linux] 리눅스 쉘(Shell)이란? (0) | 2022.05.26 |
[Linux] 리눅스 명령어 Systemctl 이란 (0) | 2022.05.26 |