問題タブ [inode]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - PHPを使用してファイルiノードを取得するより高速な方法
PHP でファイルの i ノードを取得するには、次のようにします。
これに関する問題は、どこでも遅いと言っているので、避けるべきです。それで、問題はそれを行うためのより速い(より)方法は何ですか?
c++ - 500,000 個のファイルを含むディレクトリでのクイック ファイル アクセス
500,000 個のファイルを含むディレクトリがあります。できるだけ早くアクセスしたいと思います。アルゴリズムでは、それらを繰り返し開いたり閉じたりする必要があります (500,000 個のファイルを同時に開くことはできません)。
どうすればそれを効率的に行うことができますか?私は当初、inode をキャッシュしてその方法でファイルを開くことができると考えていましたが、*nix は inode (セキュリティなど) によってファイルを開く方法を提供していません。
もう 1 つのオプションは、それについて心配せずに、ディレクトリ内のファイル検索で FS が適切に機能することを期待することです。それが最良の選択肢である場合、どの FS が最適に機能するでしょうか。特定のファイル名パターンは、他のパターンよりも速く検索されますか? 例: 01234.txt と foo.txt
ところで、これはすべて Linux 上にあります。
inode - スーパーブロックを読む
Unix(具体的にはMac OS X)では、スーパーブロックは、iノードが開始および終了するディスクアドレスなど、ディスク上のデータのレイアウトに関する情報を格納することを知っています。プログラム内のiノードのリストをスキャンして、削除されたファイルを探します。iノードが始まるディスクアドレスを見つけるにはどうすればよいですか?statfsコマンドを見ましたが、この情報は提供されません。
linux - すべての inode はどこで使用されていますか?
すべての inode を消費する原因となっているディレクトリを特定するにはどうすればよいですか?
最終的には、ルート ディレクトリが最大数の inode を担当することになるため、どのような回答が必要なのか正確にはわかりません..
基本的に、使用可能な inode が不足しており、不要なディレクトリを見つけて選別する必要があります。
ありがとう、漠然とした質問でごめんなさい。
linux - inode の使用を解放する方法は?
inode 使用率が 100% のディスク ドライブがあります (df -i
コマンドを使用)。ただし、ファイルを大幅に削除した後、使用率は 100% のままです。
その場合どうするのが正しいのでしょうか?
ディスク スペースの使用量が少ないディスク ドライブが、ディスク スペースの使用量が多いディスク ドライブよりも I ノードの使用量が多い可能性があるのはなぜですか?
大量のファイルを圧縮すると、使用inode
回数が減る可能性はありますか?
c - Linuxでファイルを最後に変更したUIDを特定しますか?
選択したファイルとディレクトリの変更を監視するプログラムを作成しています。一部のファイルは誰でも書き込み可能で、一部の所有者、一部のグループです。
私がする必要があるのは、ファイルを(アクセスするだけでなく)最後に変更した人を見つけることができることです。ファイルのiノードがわかっているので、どういうわけかこれは簡単だと思いました。しかし、これを取得する方法が見つからないようです。特定のiノードを最後にアクセスしたuidに関連付ける実用的な方法があると思いました。
私はそのトピックについて私に与えるすべてのことのためにグーグルを絞ったと思います。
どんな助けでも大歓迎です。私はCでプログラムを書いています。
編集:
ファイルを変更したプログラムのPIDが長い間なくなった後、これを実行できるようにする必要があります。
linux - アップロード中のファイルに対して Perl が move() を呼び出そうとするとどうなりますか?
誰かがサイズ 10Mb のファイルを Linux サーバー上のフォルダーに FTP 送信しています。ファイルが遷移している間、cron が起動し、ftp フォルダーを調べてそこにあるものを別のフォルダーに移動するように設計された Perl スクリプトを起動します。File::Copymove()
の関数を使用しています。Perl プロセスは、実際にはそのタスクの一部としてファイルの名前を変更します。それは重要ですか、それとも FTP はファイル システムがファイルをどのように記述しているか気にしませんか?
move()
成功して部分的なファイルを移動し、FTP を残して何をしますか? それとも、移動に失敗して 0 を返しますか?
data-structures - iノード番号のデータ構造はどのようなものですか?
iノード番号の定義に驚かされます。
iノードは、UFSやext3などの従来のUnixスタイルのファイルシステム上のデータ構造です。iノードは、通常のファイル、ディレクトリ、またはその他のファイルシステムオブジェクトに関する基本情報を格納します。ソース
したがって、すべてのiノード番号には論理的な順序が必要です。正面の数字から直接結論を出すことができますか?
そうでない場合、データ構造のおかげでどのようなことを知ることができますか?
linux - 特定のiノードへのリンク
削除されたファイルがありますが、プログラムを開いたままになっています。lsofを使用してiノード番号を見つけました。そのiノードに戻るハードリンクを作成するにはどうすればよいですか?
どんなコードでも役に立ちますが、Perlは便利です。
ubuntu - Ubuntu で異なるオブジェクトの同じ inode 番号を理解するには
/sys/devices/platform/power
/cdrom の inode 番号がUbuntuと同じなのはなぜですか?
以下は私のUbuntuで同じiノード番号を持っています
ルートで次を実行して取得します
レフラーの答えに返信する
走る
私は得る
この情報は何を教えてくれますか?
Leffler の編集への返信
多くの場合、デバイス番号をメジャー デバイス番号とマイナー デバイス番号に分解できます。これは、'ls -l' がデバイスに対して出力するものです。
このコマンドls -l cdrom
は私にこれを与えます
ここからデバイスのメジャー番号とマイナー番号をどのように確認できますか?