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

공정위 광고 문구 Ver 3.1
공정위 광고 문구 Ver 3.2(모바일 전용)

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

  • [Linux] mod_ssl.so Apache 모듈 설치하기

    아파치를 사용하는 리눅스 서버에 SSL을 적용하려고 할 때 아피치 모듈 중 mod_ssl.so가 설치되어 있어야 합니다. ✅ mod_ssl.so 설치 ✅ 서버 방화벽 포트 443 열어두기 SSL 포트인 443 포트가 방화벽에서 열려있는 상태로 활성화 되어 있어야 합니다.

  • 리눅스 top 명령어(CPU, 메모리 점유율 확인)

    리눅스 top 명령어는 구동 중인 OS의 상태를 보여주는 명령어이며 table of processes의 뜻을 가지고 있습니다. 총 메모리 사용량, CPU 사용량 등을 보여주며 각 프로세스의 구체적인 메모리와 CPU 사용량을 개별적으로 확인할 수 있습니다. Ⅰ. 리눅스 top 명령어 기본 사용 top 명령어는 대부분 옵션 없이 사용하지만 일반적인 명령어와 동일하게 기본 사용은 옵션과 명령 인자로 이루어져…

  • [Ubuntu] apt 명령어 | apt-get 명령어 사용법과 차이점

    Red Hat 계열 리눅스에서는 패키지 관리를 위해 dnf 명령어를 사용하며, Debian 계열에서는 apt 명령어를 사용합니다. Ubuntu와 같은 Debian 기반 배포판에서는 두 명령어가 모두 사용 가능하지만, 목적과 사용 방식에 따라 약간의 차이가 있습니다. 이 글에서는 apt와 apt-get의 차이를 간단히 비교하고, apt 명령어에서 자주 사용하는 명령어 예제를 함께 정리해보겠습니다. ✅ apt & apt-get 명령어 차이점…

  • 리눅스 file 명령어

    리눅스 file 명령어는 그 파일이 어떤 파일인지 확인하는데 사용되는 명령으로 파일의 파일 타입을 확인할 때 사용합니다. 확인할 수 있는 파일은 텍스트 파일(ASCII 텍스트), 바이너리 파일, 그림 파일 및 동영상 등입니다. 단순하게 파일의 확장자만 확인하는 것이 아닌 파일의 매직파일(usr/local/magic)의 내용을 참조하여 파일 종류를 표시해 줍니다. magic 파일은 특정 파일의 형식을 식별하기 위한 정보를 담고…

  • 리눅스: useradd 명령어 & passwd 명령어

    useradd 명령어는 리눅스에서 사용자의 ID(계정)를 생성하는 명령어입니다. root 권한으로 생성이 가능하며 기본적인 명령은 아래와 같습니다. 리눅스 useradd 명령어 옵션 리눅스 useradd 사용 예 기본으로 사용할 수 있는 예입니다. 리눅스 /etc/skel 디렉토리 계정 생성 시 설정 값이 정의되는 /etc/skel 데릭토리는 사용자를 생성 했을 때 해당 계정의 홈 디렉토리에 기본으로 들어가는 파일이 있습니다. /etc/skel 설정은…

  • 셸 스크립트란? 셸과 셸 프롬프트&bash shell

    ▥ 셸 스크립트란(shell script)? 1. 셸이란? 키보드에 입력한 명령어를 운영체제에 전달해서 전달한 명령어를 실행하게 하는 프로그램이다. 2. 셸 프롬프트 셸 프롬프트는 셸이 입력 가능한 상태일 때에만 나타난다. 달러 ($)는 일반 유저일 때, 해쉬 표시(#)는 터미널 세션이 슈퍼 유저(superuser)의 권한을 가졌을 때 표시된다. (#)는 루트(root) 사용자 로그인 해서 관리자 권한을 가진 것을 의미한다. 3….

답글 남기기

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

Prove your humanity: 4   +   8   =