ユーザーが利用可能なすべてのbtrfsディスクスペースを埋めるのを防ぐための最良の方法は何ですか?

ユーザーが利用可能なすべてのbtrfsディスクスペースを埋めるのを防ぐための最良の方法は何ですか?

数年前、私は余裕がないほどディスク容量をすべて埋めるアプリケーションを持っていました。これにより、ある種のデータベースを保持するシステムプロセス(つまり、書き込み)が書き込みに失敗し、そのデータベースが破損します。私はこのような状況を避けたい。

ext2/3/4を使用すると、特権プロセスの書き込みを防ぐために、この目的に合った-mオプションmke2fs(「syslogd(8)などのルート所有デーモンを許可する」)を使用して、一定の割合のディスク容量をスーパーユーザー用にします。予約できます。システムではなくファイルに保存する」)。

しかし、私はスナップショット機能のためにext2/3/4よりもbtrfsを好みますが、btrfsにはそのようなオプションはありません。ディスククォータがありますが、これによりスナップショットパフォーマンスの問題が発生する傾向があり、信頼できないことがわかりました。

もう一つのアイデアは、ユーザーが書くことができるスペースのために別々のパーティションを持つことですが、/homeそして/tmp/var/tmpユーザーが書くことができる場所はもっとありますか?)に対して別々のパーティションを持つことは少し過度に感じます。予測された使用量より多くなければなりません。少しの安全余裕、ディスクスペースの無駄。

他のオプションがありますか?

ベストアンサー1

別のパーティションを使用したいアイデアは、現在動作している唯一のアイデアです。しかし、これは実際にはあまりありません。人々はこの目的のために別々のパーティションを使用してきました。数十年動作するからです。いくつかの一般的なアドバイス:

  • /homeBTRFSを使用していない場合は、別のパーティションにあるものが多くのディストリビューションの標準であるため、すでにすべての主要ソフトウェアでよくサポートされています。 95%のユーザーがファイルの95%をここに保存するので、これが最大の関心事です。
  • /tmp実際には理想的には分割してはいけません。tmpfs独自のサイズ制限付きのマウントになることをほとんど望みます。これは通常、パフォーマンスを向上させ、ディスク容量の浪費を防ぎます。/tmpほとんどの場合、数KBを超えるデータをほとんど保存しないためです。
  • /var/tmpmountになる方が良いかもしれませんtmpfs。特に次のような場合ならさらにそうです。場所RAMと適切な量のスワップスペース。
  • これに加えて、特定のシステム構成に応じて、ユーザーはストレージに/var/libディレクトリ/var/cacheの所望の/var/games/var/lib/gamesのデータを(直接または間接的に)書き込むことができます。例)。個人的に、私は、、とを自分のパーティションに入れて、いっぱいになり始めたら入れます。実際に使用する場合、BTRFSは最善の選択ではないかもしれませんが、ほとんど常に独自のパーティションでなければなりません。/var/mail/var/spool/var/www/var/ftp/var/cache/var/spool/var/lib/var/cache/var/mail
  • 他の場所もあります。公式FHSほとんどすべてのLinuxディストリビューションで使用されている標準レイアウトをリストし、何がどこに行くのかを述べているので、興味深いことがあります。

おすすめ記事