/tmp와 /var/tmp의 차이점은 무엇입니까?

/tmp와 /var/tmp의 차이점은 무엇입니까?

대부분의 경우FHS시스템에는 /tmp폴더와 또 다른 /var/tmp폴더가 있습니다. 둘의 기능적 차이는 무엇인가요?

답변1

/tmp빠른(아마도 작은) 저장 공간을 의미하지만 수명이 짧습니다. 많은 시스템이 매우 빠르게 정리됩니다 /tmp. 일부 시스템에서는 RAM 디스크로 마운트되기도 합니다. /var/tmp일반적으로 실제 디스크에 위치하며 용량이 더 크고 임시 파일을 더 오래 보관할 수 있습니다. 일부 시스템은 청소할 수도 있지만 /var/tmp빈도는 낮습니다.

또한 이는 마운트 지점이기 때문에 /var/tmp초기 부팅 중에는 사용하지 못할 수도 있습니다 . 그래서 그것은 와 의 차이 와 비슷합니다 . 첫 번째는 초기 부팅 중에 사용할 수 있으며, 후자는 시스템이 모든 것을 설치한 후에 사용할 수 있습니다. 따라서 대부분의 부팅 스크립트는 대신 임시 파일을 사용합니다 ./var/var/tmp/bin/usr/bin/tmp/var/tmp

임시 파일을 저장하기 위한 Linux의 또 다른 위치는 입니다 /dev/shm.

답변2

/tmp재부팅 시 지워질 수 있습니다(때때로 그렇습니다). /var/tmp재부팅 사이에 보존됩니다.

바라보다FHS에 관한 Wikipedia 기사.

답변3

POSIX 기본 사양, 7호/tmp:

다음 디렉토리는 적격 시스템에 존재해야 하며 설명된 대로 사용해야 합니다.

/tmp

임시 파일을 생성해야 하는 응용 프로그램에서 사용할 수 있는 디렉터리입니다. 애플리케이션은 이 디렉터리에 파일을 생성할 수 있어야 하지만 애플리케이션 호출 간에 이러한 파일이 유지된다고 가정해서는 안 됩니다.

파일 계층 표준 2.3/tmp:

이것/tmp임시 파일이 필요한 프로그램에서 디렉토리를 사용할 수 있어야 합니다.

프로그램은 파일이나 디렉토리가/tmp프로그램 호출 사이에 유지됩니다.

근본적인

IEEE 표준 P1003.2(POSIX, Part 2)는 이전 섹션과 유사한 요구 사항을 부과합니다.

데이터가 저장되어 있지만/tmp사이트별 방식으로 제거될 수 있습니다. 다음에서 권장됩니다./tmp시스템이 시작될 때마다 삭제됩니다.

FHS는 역사적 선례와 관행을 바탕으로 이 권장 사항을 추가했지만 시스템 관리는 이 표준의 범위를 벗어나기 때문에 이를 필수 사항으로 만들지 않았습니다.

POSIX가 지정되지 않았습니다./var/tmp. FHS는 그렇습니다.:

이것/var/tmp이 디렉터리는 시스템을 다시 시작할 때까지 임시 파일이나 디렉터리를 보존해야 하는 프로그램에서 사용할 수 있습니다. 따라서 데이터는 다음 위치에 저장됩니다./var/tmp데이터보다 내구성이 뛰어남/tmp.

파일과 디렉터리는 다음 위치에 있습니다./var/tmp시스템 시작 시 삭제하면 안 됩니다. 데이터가 저장되어 있지만 /var/tmp일반적으로 사이트별 방식으로 제거되므로 다음보다 덜 자주 제거하는 것이 좋습니다. /tmp.

답변4

그들은 동일한 목적과 기능을 가지고 있습니다. UNIX/Linux의 각 버전은 이러한 디렉터리를 다르게 처리합니다. 역사적으로 RAM/스왑 기반 파일 시스템 이전에는 /파일 /usr시스템이 읽기 전용이고 /var(변수) 읽기-쓰기 인 디스크 없는 시스템이 있었습니다 . 이름 /tmp은 에 대한 심볼릭 링크가 됩니다 /var/tmp. 나중에 디스크가 없는 시스템은 더 이상 사용되지 않고 디스크 공간이 더 저렴해졌으며(루트 파일 시스템이 커짐) 기술을 통해 파일 시스템을 디스크 대신 메모리에서 마운트할 수 있었습니다. 이 /var/tmp디렉토리는 더 이상 사용되지 않지만 일부 프로그램에서는 여전히 사용됩니다.

요즘 Windows Phone에서는 더 많은 보안 /tmp(예: g+s,+t권한)이 기본적으로 설정되지만 Windows Phone에서는 설정되지 않습니다 /var/tmp. 또한 /var/tmpRAM이나 스왑을 통한 설치는 거의 수행되지 않습니다.

관련 정보