List of ods5 specific mount options
- option bs=blocksize
ODS-2/5 disks have a default blocksize of 512 bytes. CDs/DVSs when formatted with
ODS-2/-5 have a blocksize of 2048 bytes. Disk images usually have the size of the disk,
but comtainer files can be any size (and multiple of 512 byte blocks).
To optimize the I/Os for the ods5 filesystem the blocksize can be set with the bs option.
Default is bs=512. Other possible values are 1024, 2048 and 4096. For CDs one would use bs=2048, for
disk images or container files - if they are a multiple of 4096, any of these values
can be used. Actually, you can use bs=4096 on most of the disk images and even hard disks
as long as the last blocks of that device aren't used. But in case of using a non-default value
and the ods5 file system reports an "Input/output error", mount the file system without the
bs option and try again.
- option dirless (not yet implemented)
Directories always have the suffix '.DIR;1'. That can be suppressed for
input and output. The
master file directory shows as '000000'. This does not conflict with a file
that has a name '000000'. That file will show as '000000.;1'.
This will make it easier to look
at /mnt/000000/000000/000000/ which is - as we know - still the
masterfile directory.
- option dotversion
Change the ';' to something easier to deal with in shells: '.'. Then the
master file directory will be '000000.DIR.1' and the file
'.;1' will be '..1'. A dot shows in the output of 'ls' and can be used as
input as well. (For input this in not new for VMS users, but that doesn't
matter, here.) However, the dotversion option is silently disabled when the
syml option is also specified.
- option home=lbn
Use an alternate home block with the specified block number, a non-zero
decimal value.
By default ods5 uses lbn 1, the second block on the disk,
also known as the primary home block (lbn zero
usually is the boot block). VMS disks that are initialized with a GPT,
do not have a primary home block: the primary GPT header is at lbn 1.
Then a secondary or alternate home block is used. It is usually the second useable
block of such a disk. VMS disks initialized on Integrity servers or
x86 systems by default have a GPT. (Unfortunately only VMS system
disks have the GPT populated.)
# od -Ax -tx1z -N 0x200 -j0x200 vmsgpt.dsk 000200 45 46 49 20 50 41 52 54 00 00 01 00 5c 00 00 00 >EFI PART....\...< 000210 6d ce b5 c2 00 00 00 00 00 00 00 00 00 00 00 00 >m...............< 000220 d0 ff 61 00 00 00 00 00 30 00 00 00 00 00 00 00 >..a.....0.......< 000230 cf ff 61 00 00 00 00 00 20 eb e1 60 c1 95 ef 11 >..a..... ..`....< 000240 bf 3b 00 1b 78 9f 74 77 00 00 00 00 00 00 00 00 >.;..x.tw........< 000250 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >................< * 000400 #The first useable disk block is at offset 0x28 within the GPT header.
# od -Ax -j 0x228 -N 8 -tdL vmsgpt.dsk 000228 48 000230 #That is, the home block is in the second useable disk block at lbn 49.
# mount -v -o ro,loop -t ods5 -o home=49 vmsgpt.dsk /mntVMS installation DVDs (or CDs) do not have a primary home block or a GPT. Also, on Non-GPT VMS disks with a corrupted primary home block there may be good secondary or alternate home blocks. For these types of VMS disks the home block candidates need to be searched. For example with (depending on the size of the disk, the input to od should be limited):
$ od -Ax -tx1z small.dsk |grep DECFILE11B 0047f0 44 45 43 46 49 4c 45 31 31 42 20 20 00 00 01 c6 >DECFILE11B ....< 0049f0 44 45 43 46 49 4c 45 31 31 42 20 20 00 00 05 c6 >DECFILE11B ....< # printf "%d\n" $((0x47f0/512)) 35 # mount -v -o ro,loop -t ods5 -o home=35 small.dsk /mnt- option mode=omask