리눅스 tmp 디렉토리: /tmp와 /var/tmp 차이

리눅스 tmp 디렉토리는 임시 파일을 저장하기 위해 주로 /tmp와 /var/tmp 디렉토리를 사용합니다.

/tmp는 일시적인 임시 파일을 저장하는 공간으로, 시스템이 재부팅 되면 대부분의 파일이 삭제됩니다. 따라서 빠른 입출력과 임시 작업에 적합하며, 주로 프로세스가 실행 중 생성하는 임시 데이터를 저장합니다.

반면에 /var/tmp는 재부팅 후에도 파일이 유지되는 임시 저장 공간입니다. 장기간 유지가 필요한 임시 파일이나 작업 중간 저장용으로 사용되며, 일부 애플리케이션에서 중요한 임시 데이터를 보관할 때 사용됩니다.

✅ /tmp와 /var/tmp 차이

/ [ROOT]
├─ /bin -> usr/bin
├─ /boot
├─ /dev
├─ /etc
├─ ...
├─ /tmp [재부팅 시 삭제되는 일시적 임시 파일 저장소]
├─ /usr
└─ /var
    ├─ ...
    └─ tmp [재부팅 후에도 유지되는 장기 임시 파일 저장소]

🔲 /tmp

/tmp 디렉토리는 시스템이나 애플리케이션이 일시적인 데이터를 저장할 때 사용하는 공간입니다. 주요 특징은 다음과 같습니다.

  • 재부팅 시 자동 삭제됨: 대부분의 배포판에서는 /tmp의 파일이 시스템 부팅 시 삭제되도록 설정되어 있습니다.
  • 빠른 접근성과 입출력 성능: 일부 시스템에서는 /tmp를 tmpfs로 마운트하여 메모리 기반으로 운영하기도 합니다.
  • 공용 임시 저장소: 사용자와 프로세스 간의 임시 파일 공유 장소로도 사용됩니다.
  • 보안 주의 필요: 전역 쓰기 가능(writable)이므로, 악의적인 스크립트나 공격 대상이 되지 않도록 권한 설정과 정기적인 정리가 필요합니다.

🔲 /var/tmp

/var/tmp 디렉토리는 재부팅 후에도 삭제되지 않는 임시 파일을 저장하기 위한 공간입니다. /tmp와의 차이점은 파일의 수명과 보존 목적에 있습니다. 주요 특징은 다음과 같습니다.

  • 재부팅 후에도 파일 유지됨: 시스템이 꺼졌다가 다시 켜져도 /var/tmp의 파일은 삭제되지 않습니다.
  • 장기 임시 저장소: 설치 작업 도중 생성되는 큰 임시 파일, 장시간 실행되는 프로세스의 중간 결과물 등이 저장됩니다.
  • 애플리케이션 의존성: 일부 프로그램은 /var/tmp에 저장된 데이터를 기준으로 실행 상태를 판단하거나 복구 작업을 수행하기도 합니다.
  • 보안 및 정리: /tmp와 마찬가지로 누구나 파일을 만들 수 있는 공간이기 때문에, 오래된 파일을 자동으로 지우는 설정(cron이나 systemd-tmpfiles 사용)을 해 두는 것이 좋습니다.
📌 리눅스 tmp 디렉토리 용도 요약
/tmp: 짧은 생명, 휘발성 작업 
/var/tmp:  생명, 지속적인 임시 파일

✅ 리눅스 tmp 디렉토리를 하나로 사용하는 경우

리눅스 tmp 디렉토리를 하나로 사용하는 경우는 다음과 같습니다.

  1. 운영 단순화
     → /tmp 하나만 관리하면 되므로, 디렉토리 권한/보안/정리 정책 등을 설정하기 쉬움
  2. 임시 파일 대부분이 짧은 생명 주기
     → 많은 프로그램들이 재부팅 시 사라져도 되는 임시 파일을 생성함 → /tmp로 충분
  3. tmpfs 마운트 활용
     → /tmp를 메모리 기반(tmpfs)으로 마운트하면 빠른 입출력 제공 가능
     → 디스크 I/O 줄이고 성능 향상
  4. 현대 시스템에서는 /var/tmp 필요성 감소
     → 장기 임시 저장이 필요한 프로그램이 줄었고, 자체 저장 디렉토리를 따로 쓰는 경우가 많아짐
  5. 보안/감사 추적 일원화
     → 하나의 tmp 공간에만 정책 적용 및 모니터링 가능

리눅스 tmp 디렉토리를 하나로 사용하는 이유는 운영 및 보안 관리가 편리하기 때문입니다. 많은 임시 파일이 짧은 생명 주기를 가지므로, /tmp를 tmpfs로 마운트해 빠른 입출력을 제공하는 경우가 많습니다. 다만, 장기 임시 저장이 필요한 경우를 위해 /var/tmp가 별도로 존재하며, 레드햇 8부터는 이 둘의 역할 분담을 유지하면서 보안 정책과 정리 정책을 각각 적용하는 것이 일반적입니다.

📌요약: 운영 편의성 + 성능
리눅스 tmp 디렉토리 콘텐츠: 리눅스 디렉토리 구조

Similar Posts

  • |

    컴파일 뜻 : 컴파일링이란?

    목차✅ /tmp와 /var/tmp 차이🔲 /tmp🔲 /var/tmp✅ 리눅스 tmp 디렉토리를 하나로 사용하는 경우 ■ 컴파일이란? 컴파일(compile)이란 프로그래머가 작성한 소스코드를 바이너리 파일로 변환하는 과정이다. 소스코드를 Compiler 하여 프로그램을 만들 수 있다. 요즘은 배포판 공급업체에서 이미 compile 된 바이너리 파일들을 저장소에 관리하는 것이 일반적인 사항이 되었으며, 서버로 다운로드 후 바로 사용할 수 있다. Ⅰ. 컴파일링과 링킹…

  • [Linux] 다중 명령어 5가지(세미콜론, 파이프, 엠퍼센트..)

    리눅스의 Bash Shell에서 다중 명령어를 사용하는 목적은 하나의 라인에서 여러 명령을 실행할 수 있기 때문입니다. 종류는 ⓐ 세미콜론(;) ⓑ 파이프(|) ⓒ 더블 버티컬바(||) ⓓ 엠퍼센트(&) ⓔ 더블엠퍼센트(&&) 등이 있습니다. 목차✅ /tmp와 /var/tmp 차이🔲 /tmp🔲 /var/tmp✅ 리눅스 tmp 디렉토리를 하나로 사용하는 경우1. 많이 쓰는 다중 명령어 세미콜론(;) 하나의 명령어 라인에서 여러 개의 명령을 실행하며,…

  • 리눅스 who, w 명령어 & user 명령어

    리눅스 who 명령어는 현재 서버에 로그인한 사용자 리스트를 보여주는 명령어입니다. w 명령어는 현재 시스템에 로그인한 사용자와 사용자의 작업 내용을 보여주는 명령어로 각각의 차이가 있습니다. 목차✅ /tmp와 /var/tmp 차이🔲 /tmp🔲 /var/tmp✅ 리눅스 tmp 디렉토리를 하나로 사용하는 경우✅ 리눅스 who 명령어 현재 접속 사용자(USER) 터미널 유형(TTY) 접속 시간 및 IP rocky pts/0, pts/1 .. 2070-02-09…

  • HTTP 상태 코드 표 [100~500] 정리

    HTTP 상태 코드는 운영 중인 서버의 오류를 확인하는 데 매우 중요한 지표로 활용됩니다. HTTP(Hypertext Transfer Protocol)란 웹 서버와 웹 클라이언트 사이에 데이터를 주고 받기 위해 사용되는 프로토콜 중 하나이며, TCP/IP 프로토콜 위에서 동작합니다. HTTP는 HTML, XML과 같은 하이퍼텍스트(Hypertext)만 전송하는 것이 아닌 이미지, 동영상, JavaScript 등의 다양한 파일을 데이터로 전송할 수 있습니다. 목차✅ /tmp와…

  • 리눅스 시스템 로그 정의 및 분류

    리눅스 시스템 로그는 시스템에서 발생하는 다양한 이벤트를 기록하며, 시스템의 상태를 모니터링하고 문제를 진단하는 데 중요한 역할을 합니다. 로그 파일은 시스템의 동작, 오류, 보안 관련 이벤트 등을 기록하고, 관리자는 이를 통해 시스템의 상태를 점검하며 성능을 모니터링할 수 있습니다. 이를 통해 시스템의 원활한 운영을 보장하고, 트러블슈팅 시 중요한 정보를 제공합니다. 목차✅ /tmp와 /var/tmp 차이🔲 /tmp🔲…

  • Linux: crontab 설정

    윈도우 스케줄러와 비슷한 개념의 리눅스 crontab은 주기적으로 홈페이지 및 DB 데이터를 백업해야 하거나 특정 시간에 로그 파일 등을 삭제해서 서버 유지 관리가 필요한 경우에 사용되는 스케줄러입니다. 크론탭은 특정 시간에 주기적으로 작업이 자동으로 이루어지도록 설정하는 것을 의미합니다. 목차✅ /tmp와 /var/tmp 차이🔲 /tmp🔲 /var/tmp✅ 리눅스 tmp 디렉토리를 하나로 사용하는 경우1. 크론탭 자주 사용되는 명령어 vi…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 4   +   6   =