Mam DVD ROM z niektórymi zasobami do nauczania (DVD dla nauczyciela angielskiego Headway Beginner). Kiedy patrzę na DVD z komputera Ubuntu, widzę jeden zestaw plików (który zawiera setup-linux
między innymi plik, chociaż to nie działa).
Kiedy oglądam ten sam dysk DVD z komputera z systemem Windows, widzę inny zestaw plików, w tym setup-windows.exe
plik.
Żadna maszyna nie widzi wszystkich plików, ale niektóre są wspólne dla obu.
Moje pytania to:
- Jak to działa?
- Jak mogę zobaczyć wszystkie pliki podczas korzystania z Ubuntu?
Edycja: nie dzieje się tak, ponieważ pliki są „ukryte” podczas przeglądania w menedżerze plików, elementy niższego poziomu, takie jak „ls -a”, nie ujawniają brakujących plików.
Edycja 2: Używam Ubuntu 18.04 LTS
nautilus
(lub „Files” menedżerze plików gnome), jeśli przejdziesz do trybu przeglądania ikon i klikniesz menu, możesz kliknąć „Show Hidden Files” i powinieneś zobaczyć wszystkie pliki. Jeśli w trybie szczegółów (lub listy) opcja jest nieco ukryta (na moim polu 19.04; przepraszam, nie używam normalnie nautilusa). Windows domyślnie używa flagi fs (system plików) do ukrywania plików, gdzie jako * nix (Ubuntu, dowolny GNU / Linux, apple lub unix) używaj '.' jako pierwszy znak nazwy pliku, który powoduje, że plik jest „ukryty”.ls -a
w Linuksie nie pokazuje brakujących plików. Podobnie jak „Pokaż ukryte pliki” w Eksploratorze Windows.Odpowiedzi:
Nie jestem pewien, czy to poprawna odpowiedź, ale może dostarczy ci szczegółowych informacji, które ci pomogą.
Może tak być, ponieważ MS-Windows i Unix używają różnych systemów plików na DVD - nawet na tym samym DVD. Pliki na nośniku optycznym są zwykle układane przy użyciu protokołu systemu plików określonego w standardzie ISO 9660 (patrz także uwagi na końcu).
Ale standard zezwala na rozszerzenia, a Microsoft zaprojektował własne rozszerzenie standardu o nazwie „ Joliet ”, które umożliwia systemom operacyjnym zgodnym z Microsoft Windows odczytywanie różnych nazw plików z większą liczbą funkcji (dłuższe nazwy i obsługa Unicode) niż standardowy system plików ISO 9660 pozwala.
Dla systemów operacyjnych w stylu uniksowym (takich jak Linux) opracowano inne rozszerzenie o nazwie „ Rock Ridge ”, aby umożliwić stosowanie jeszcze dłuższych nazw plików, uprawnień w stylu uniksowym i kilku innych rzeczy.
Bardzo często zarówno rozszerzenia Rock Ridge, jak i Joliet znajdują się na tym samym nośniku optycznym, ale może się zdarzyć, że twórca tego DVD użył tych rozszerzeń w sprytny sposób, aby wyświetlać tylko pliki związane z MS-Windows w części Joliet system i tylko pliki specyficzne dla systemu Linux są wyświetlane w części Rock Ridge.
isoinfo
Programu omówione w tym Stack Exchange Network odpowiedzi może dostarczyć więcej informacji.Uwagi:
Jak wspomniano w dyskusji w komentarzach, podczas gdy wiele mediów jest nadal autorstwa ISO 9660 i jego rozszerzeń, w których mogą się zdarzyć sztuczki omówione w OP, ISO 9660 jest przestarzały, a nowoczesne media powinny być tworzone przy użyciu UDF (ISO 13346 ), który jest uniwersalnym formatem dysku i pozwala tylko na jeden widok całego systemu plików - więc takie sztuczki prawdopodobnie nie będą możliwe na dysku autorskim UDF.
źródło
isoinfo dev=/dev/dvd -J -ls
pokazuje brakujące pliki w systemie Linux.--norock
i--nojoliet
mount, których możesz użyć w Linuksie, aby zdecydować, który z trzech układów drzewa chcesz zobaczyć.mkisofs
faktycznie, pozwalają określić, jak je wygenerować. Sekcja „Przykłady” na połączonej stronie podręcznika pokazuje, w jaki sposób można utworzyć plik ISO, który ma plik o nazwieREADME
, ale pojawi się z inną zawartością w zależności od systemu używanego do przeglądania dysku CD. Cytując stronę podręcznika: „Prawdopodobnie możliwe są różnego rodzaju dziwne wyniki przy kombinacjach opcji ukrywania ...”Bardzo prawdopodobne, że tabele „rockridge” (unix) i „joliet” (microsoft) odwzorowują odmiennie nazwy plików iso9660. Oba zawierają „mapowanie” w każdym katalogu, które zasadniczo mówi, które rzeczywiste pliki ISO (8 + kropka + 3 znaki) powinny być postrzegane jako dłuższe nazwy. Tak więc każdy plik faktycznie ma 2 nazwy, jedna ograniczona do 8 + 3 znaków, a druga nie.
W Rockridge to mapowanie jest rzeczywistym plikiem, który jest dodawany do każdego katalogu, iirc o nazwie „TRANS.TBL” lub coś w tym rodzaju. Na Jolie jest to wyjątkowo brzydki i głupi hack, w którym „pozycja katalogu” nie jest rzeczywistym plikiem, ale jest zarezerwowana do tego celu.
źródło