Когда и где использовать rw,nofail,noatime,discard,defaults?

Когда и где использовать rw,nofail,noatime,discard,defaults?

Я использую OpenStack Cloud и LVM на RHEL 7 для управления томами. Согласно моему варианту использования, я должен иметь возможность отсоединять и присоединять эти тома к разным экземплярам.

При обновлении fstab я использовал defaults,nofailfor, но я не уверен, что именно мне следует использовать. Я знаю эти опции:

rw, nofail, noatime, discard, defaults 

Но я не знаю, как их использовать. Какая должна быть идеальная конфигурация для моего варианта использования?

решение1

Как сказал @ilkkachu, если вы посмотрите наmount(8)manpage, все ваши сомнения должны развеяться. Цитата из manpage:

-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).

Означает: Операция No read является "чистой" операцией чтения в файловых системах. Даже если вы только cat file, например, небольшая операция записи обновит время последнего inodeдоступа к этому файлу. Это довольно полезно в некоторых ситуациях (например, на серверах кэширования), но может быть опасно, если используется в технологиях синхронизации, таких как Dropbox. Я не тот, кто может судить, что лучше для вас, если noatime установлен или проигнорирован...

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.

Означает:Функция TRIM от ssds. Не торопитесь, почитайте этого парня и проверьте, поддерживает ли ваш SSD эту функцию (практически все современные SSD поддерживают ее). hdparm -I /dev/sdx | grep "TRIM supported"Он скажет вам, поддерживается ли функция TRIM на вашем SSD.

На сегодняшний день вы можете добиться лучшей производительности и работоспособности данных, если:Периодическая обрезкавместо непрерывной обрезки на вашем fstab. Есть дажечерный список устройств в ядредля непрерывной обрезки, поскольку это может привести к повреждению данных из-за операций, не поставленных в очередь.

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

вкратце:по вашему вопросу, rwможно ли удалить ( defaultsуже подразумевается rw), nofailрешать вам, noatimeрешать вам, точно так же discardзависит только от ваших аппаратных возможностей.

решение2

Я наткнулся на информацию, в которой говорится, что это ОЧЕНЬ ВАЖНОДЛЯ ОТКЛЮЧЕНИЯ ОПЦИИ ОТКАЗА ОТ МОНТАЖАна SSD (-o nodiscard) под Linux. Вот цитата и ссылка:

Связь:

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

Цитата со страницы 6:

«Рекомендации по файловой системе»

ВАЖНО: Не отбрасывайте блоки при использовании файловой системы.

Обязательно отключите опцию discard при создании файловой системы Linux. Вы хотите разрешить SSD управлять блоками и его активностью между NVM (энергонезависимой памятью) и хостом с более продвинутыми и последовательными подходами в SSD Controller.

Основные файловые системы:

• ext4 — расширенная опция по умолчанию не отбрасывает блоки во время создания файловой системы, сохраните ее и не добавляйте расширенную опцию «отбрасывать», хотя в некоторой информации вам будет предложено сделать это.

• xfs – с mkfs.xfs добавьте опцию –K, чтобы не отбрасывать блоки.

Если вы собираетесь использовать программный RAID, рекомендуется использовать размер фрагмента 128k в качестве отправной точки, в зависимости от рабочей нагрузки, которую вы собираетесь запустить. Вы всегда должны тестировать свою рабочую нагрузку."

Как вы видите, сам производитель, Intel, ТАК СИЛЬНО подчеркивает это, что повторяет это ПЯТЬ раз в тексте, ЧЕТЫРЕ явно и один раз через логику, понятную профессионалам. Это ОЧЕНЬ РЕШИТЕЛЬНО со стороны производителя. Кроме того, этот SSD не слабак: это SSD Intel за 1200 долларов, выпущенный несколько лет назад.

Я не знаю, как опция "trim" относится ко всему этому; я передаю информацию из документа. Документ датирован мартом 2015 г., ревизия 2.0, и обновлен до Linux Kernel 3.19 (документ указан на странице 2).

решение3

defaults,(или ,defaults) никогда не требуется.

Я не знаю, почему в примере man fstabон используется :-(.

Причина использования defaultsв том, что вам не нужно предоставлять какие-либо варианты. Вам нужнонекоторыйслово, которое следует ввести в столбец параметров, если вы хотите указать значение(я) для следующего столбца(ов).

Связанный контент