タグ付けされた質問 「filesystems」

ファイルシステム(またはファイルシステム)は、データの保存、取得、更新の手順を提供することにより、プログラムの終了後に保持されることが予想されるデータを整理し、データを含むデバイスの利用可能なスペースを管理する手段です。

2
単一のLinuxサーバーで異なるファイルシステムを実行した場合のパフォーマンスへの影響
著書「HBaseの:決定的なガイド」のように述べています 単一のサーバーに異なるファイルシステムをインストールすることはお勧めしません。これは、異なるファイルシステムをサポートするためにカーネルがバッファキャッシュを分割する必要があるため、パフォーマンスに悪影響を与える可能性があります。特定のオペレーティングシステムでは、これがパフォーマンスに壊滅的な影響を与える可能性があることが報告されています。 これは本当にLinuxに当てはまりますか?バッファキャッシュが300 MBを超えるのを見たことがなく、最新のサーバーの多くはRAMがギガバイトであるため、異なるファイルシステム間でバッファキャッシュを分割しても問題はありません。私は何か他のものが欠けていますか?

2
バリアを備えたSATAドライブの書き込みキャッシュの安全性
私は最近、SATAドライブに関する書き込みキャッシュ、NCQ、ファームウェアバグ、バリアなどについて読んでいますが、停電の場合にデータを安全に保つための最適な設定は何かわかりません。 私が理解したことから、NCQを使用すると、ドライブは書き込みを並べ替えてパフォーマンスを最適化し、どのリクエストが物理的に書き込まれたかをカーネルに通知できます。 書き込みキャッシュは、データが物理ディスクに書き込まれるのを待たないため、ドライブがリクエストをはるかに高速に処理できるようにします。 ここでNCQと書き込みキャッシュがどのように混在するかわかりません... ファイルシステム、特にジャーナリングされたものは、特定のリクエストがいつ書き留められたかを確認する必要があります。また、ユーザー空間プロセスはfsync()を使用して特定のファイルを強制的にフラッシュします。fsync()の呼び出しは、ファイルシステムがデータがディスクに書き込まれたことを確認するまで戻りません。 SASドライブでのみ見た機能(FUA、Force Unit Access)があります。これは、ドライブを強制的にキャッシュをバイパスし、ディスクに直接書き込みます。他のすべてについては、書き込みバリアがあります。これは、ドライブでキャッシュフラッシュをトリガーできるカーネルによって提供されるメカニズムです。これにより、重要なデータだけでなく、すべてのキャッシュが強制的に書き込まれるため、たとえばfsync()を使用すると、システム全体が悪用されます。 ファームウェアのバグがあるドライブ、またはデータが物理的に書き込まれた時期について意図的に存在するドライブがあります。 これを言って..ドライブ/ファイルシステムを設定する方法はいくつかあります:A)NCQおよび書き込みキャッシュを無効にするB)NCQのみを有効にするC)書き込みキャッシュのみを有効にするD)NCQと書き込みキャッシュの両方を有効にする バリアが有効になっていると思います。ところで、実際に有効になっているかどうかを確認する方法は? 電力損失の場合、ディスクへのアクティブな書き込み中に、ファイルシステムジャーナルとデータの両方でオプションB(NCQ、キャッシュなし)が安全であると推測します。パフォーマンスが低下する場合があります。 バリアまたはFUAを使用する場合、オプションD(NCQ + cache)は、fsync()を使用するファイルシステムジャーナルおよびアプリケーションにとって安全です。キャッシュで待機していたデータにとっては悪いことであり、それを検出(チェックサム)するのはファイルシステム次第であり、少なくともファイルシステムが(願わくば)不安定な状態になることはありません。パフォーマンスに関しては、より良いはずです。 しかし、私の質問は立っています...私は何かが欠けていますか?考慮すべき他の変数はありますか?これを確認できるツールがあり、ドライブが正常に動作することはありますか?

2
SSDドライブのext3パーティションでの突然の停電後のファイルシステムの破損は「予期される動作」ですか?
私の会社は、内蔵SSDドライブのext3パーティションから起動する組み込みDebian Linuxデバイスを作成しています。デバイスは埋め込まれた「ブラックボックス」であるため、通常は外部スイッチを介してデバイスの電源を切るだけで無作法にシャットダウンされます。 ext3のジャーナリングは物事を整理するので、これは通常は問題ありません。そのため、ログファイルの一部が時々失われることを除いて、物事はうまく動き続けます。 ただし、最近、いくつかのハードパワーサイクルの後にext3パーティションが構造上の問題を発生し始めるユニットを見てきました。特に、ext3パーティションでe2fsckを実行すると、次のような多くの問題が見つかります。この質問の下部にある出力リストに表示されます。エラーの報告(またはパーティションの再フォーマット)が停止するまでe2fsckを実行すると、問題は解消されます。 私の質問は...たくさんの突然の/予期しないシャットダウンにさらされたext3 / SSDシステムでこのような問題を見ることの意味は何ですか? 私の考えでは、これはシステムのソフトウェアまたはハードウェアの問題の兆候である可能性があります。私の理解では、ext3のジャーナリング機能はこれらの種類のファイルシステムの整合性エラーを防ぐはずだと理解しているためです。(注:ユーザーデータはジャーナリングされていないため、ユーザーファイルが変更/欠落/切り捨てられる可能性があることを理解しています。具体的には、以下に示すようなファイルシステムメタデータエラーについて説明しています) 一方、同僚は、SSDコントローラーが書き込みコマンドを並べ替える場合があり、ext3ジャーナルが混乱する可能性があるため、これは既知/予想される動作であると述べています。特に、正常に機能するハードウェアとバグのないソフトウェアが与えられたとしても、ext3ジャーナルはファイルシステムの破損を不可能ではなく不可能にするだけであるため、時々このような問題が発生しても驚かないはずです。 私たちのどちらが正しいですか? Embedded-PC-failsafe:~# ls Embedded-PC-failsafe:~# umount /mnt/unionfs Embedded-PC-failsafe:~# e2fsck /dev/sda3 e2fsck 1.41.3 (12-Oct-2008) embeddedrootwrite contains a file system with errors, check forced. Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Invalid inode number for '.' in directory inode …

4
電源がランダムに切断されるマシンにデータを保存する方法
物理マシンホストで実行されている仮想マシン(Debian)があります。仮想マシンは、ローカルネットワークを介して頻繁に受信するデータのバッファーとして機能します(このデータの期間は0.5秒であるため、かなり高いスループットです)。受信したデータはすべて仮想マシンに保存され、UDPを介して外部サーバーに繰り返し転送されます。外部サーバーが(UDPを介して)データパケットを受信したことを確認すると、元のデータは仮想マシンから削除され、外部サーバーに再度送信されません。VMと外部サーバーを接続するインターネット接続は信頼性が低いため、一度に数日間ダウンする可能性があります。 VMをホストする物理マシンは、ランダムに1日に数回、電源が切断されます。これがいつ発生するかを知る方法はなく、UPS、バッテリー、または同様のソリューションをシステムに追加することはできません。 元々、データは仮想マシン上のファイルベースのHSQLDBデータベースに保存されていました。しかし、頻繁に電源が切れると、最終的にデータベーススクリプトファイルが破損します(ファイルシステムレベルではなく、つまり読み取り可能ですが、HSQLDBは​​それを理解できません)。これが私の質問につながります。 停電が頻繁に発生する可能性がある環境で、データをどのように保存する必要がありますか? 考えられるオプションの1つは、フラットファイルを使用して、データの各パケットをファイルシステム上のファイルとして保存することです。この方法では、電力が失われたためにファイルが破損した場合、それは無視でき、残りのデータはそのまま残ります。ただし、これにはいくつかの問題があり、主に仮想マシンに保存される可能性のあるデータの量に関連しています。各データ間の0.5秒で、10日で1,728,000個のファイルが生成されます。これは、少なくとも、iノード数を増やしたファイルシステムを使用してこのデータを保存することを意味します(現在のファイルシステムのセットアップでは、メッセージが250,000で、使用ディスク容量が30%のiノードが不足しています)。また、管理するのは難しい(不可能ではない)。 他のオプションはありますか?Debianで動作するデータベースエンジンのうち、停電によって破損しないものはありますか?また、これにはどのファイルシステムを使用する必要がありますか?ext3は現在使用されているものです。 仮想マシンで実行されるソフトウェアはJava 6を使用して記述されているため、ソリューションに互換性がないことを願っています。

8
シェルでの拡張子による合計ファイルサイズの計算
luceneインデックスを含むディレクトリのセットがあります。各インデックスは、さまざまなファイルタイプの組み合わせです(拡張子によって区別されます)。例: 0/index/_2z6.frq 0/index/_2z6.fnm .. 1/index/_1sq.frq 1/index/_1sq.fnm .. (約10種類の拡張機能です) ファイル拡張子ごとに合計を取得したい、例えば: .frq 21234 .fnm 34757 .. du / awk / xargsのさまざまな組み合わせを試しましたが、これを正確に行うのは難しいと感じました。


3
Linux:Case-INSENSITIVEファイルシステム
Linuxファイルシステムを大文字小文字を区別しない方法は何ですか? 私はasp.netアプリケーションをWindows上で開発していますが、Linuxに置くと、monoの大文字/小文字のスペルに常に問題があります。 1つの方法は、localhost SMB共有を/ var / wwwにマウントすることです。他に何かありますか?


6
Linuxでファイルのデータブロックを一覧表示するにはどうすればよいですか?
私が理解しているように、Unixライクなオペレーティングシステム上の各ファイルにはiノード番号(「ls -i」で表示できます)があり、各iノードはファイルの実際のデータを含むディスクブロックのリストです。 引数としてファイル名を取り、そのファイルのiノードが指すディスクブロックのリストを出力するLinuxコマンドはありますか? PS問題のファイルシステムはext3です。
13 linux  unix  filesystems  ext3 

8
自分が所有するファイルの「許可が拒否されましたか?」
私のユーザー、bobは、自分が(理論的には所有している)ファイルにアクセスできません。私はFedora Core 8を実行しています。おそらく、伝えるよりも表示する方が簡単です。 > ls -al . total 32 drwxrwxr-x 7 bob bob 4096 May 18 14:33 . drwxrwxr-x 4 bob bob 4096 May 12 15:44 .. drwxr-xr-x 2 bob bob 4096 June 1 14:22 log > cd ./log -bash: cd: log/: Permission denied > ls -al ./log ls: cannot …


5
少数のサーバー間でミラー化されたファイルシステム
いくつかのLinuxサーバー間で1つのディレクトリ(または1つのファイルシステム)をミラーリングまたは複製するソリューションを探しています。理想的なソリューションは、すべてのサーバーに読み取り/書き込みアクセスを許可するものです。また、サーバーの1つがダウンした場合でも、データを失うことなく残りは機能するはずです。 私はいくつかの解決策を見てきました: DRBD:ブロックレベルのレプリケーション、少しやり過ぎのようです。 lsyncd:非常にシンプルに見えますが、パフォーマンスには疑問があります。 GlusterFS:それは良い一致のように思えますが、複製モードが正確にどのように機能するかはまだわかりません。必要な特性はありますか? 他の提案は大歓迎です。


7
「デバイスにスペースが残っていない」理由は他にもありますか?
Ubuntuサーバーシステムで、HDを外部USB 3.0ドライブにバックアップするために、Dirvishを使用しています。数日前までは、すべてが正常に機能していましたが、現在はすべてのバックアップが「デバイスに空き容量がありません(28)」および「ファイルシステムがいっぱい」で失敗します。残念ながら、それほど単純ではありません。デバイスには500 GBを超える空き容量があります。 詳細: rsync_error: rsync: write "/mnt/backupsys/shd/gesichert1/20130223_213242/tree/<SomeFilename1>.eDJiD9": No space left on device (28) rsync: writefd_unbuffered failed to write 4 bytes to socket [sender]: Broken pipe (32) rsync: write "/mnt/backupsys/shd/gesichert1/20130223_213242/tree/<SomeFilename2>.RHuUAJ": No space left on device (28) rsync: write "/mnt/backupsys/shd/gesichert1/20130223_213242/tree/<SomeFilename3>.9tVK8Z": No space left on device (28) rsync: write "/mnt/backupsys/shd/gesichert1/20130223_213242/tree/<SomeFilename4>.t3ARSV": No space …

2
Linuxは同時ディスクIOをどのように処理しますか?
Linuxサーバーが多数の異なるファイルを読み取るための多数の同時要求を処理している場合、次のことを行います。 File_1にシークし、ファイル全体を読み取ってからFile_2にシークし、ファイル全体を読み取ってからFile_3にシークするなど File_1をシークし、その一部を(先読み値まで?)読み取り、File_2をシークし、その一部を読み取り、File_1に戻ってシークし、続きを読み取り、File_3にシークします。等 2番目の場合、サーバーは必要以上に多くのシークを実行しているため、処理速度が大幅に低下します。その場合、私ができるチューニングはありますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.