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

공정위 광고 문구 Ver 2.0

리눅스 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

  • 리눅스 chage 명령어

    리눅스 chage 명령어는 change age의 줄임 말로 사용자 계정의 만료 및 비밀번호 만료 설정을 관리 할 때 사용합니다. 주요 기능과 목적은 비밀번호 만료일 설정, 비밀번호 최소 사용 기간 설정, 계정의 비활성화 날짜 설정 등이 있습니다. ✅ chage 명령어 옵션 ✅ chage 명령어 사용 방법 ✅ chage 명령어 사용 예시 계정 만료, 비밀번호 만료…

  • 셸 스크립트: 셸 들여쓰기 및 확장 옵션명[long 옵션명]

    명령어를 길게 사용하다 보면 여러 명령어 줄을 넘겨서 입력하는 경우가 발생합니다. 가독성을 높이기 위해 명령어를 문장 연결 하는 백슬래시(\)를 사용하여 셸 들여쓰기를 할 수 있습니다. 1. 셸 들여쓰기: 백슬래시(\) 백슬래시-라인피드 문자열이며 LF(Line Feed)는 커서를 한칸 아래로 이동하여 새로운 라인을 추가합니다. 2. 확장 옵션명: long 옵션명 보통 명령어 입력 시 축약형을 사용합니다. 셸 스크립트…

  • [우분투] AH00558: apache2: Could not reliably .. server’s fully qualified domain name , using 127.0.1.1. Set

    우분투 서버에서 APM까지 설치 후 서버에서 apache2ctl -t 무결성 및 apache2ctl graceful 명령어 입력 중 server’s fully qualified domain name 오류 메시지를 확인할 수 있습니다. ✅ qualified domain name 경고 메시지 오류가 아닌 경고 메시지로, etc/apache2/apache2.conf 파일에 SeverName에 도메인 주소 또는 다음과 같은 설정을 진행하여 경고 메시지가 뜨는 것을 제거할 수 있습니다. 여러…

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

    리눅스의 Bash Shell에서 다중 명령어를 사용하는 목적은 하나의 라인에서 여러 명령을 실행할 수 있기 때문입니다. 종류는 ⓐ 세미콜론(;) ⓑ 파이프(|) ⓒ 더블 버티컬바(||) ⓓ 엠퍼센트(&) ⓔ 더블엠퍼센트(&&) 등이 있습니다. 1. 많이 쓰는 다중 명령어 세미콜론(;) 하나의 명령어 라인에서 여러 개의 명령을 실행하며, 처음 명령어 실행의 성공, 실패 여부와 상관 없이 다음 명령이 실행됩니다….

  • 리눅스 서버 시간 동기화: timedatectl(CentOS7 이상)

    리눅스에서 날짜 및 시간 설정이 필요한 이유는 서버 운영 중 시간이 잘못되면, 입력되는 DB데이터, 로그 데이터, 웹 서버에 접속한 기록 등의 시간이 맞지 않는 경우가 발생할 수 있기 때문입니다. 리눅스 서버 시간 동기화를 사용하는데 있어 OS는 두 개의 시계를 가지고 있습니다.시스템 시계(소프트웨어 시계), 하드웨어 시계(실시간 시계, BIOS 시계)입니다. ✅ 리눅스 서버 시간 동기화:…

  • 리눅스 리다이렉션(Redirection)

    웹 상에서 리다이렉션(Redirection)은 웹 브라우저가 특정 URL을 요청했을 때, 미리 지정된 다른 URL로 재요청하게 하는 것을 말합니다. 재 연결의 사전적인 의미를 가진 Redirection은 리눅스에서 입력과 출력을 다루는 방식으로, 데이터를 파일로 보내거나 파일에서 읽어오는 작업을 수행할 수 있게 해줍니다. 리눅스 리다이렉션은은 키보드로 입력, 화면으로 출력을 하는 것이 아니라 파일로 출력하는 것을 의미합니다. 리다이렉션에는 표준…

답글 남기기

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

Prove your humanity: 7   +   1   =