If you have a set of directories that you want to incorporate into a ISO file you can do it using this command:
% mkisofs -o ~/my_iso.iso -r -J -hide-rr-moved -V "Title of ISO" \
-graft-points "Directory1/=/home/me/dir1" "Directory2/=/home/me/dir2"
The above command switches are as follows:
-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
Hiding files
I believe you could modify the above and add the switch -hide-joliet <pattern>. This will filter any files matching the <pattern>. For example:
% 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"
NOTE: --hidden can also be used to "hide" files. But both these switches are a misnomer. The files are still present on the disk and anyone with admin rights can see them on the disk. There's an attribute that is set on the ISO file system noting whether a file is hidden or not. This hidden facility is MS-DOS and Windows command specific!
NTFS attributes
The OP had several questions regarding NTFS file system attributes such as H (Hidden) & S (System Files).
The attributes, including:
- H - hidden
- S - System
- etc.
... are file system attributes that are part of NTFS (These aren't part of the file itself). These attributes aren't directly supported by Joliet/UDF. I believe the NTFS attributes are applied (in this case only hidden is supported) to the UDF/Joliet file system in the ISO.