noatime으로 파일 시스템을 마운트 할 때의 단점은?


63

파일에 액세스 할 때마다 모든 파일을 업데이트하는 것은 낭비처럼 들립니다.

noatime 옵션으로 파일 시스템을 마운트 할 때 가장 중요한 점은 무엇입니까? 어떤 종류의 응용 프로그램 / 서버가 액세스 시간에 의존합니까?

답변:


48

상대성을 고려하십시오.

새로 설치 한 경우 (~ 2008) relatime mount 옵션을 사용할 수 있습니다 . 이것은 내가 생각하는 시간에 좋은 타협입니다. 이 새로운 옵션 구현에 대한 커널 트랩 토론 에서 :

"이전 atime이 mtime 또는 ctime보다 오래된 경우 상대 atime 만 atime을 업데이트합니다. noatime과 유사하지만 파일을 마지막으로 수정 한 후 파일을 읽은 시점을 알아야하는 mutt와 같은 응용 프로그램에 유용합니다."

따라서 시간이 필요한 대부분의 응용 프로그램은 계속 작동하지만 디스크로드는 줄어 듭니다. 최근 Ubuntu 데스크탑 배포판의 기본값입니다.

Noatime 및 Nodiratime과 관련하여 :

당신이가는 경우 noatime으로 파일을, 내가 사용하지 않는 이유가 궁금 nodiratime 이외에 noatime으로 그래서 당신은뿐만 아니라 디렉토리에 대한 액세스 시간을 업데이트하지 않습니다.

언급되지 않은 시간을 유지하는 다른 이유는 감사 목적입니다. 그러나 누가 액세스했는지는 언제 유지 되지 않기 때문에 감사 추적에 유용하지 않을 수 있습니다.

이 모든 옵션은 'man mount 8'에서 찾을 수 있습니다.


1
+1 relatime은 noatime의 장점이 있으며 단점도 없습니다.
David Pashley

9
이것에 대해 좀 더 읽어 보면, noatime에는 nodiratime도 포함되어있는 것 같습니다 (몇 년 전은 아니었지만)
nos

Linux 2.6.30 relatime이 기본값이므로 참고하십시오. 그러나 파일의 마지막 액세스 시간은 1 일이 지난 경우 항상 업데이트됩니다. 이는 일일 백업 프로세스 또는 대규모 maildir 검색에서 여전히 불필요한 I / O 영향을 미칠 수 있음을 의미합니다.
rudimeier

18

특정 기간 동안 파일에 액세스하지 않은 경우 파일을 보조 저장소로 옮기는 응용 프로그램이 있습니다. 분명히, 그들은 시간이 필요합니다.

그 외에는 특히 요즘 파일 관리자가 미리보기를 생성하기 위해 파일을 여는 경향이 있으므로 디렉토리를 탐색하는 동안 시간을 ​​수정하는 경향이 있기 때문에 더 이상 사용하지 않을 것입니다.

요즘에는 항상 noatime으로 마운트합니다.


15

예를 들어 Mutt 가 마지막 방문 이후 폴더가 새 메일을 받았는지 여부를 확인할 수없는 등 일부 응용 프로그램이 거의 없습니다.

일반적으로 나와 다른 사람들 은 noatime을 마운트하는 것이 좋습니다.


3
그럼에도 불구하고 mbox 상점에만 적용됩니다. 어떤 사람들은 당신이받을 자격이 있다고 말합니다.
Dan Carley

noatime을 사용하지 마십시오. 대신 상대 시간을 사용하십시오. Kyle의 답변을 참조하십시오.
David Pashley

Relatime은 옵션에 비교적 새로운 추가 사항입니다. 이전 커널이있는 경우 (즉, 여전히 Debian / Sarge 기반 시스템을 실행중인 경우) 없을 수 있습니다.
David Spillett

9

아직 언급되지 않은 주요 단점은 tmpreaper 프로세스 (즉, 한동안 액세스하지 않은 / tmp의 파일을 삭제하는 프로그램)가있는 경우 여전히 사용중인 tmp 파일을 삭제할 수 있다는 것입니다.

relatime은 noatime보다 더 나은 옵션입니다. 마지막 atime 업데이트 이후 파일이 수정 된 경우에만 atime 만 업데이트됩니다. 이것은 메일 클라이언트에게 명백한 이점이 있습니다. 여전히 tmpreaper 문제를 해결하지는 않습니다 (파일을 쓰지 않고 / tmp에서 파일을 읽을 수 있음).

전반적으로 단점은 미미하고 (특별한 경우를 제외하고는 존재하지 않음) 성능상의 이점이 상당합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.