Operating System - OpenVMS
cancel
Showing results for 
Search instead for 
Did you mean: 

Restore OpenVMS backup to different platform

 
SOLVED
Go to solution
rbhagwat
Occasional Advisor

Restore OpenVMS backup to different platform

Hi,

Does any of the existing backup softwares like
EMC Networker or Netbackup client on OpenVMS
provide restore of OpenVMS FS backups to
non OpenVMS platforms ?

This is specifically asked as OpenVMS provides
differenet accesses (sequential, direct) and
format (stream, record, variable length record
and indexed) and I was wondering what restore
(if allowed) does when backing up these
files, specifically indexed files.

Thanks,
Rahul
11 REPLIES 11
Hoff
Honored Contributor
Solution

Re: Restore OpenVMS backup to different platform

AFAIK, no such package exists.

On a non-VMS box...

You can restore savesets via the vmsbackup tool:

http://labs.hoffmanlabs.com/node/817

You can potentially access file systems via the ODS tools.

But you end up decoding the file formats yourself. Manually. Both at the RMS layer (unpacking VFC or indexed files, for instance), and also at the application layer as (with the rare exception of a few applications that use CDD or publish SDL definitions) very few applications publish record-level metadata.

It's vastly easier to decode and transmit the data using VMS, and to use VMS as part of your porting project.

There are a few packages which can provide VMS-like run-time environment and translation on other boxes, and various folks can, will and do use VMS emulation.

Generic porting:

http://labs.hoffmanlabs.com/node/225
Steven Schweda
Honored Contributor

Re: Restore OpenVMS backup to different platform

I don't understand what you want to do.

If you take all the bytes in a VMS indexed
file (or a Record format: Variable length
file, or any other non-stream-of-bytes file),
and you plop then down onto a non-VMS system,
then who will know how to read/interpret them
there?

Programs like BACKUP or Info-ZIP Zip can save
all of a file's data and required meta-data
in a form which can be stored anywhere, and
then restored to accurate VMS files on a VMS
system. But that won't make the data useful
on the non-VMS system.

Is there some actual problem which you are
trying to solve?
rbhagwat
Occasional Advisor

Re: Restore OpenVMS backup to different platform

Hi,

I am trying to port a backup/restore software
to OpenVMS from UNIX.

For current UNIX software, we can backup
files and restore them to any other platform
(including Windows).

The question is how does this translate
into OpenVMS specifically for record files
(variable length) and indexed files. It does
not make any sense on non OpenVMS platforms
as you have said. Does it make sense to flatten
out these files and just store their data as
byte stream on other platforms ? Also is
there any software available that supports
this. I checked EMC Networker and it clearly
stated that directed restores (restores out
of place to a different directory or machine) will work only if remote machine
is also OpenVMS.

Thanks,
Rahul
Steven Schweda
Honored Contributor

Re: Restore OpenVMS backup to different platform

> I am trying to port a backup/restore
> software to OpenVMS from UNIX.

Oh, it's _you_ again.

> For current UNIX software, we can backup
> files and restore them to any other platform
> (including Windows).

Well, if all files on UNIX are simply streams
of bytes, and Windows can store a stream of
bytes, then that's not much of a challenge,
is it?

If you have a file which is _not_ simply a
stream of bytes, such as a messy VMS file, or
a Macintosh file with a resource fork, or a
file almost anywhere which has significant
meta-data (ACLs, for example), then I don't
see how you could expect to store all those
extra data without doing some (considerable)
extra work.

There is an "AppleDouble" format which can
use two files on a non-Apple file system
(like, say, FAT) to store all the data in a
single Mac file. (This is typically used for
a FAT-format USB flash EEPROM storage gizmo,
for example.) But, again, these extra data
(in "._name" files) typically can't be used
for anything by a non-Apple OS. (And, from
personal experience, I can say that a cheap
MP3 player may think that "song.mp3" and
"._song.mp3" are two separate songs, and that
one of them (the small one, which contains
the Finder icon position, and so on) doesn't
play well.)

An NFS server on a VMS system may do
something similar when it's required to store
data on a UNIX-like file system.

The remaining mystery is what good any such
file (or files) will be on the foreign
system.

> [...] I checked EMC Networker and it
> clearly stated that directed restores
> (restores out of place to a different
> directory or machine) will work only if
> remote machine is also OpenVMS.

Perhaps there's a very good reason for that
limitation. You can transfer all the bytes
from a VMS file, but without all the
meta-data, _and_ without anyone who can
interpret those meta-data, what's the point?
Hein van den Heuvel
Honored Contributor

Re: Restore OpenVMS backup to different platform

You should probably get in touch with, and possibly aquire the services / advice of Guenther Froehlin.

He has lots of experience in this area, and even is working on some off-box OpenVMS file system reading tools.

For one-off problems it would be best to use an Alpha Emulator end let OpenVMS backup and OpenVMS Convert do their thing! But that does not help your quest.

It might be easier to read the backup directly then it is to restore it to a disk and then have to be able to read the ODS structure.

For those 'funny' files (anything other then STREAM and FIXED length sequential files) it is not too hard to write readers, but you'll have to do something to be able to consume the data on an non-vms platform. Most VMS native text files are Variable Length, to there is the first exercise already to decode that. Next for the indexed file, reading then sequentially be primary key. Nothing too hard, but a fair bit of work, decoding 'buckets', record overhead, compression and so on. I have tools out there to do this to varying degrees.

good luck,
Hein
Hoff
Honored Contributor

Re: Restore OpenVMS backup to different platform

What you're asking is not a simple question.

You're basically asking for a file system tutorial, and then sorting out how that maps into your current backup tool implementation.

You've asked variations of this question a couple of times, so you might well want to engage somebody that understands the VMS file system, and how to get disk blocks onto and off of an OpenVMS disk, and who understands (for instance) the file placement requirements to allow a disk to be bootable on OpenVMS Alpha or OpenVMS I64.

The author of a backup tool needs to understand ODS-2 and ODS-5 in great detail, and the how you will implement the maintenance and reconstitution of the file metadata (which is far more important than the "flat" contents of the files), as well as the low-level disk layout for restoring bootable disks. This includes both the low-level formats used on OpenVMS Alpha (and maybe OpenVMS VAX), and the MBR/GPT formats and overlays on OpenVMS I64.

The VMS file system is entirely different from the typical Unix file systems.

You'll probably be using low-level I/O calls here, as the C library will add in both overhead and complexity (as it tries to make VMS look like Unix), and the results of this will probably derail the effort.

You can certainly also look at how BACKUP or vmsbackup does this, as a starting point. And how TCP/IP Services NFS ADF files, and how zip and unzip use FDL.

Some reading assignments, if you want to follow your current trajectory...

Kirby McCoy's VMS FIle System Internals book
The ODS2.DOC document
The source code for vmsbackup and for zip and unzip.

GuentherF
Trusted Contributor

Re: Restore OpenVMS backup to different platform

"I am trying to port a backup/restore software to OpenVMS from UNIX."

Ay, that is a vague description.

Why would someone backup files on OpenVMS and restore them elsewhere? Only data files with file ORGanization SEQuential and record format (RFM) FIXed or STREAMLF can be used as-is on other platforms.

Any other file organization and record format must be converted to be useable on other OSes.

Other backup/archive software mostly allow you to restore any OpenVMS file on any other platform (e.g. Data Protector (DP), Archive/Backup System (ABS)). Would it make sense? Typically not.

One needs to know the exact requirements for porting the product from Unix to OpenVMS.

/Guenther
Shriniketan Bhagwat
Trusted Contributor

Re: Restore OpenVMS backup to different platform

Hi,

Please refer the below Porting Guidelines Document. May be help full.

http://h71000.www7.hp.com/portability/index.html

Regards,
Ketan
H.Becker
Honored Contributor

Re: Restore OpenVMS backup to different platform

>>>You can potentially access file systems via the ODS tools.
<<<

For Linux there is an read-only ODS5 file system implemented as Linux kernel module. You just mount the VMS device (or LD container) as any other Linux device with a file system and then just use ls and freinds. With it you can read ODS2 files as well. It comes with a tool which understands the various types of record formats.
rbhagwat
Occasional Advisor

Re: Restore OpenVMS backup to different platform

Thanks a lot for everyone's response on this.
I have got some pretty useful answers with
new readings and contact points.

The question also has been answered. Instead
of porting top-down (I started with GNV, Make
etc. which is the usual UNIX-to-UNIX porting).

Now what we are doing is bottom-up approach.
I am writing smaller modules using RMS or
system services (or even CRTL in some cases)
to build small utilities (programs) for FS
operations.

Hoping to consolidate this together and then
fit in upwards.
John McL
Trusted Contributor

Re: Restore OpenVMS backup to different platform

Are you intending reading these files on the non-VMS system or is it only somewhere to store them?

Have you looked at leaving them on the VMS system and accesing them remotely via ftp or similar? Or better yet, having a file server on the VMS system so that it can take full advantage of RMS?