YYYEJI

[Linux] 리눅스 파일과 디렉토리 본문

Linux

[Linux] 리눅스 파일과 디렉토리

YEJI ⍢ 2022. 7. 17. 19:21
728x90

 

시스템과 관련된 정보와 하드웨어 같은 장치를 모두 파일로 관리하기 때문에 파일과 디렉터리를 이해하는 것은 중요하다. 파일은 관련 있는 정보들의 집합이고 리눅스에서는 파일을 효과적으로 관리하기 위해 디렉터리를 사용하는데 디렉터리는 계층 구조를 가지고 있다.

 

 

< 파일의 종류 >

  • 일반 파일 (Regular file)
    • 데이터를 저장하는데 주로 사용
    • 각종 텍스트 파일, 실행 파일, 이미지 파일 등
    • 텍스트 파일은 내용을 확인하는 명령으로 내용 확인이 가능하며, 문서 편집기를 사용하여 내용을 보거나 편집할 수 있음. 
    • 실행 파일이나 이미지 파일의 경우 데이터가 바이너리 형태로 저장되어 바이너리 파일이라고 하는데 바이너리 파일은 특정 응용 프로그램이 있어야 내용을 확인할 수 있음.

 

  • 디렉터리 (Directory) 
    • 리눅스에서는 디렉터리도 파일로 취급
    • 해당 디렉터리에 저장된 파일이나 하위 디렉터리에 대한 정보가 저장됨.
    • 명령어 더 알아보기 - https://yyyeji.tistory.com/8

 

  • 심벌릭 링크 (Symbolic link) 
    • 원본 파일을 대신하도록 원본 파일을 다른 파일명으로 지정한 것
    • 윈도우의 바로가기 파일과 비슷

 

  • 장치 파일 (Device file) 
    • 하드디스크나 키보드 같은 각종 장치도 파일로 취급
    • 리눅스 시스템에 부착된 장치를 관리하기 위한 특수 파일

 

 

< 디렉터리 계층 구조 >

트리 구조란?

  리눅스에서 파일을 효율적으로 관리하기 위해 디렉터리를 계층적으로 구성하는 구조

 

루트 디렉터리란?

  계층적인 구조에서 모든 디렉터리의 출발점

디렉터리 계층 구조

최상단에 루트 디렉터리(/)가 있고,

그 아래에 bin, dev, kernel, devices, boot, var, tmp, export 등 하부 디렉터리(서브 디렉터리)가 존재한다.

 

 

< 디렉터리의 주요 기능 >

디렉터리 기능
dev 장치 파일이 담긴 디렉터리이다.
home 사용자 홈 디렉터리가 생성되는 디렉터리이다.
root root 계정의 홈 디렉터리이다.
usr 기본 실행 파일과 이라브리러 파일, 헤더 파일 등 많은 파일이 있다.
boot 부팅에 필요한 커널 파일을 가지고 있다.
etc 리눅스 설정을 위한 각종 파일을 가지고 있다.
proc 프로세스 정보 등 커널 관련 정보가 저장되는 디렉터리이다.
run 실행 중인 서비스와 관련된 파일이 저장된다.
srv FTP나 Web 등 시스템에서 제공하는 서비스의 데이터가 저장된다.
tmp 세스템 사용 중에 발생하는 임시 데이터가 저장된다.
var 시스템 운영 중에 발생하는 데이터나 로그 등 내용이 자주 바뀌는 파일이 주로 저장된다.
  • 작업 디렉토리(Working directory or Current directory) - 현재 사용 중인 디렉토리
  • 홈 디렉토리(Home derectory) - 각 사용자에게 할당된 디렉토리로 처음 사용자 계정을 만들 때 지정되는 디렉토리

 

< 절대 경로명과 상대 경로명 >

  • 경로명(Path name) - 파일 시스템에서 디렉터리 계층 구조에 있는 특정 파일이나 디렉터리의 위치 
  • 절대 경로명 
    • 반드시 /로 시작
    • 루트 디렉터리부터 시작하여 특정 파일이나 디렉터리의 위치까지 이동하면서 거치게 되는 모든 중간 디렉터리의 이름을 표시
    • 특정 위치를 가리키는 절대 경로명은 항상 동일

 

  • 상대 경로명 
    • / 이외의 문자로 시작
    • 현재 디렉터리를 기준으로 서브 디렉터리로 내려가면 그냥 서브 디렉터리명을 추가
    • 현재 디렉터리르 기준으로 상위 디렉터리로 가려면 .. 를 추가 
    • 상대 경로명은 현재 디렉터리가 어디냐에 따라 달라짐.

 

 

 

◡̈