Linux

如何創建 ISO 並隱藏某些文件

  • August 20, 2018

我正在嘗試創建執行檔的 ISO 映像通過隱藏 ISO 映像中的幾個文件,因為我希望使用者在 PC(Windows)中打開時只看到 EXE 而不是其他目錄是我的目標 ENV使用者將啟動應用程序。

如果您有一組要合併到 ISO 文件中的目錄,您可以使用以下命令來完成:

% mkisofs -o ~/my_iso.iso -r -J -hide-rr-moved -V "Title of ISO" \
      -graft-points "Directory1/=/home/me/dir1" "Directory2/=/home/me/dir2"

上述命令開關如下:

-o = name of output .iso file
-r = set permissions to 0
-J = output's ISO using Joliet format (useful for Windows users of the final ISO)
-V = Volume ID

-hide-rr-moved = hides the directory RR_MOVED to .rr_moved
-graft-points = specifies names of locations in ISO and what goes into 
               them from local system

隱藏文件

我相信您可以修改上述內容並添加 switch -hide-joliet <pattern>。這將過濾與<pattern>. 例如:

% mkisofs -o ~/my_iso.iso -r -J -hide-rr-moved -V "Title of ISO" \
      -hide-joliet *files_to_ignore* \
      -graft-points "Directory1/=/home/me/dir1" "Directory2/=/home/me/dir2"

注意: --hidden也可用於“隱藏”文件。但這兩個開關都是用詞不當。這些文件仍然存在於磁碟上,任何具有管理員權限的人都可以在磁碟上看到它們。在 ISO 文件系統上設置了一個屬性,指出文件是否隱藏。這個隱藏的工具是特定於 MS-DOS 和 Windows 命令的!

NTFS 屬性

OP 有幾個關於 NTFS 文件系統屬性的問題,例如 H(隱藏)和 S(系統文件)。

屬性,包括:

  • H - 隱藏
  • S - 系統
  • 等等

… 是屬於 NTFS 的文件系統屬性(這些不是文件本身的一部分)。Joliet/UDF 不直接支持這些屬性。我相信 NTFS 屬性(在這種情況下僅支持隱藏)應用於 ISO 中的 UDF/Joliet 文件系統。

引用自:https://unix.stackexchange.com/questions/63288