WindowsとLinuxでDVD ROM上の異なるファイルが表示されるのはなぜですか?


80

いくつかの教育リソースが収録されたDVD ROMがあります(Headway Beginnerの英語教育教師用DVD)。UbuntuマシンからDVDを見ると、1セットのファイルが表示されます(これにはsetup-linuxファイルが含まれていますが、機能しませんが)。

Windowsマシンから同じDVDを見ると、ファイルを含む異なるファイルセットがsetup-windows.exe表示されます。

どちらのマシンもすべてのファイルを認識しませんが、両方に共通するものがあります。

私の質問は:

  1. これはどのように作動しますか?
  2. Ubuntuを使用しているときにすべてのファイルを表示するにはどうすればよいですか?

編集:これは、ファイルマネージャーで表示したときにファイルが「非表示」になっているためではなく、「ls -a」などの低レベルのものは、欠落しているファイルを表示しません。

編集2:Ubuntu 18.04 LTSを使用しています


どのUbuntuリリースを使用しているのかはまだ説明していませんが、nautilusアイコン表示モードに移動してメニューをクリックすると、「隠しファイルを表示」をクリックすると表示されます。すべてのファイル。詳細(またはリスト)モードでオプションが多少非表示になっている場合(19.04ボックスでは、申し訳ありませんが、通常nautilusは使用しません)。Windowsはデフォルトでfs(ファイルシステム)フラグを使用してファイルを非表示にします。* nix(Ubuntu、GNU / Linux、appleまたはunix)は「。」を使用します。ファイルを「非表示」にするファイル名の最初の文字として。
ギベルク

2
これは隠しファイルではありません-Linuxで使用ls -aしても欠落ファイルは表示されません。また、Windowsエクスプローラーの「隠しファイルを表示」も行いません。
spookylukey

回答:


112

これが正しい答えであるかどうかはわかりませんが、おそらくあなたに役立つ詳細を提供するでしょう。

これは、MS-WindowsとUnixがDVD上の異なるファイルシステムを使用しているためである可能性があります(同じDVD上であっても)。光学媒体上のファイルは、通常、ISO 9660標準で指定されたファイルシステムプロトコルを使用して配置されます(最後の注も参照)。

しかし、この標準では拡張子が許可されており、Microsoftは、Microsoft Windows互換オペレーティングシステムが標準のISO 9660ファイルシステムよりも多くの機能(長い名前とUnicodeをサポート)で異なるファイル名を読み取ることができる「Joliet」と呼ばれる標準の独自の拡張を設計しました許可します。

Unixスタイルのオペレーティングシステム(Linuxなど)の場合、「Rock Ridge」と呼ばれる別の拡張機能が開発され、さらに長いファイル名、Unixスタイルのアクセス許可などを許可しました。

ロックリッジとジョリエットの両方の拡張機能を同じ光学メディアに配置することは非常に一般的ですが、そのDVDの作成者はこれらの拡張機能を巧妙な方法で使用して、MS-Windows関連のファイルをシステムは、システムのロックリッジ部分にLinux固有のファイルのみを表示します。isoinfoで議論プログラムこのstackexchangeの答えは、より多くの情報を提供するかもしれません。

ノート:

コメントでの議論で述べたように、多くのメディアはまだISO 9660とその拡張機能で作成されていますが、OPで説明されている種類のトリックが発生する可能性がありますが、ISO 9660は廃止され、UDFを使用して現代のメディアを作成する必要があります(ISO 13346 )これはユニバーサルディスクフォーマットであり、ファイルシステム全体の単一ビューのみを許可します。そのため、UDFオーサリングディスクではこのようなトリックはおそらく不可能です。


27
おかげで、それで十分でしisoinfo dev=/dev/dvd -J -lsた-Linuxで欠落しているファイルを示しています。
spookylukey

25
かなり良い答えですが、欠落している重要な詳細の1つは、3つのツリーレイアウトのどれを表示するかを決定するためにLinuxで使用できるオプション--norock--nojolietマウントオプションです。
カスパード

8
うわー、実際に驚くほどエレガントです。
、軌道上の軽度レース

4
mkisofs実際にいくつかのツールを使用すると、それらの生成方法を指定できます。リンクされたマニュアルページの「例」セクションは、という名前のファイルを持つISOを作成する方法を示していますがREADME、CDの表示に使用しているシステムに応じて異なる内容で表示されます。manページを引用すると:「おそらく、非表示オプションの組み合わせにより、あらゆる種類の奇妙な結果が発生する可能性があります...」
Herohtar

3
コメントにUDFの言及があることはうれしいですが、議論に関連しているのかわかりません-OPのDVDのファイルシステムがユニバーサルフォーマットである場合、異なるビューを取得することはできません私の知る限り、WindowsとLinux。
グス

0

おそらく、「rockridge」(unix)および「joliet」(microsoft)テーブルは、生のiso9660ファイル名を異なる方法でマップします。どちらにも、各ディレクトリに「マッピング」が含まれており、基本的にどの実際のisoファイル(8 + dot + 3文字)をどの長い名前として表示するかを指定します。したがって、各ファイルには実際には2つの名前があり、1つは8 + 3文字に制限され、もう1つはそうではありません。

rockridgeでは、このマッピングは各ディレクトリに追加される実際のファイルであり、「TRANS.TBL」などのiircです。「ディレクトリエントリ」は実際のファイルではなく、この目的のために予約されているという、非常にく愚かなハックです。


追記を忘れました:Windowsはjolietのみをサポートします(そこでは驚きはありません)が、Linuxおよび他のほとんどのUNIXシステムではデフォルトでrockridgeが優先されますが、Linuxは両方をサポートします(驚きもありません)。ただし、いずれか、または両方を無効にするマウントオプションがあります。両方を無効にすると、exの場合と同様に、短い8.3ファイル名が表示されます。DOSまたはWindows 3.x以前。使用するファイルマネージャとデスクトップ環境によっては、コマンドを入力せずに「ユーザーフレンドリー」な方法があるかもしれません:)
delt
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.