rw,nofail,noatime,discard,defaults는 언제 어디서 사용합니까?

rw,nofail,noatime,discard,defaults는 언제 어디서 사용합니까?

저는 OpenStack Cloud를 사용하고 있으며 RHEL 7에서 LVM을 사용하여 볼륨을 관리하고 있습니다. 내 사용 사례에 따라 이러한 볼륨을 다른 인스턴스에 분리하고 연결할 수 있어야 합니다.

fstab을 업데이트하는 동안 지금은 사용하고 있지만 defaults,nofail정확히 무엇을 사용해야 하는지 잘 모르겠습니다. 나는 다음 옵션을 알고 있습니다.

rw, nofail, noatime, discard, defaults 

하지만 어떻게 사용하는지 모르겠습니다. 내 사용 사례에 가장 적합한 구성은 무엇입니까?

답변1

@ilkkachu님 말씀대로,mount(8)맨페이지를 보면 모든 의심이 사라질 것입니다. 맨페이지 인용:

-w, --rw, --read-write
   Mount the filesystem read/write. This is the default. A synonym is -o rw.

수단: 전혀 필요하지 않습니다. rw기본값이고 defaults옵션 의 일부이므로

nofail Do not report errors for this device if it does not exist.

수단: fstab을 사용하여 부팅하고 마운트한 후 장치가 활성화되지 않으면 오류가 보고되지 않습니다. 마운트되지 않은 경우 디스크를 무시할 수 있는지 알아야 합니다. USB 드라이버에는 매우 유용하지만 서버에서 이것을 사용하는 데는 아무런 의미가 없습니다 ...

noatime
   Do not update inode access times on this filesystem (e.g., for faster access on the 
   news spool to speed up news servers).

수단: 읽기 작업이 없는 것은 파일 시스템에서 "순수한" 읽기 작업입니다. cat file예를 들어 약간의 쓰기 작업 만 수행해도 inode이 파일에 마지막으로 액세스한 시간이 업데이트됩니다. 캐싱 서버와 같은 일부 상황에서는 매우 유용하지만 Dropbox와 같은 동기화 기술에서 사용하면 위험할 수 있습니다. 나는 시간이 설정되어 있지 않거나 무시된다면 당신에게 가장 좋은 것이 무엇인지 여기에서 판단할 사람이 아닙니다...

discard/nodiscard
   Controls whether ext4 should issue discard/TRIM commands to the underlying block device 
   when blocks  are  freed.This  is  useful  for  SSD  devices  and  sparse/thinly
   -provisioned LUNs, but it is off by default until sufficient testing has been done.

수단:SSD의 TRIM 기능. 시간을 내어 이 내용을 읽고 귀하의 SSD가 이 기능을 지원하는지 조사해 보십시오(거의 모든 최신 SSD가 이를 지원합니다). hdparm -I /dev/sdx | grep "TRIM supported"SSD에서 트림이 지원되는지 알려줄 것입니다.

현재로서는 다음을 통해 더 나은 성능과 데이터 상태를 달성할 수 있습니다.주기적인 트리밍. fstab​심지어커널 내 장치 블랙리스트큐에 대기되지 않은 작업으로 인해 데이터가 손상될 수 있으므로 지속적인 트리밍이 필요합니다.

defaults
  Use default options: rw, suid, dev, exec, auto, nouser, and async.

tl;dr:귀하의 질문에 대해 rw제거 가능( defaults이미 rw를 암시함)은 nofail귀하에게 달려 있으며 noatime, 동일한 방식 discard은 귀하의 하드웨어 기능에 달려 있습니다.

답변2

매우 중요하다는 정보를 발견했습니다.폐기 마운트 옵션을 비활성화하려면Linux의 SSD(-o nodiscard)에서. 인용문과 링크는 다음과 같습니다.

링크:

https://www.intel.com/content/dam/support/us/en/documents/ssdc/data-center-ssds/Intel_Linux_NVMe_Guide_330602-002.pdf

6페이지 인용문:

"파일 시스템 권장 사항

중요: 파일 시스템 사용 시 블록을 삭제하지 마십시오.

Linux 파일 시스템을 만들 때 폐기 옵션을 끄십시오. SSD 컨트롤러에서 더욱 발전되고 일관된 접근 방식을 통해 SSD가 NVM(비휘발성 메모리)과 호스트 간의 블록과 활동을 관리할 수 있도록 하려고 합니다.

핵심 파일 시스템:

• ext4 – 기본 확장 옵션은 파일 시스템 작성 시 블록을 삭제하지 않고 이를 유지하며 일부 정보에서 지시하는 대로 "discard" 확장 옵션을 추가하지 않는 것입니다.

• xfs – mkfs.xfs에 –K 옵션을 추가하면 블록을 버리지 않습니다.

소프트웨어 RAID를 사용하려는 경우 실행할 워크로드에 따라 128k의 청크 크기를 시작점으로 사용하는 것이 좋습니다. 항상 작업량을 테스트해야 합니다."

보시다시피 제조업체 자체인 Intel은 텍스트에서 5번, 명시적으로 4번, 전문가가 이해하는 논리를 통해 1번 반복할 정도로 요점을 매우 강력하게 강조합니다. 이것은 제조업체의 매우 강조된 내용입니다. 또한 이 SSD는 만만치 않습니다. 몇 년 전의 1,200달러짜리 Intel SSD입니다.

"트림" 옵션이 이것과 어떤 관련이 있는지 모르겠습니다. 나는 문서의 정보를 전달하고 있습니다. 이 문서는 2015년 3월 개정판 2.0에 작성되었으며 Linux 커널 3.19로 업데이트되었습니다(문서 2페이지에 해당 내용이 나열되어 있음).

답변3

defaults,(또는 ,defaults)은 필요하지 않습니다.

예제에서 왜 그것을 사용하는지 모르겠습니다 man fstab:-(.

사용하는 이유 defaults는 옵션을 제공할 필요가 없기 때문입니다. 당신은 필요일부다음 열에 값을 제공하려는 경우 옵션 열에 넣을 단어입니다.

관련 정보