web-dev-qa-db-ja.com

rw、nofail、noatime、discard、defaultsをいつ、どこで使用しますか?

OpenStack Cloudを使用しており、RHEL 7でLVMを使用してボリュームを管理しています。私の使用例に従って、これらのボリュームを切り離して、異なるインスタンスに接続できるはずです。

Fstabの更新中、私はdefaults,nofail今のところ、正確に何を使用すればよいかわかりません。私はこれらのオプションを認識しています:

rw, nofail, noatime, discard, defaults 

しかし、私はそれらを使用する方法はありません。私のユースケースに理想的な構成は何ですか?

7
Krishna Sharma

@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などの同期テクノロジで使用すると危険な場合があります。 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.

手段ssdsからのTRIM機能 。時間をかけてこの人を読んで、ssdがこの機能をサポートしているかどうかを調べてください(ほとんどすべての最新のssdsでサポートされています)。 hdparm -I /dev/sdx | grep "TRIM supported"は、ssdでtrimがサポートされているかどうかを通知します。

今日については、fstabを継続的にトリミングする代わりに、 Periodic trimming を使用することで、パフォーマンスとデータの状態を改善できます。キューに入れられていない操作が原因でデータが破損する可能性があるため、継続的なトリミングには カーネル内デバイスのブラックリスト もあります。

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

tl; dr:質問では、rwを削除できます(defaultsはすでにrwを意味します)、nofailはあなた次第です、noatimeはあなた次第です。同じようにdiscardはハードウェア機能次第です。

12
user34720

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は、SO文章で5回繰り返すことを強く主張しています。明示的に4回、専門家が理解するロジックを通じて1回。これは非常に効率的です。また、このSSDは前向きではなく、数年前の$ 1,200のIntel SSDです。

「トリム」オプションがこれにどのように関係するのか私にはわかりません。文書の情報を伝えています。このドキュメントの日付は2015年3月、リビジョン2.0で、Linuxカーネル3.19に更新されています(このドキュメントには2ページ目に記載されています)。

4
Brad Allen

defaults,(または,defaults)は必要ありません。

man fstabの例がそれを使用する理由がわかりません:

defaultsを使用する理由は、オプションを提供する必要がない場合です。次の列に値を提供する場合は、オプション列に入力する---(some Wordが必要です。

1
sourcejedi