Link to home
Start Free TrialLog in
Avatar of Trigger_Hippie
Trigger_Hippie

asked on

Ufsdump over network

Hi guys.

I'm trying to do a ufsdump of a partition over a network. This is what I have done so far:

--> on the machine where I'm getting the data from
share slice -->  vi /etc/dfs/dfstab
share -F nfs -d "opt" /opt
/etc/init.d/nfs.server start

then

--> on the machine I'm trying to dump to

mount /dev/dsk/c0t1d0s3 /opt2
mount 192.168.0.72:/opt /opt3

So far so good.  

--> Now i try to dump opt3 to opt2:
ufsdump 0f - /opt3 | (cd /opt2; ufsrestore xf -)

and i get the following:
 
 DUMP: `/opt3' is not on a locally mounted filesystem
  DUMP: The ENTIRE dump is aborted.
Volume is not in dump format

Please help!
Avatar of gripe
gripe

Are you trying to just move /opt from one machine to /opt2 on another machine? It would be easier and likely faster to just use the 'cp' utility to do this. What type of UNIX are you using?

On many types of UNIX, you can simply mount your directories as you have already done and on the machine you want to copy to, issue the following command:

cp -Rp /opt3/* /opt2

This will copy *recursively* all of the files in /opt3 to /opt2. It will reproduce (not follow) symlinks and will create directories as per normal. You can 'follow' symlinks as if they were actual directories/files by issuing '-r' instead of '-R' but this is likely not what you want (nor is it what ufsdump would do)

I suggest reading the man page for cp prior to issuing any commands just to verify that the behaviour is what you want. Or you can reply with your UNIX type and I'll try to help.
As gripe aluded to.... What is the problem you are trying to solve?

If it is a one-time copy of the filesystem, then something like this will work best (cp actually has some issues with things like sym-links):

  (cd /opt3 && tar cf - .) | (cd /opt2 && tar xf -)

If it's keeping the two in sync, then you want something like rsync (http://samba.anu.edu.au/rsync/) possibly tunneled over SSH (www.openssh.org) if you have any care for security.

If it's doing backups, then you want to go to tape, CD-R, or DVD-R - not disk. If you don't have a tape drive on all the systems, you can do something like this
  ssh other-server ufsdump options, etc. > /dev/rmt/some-device
ASKER CERTIFIED SOLUTION
Avatar of jlevie
jlevie

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Avatar of yuzh
yuzh

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of Trigger_Hippie

ASKER

The O/S is Solaris 8.  

I guess what I should have pointed out is that I eventually want to copy the entire disk (all partitions) over including root to get a bootable copy.

SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
You can replicate this system over the network to a disk on another box, you just have to run ufsdump on this box and send the data to the other system. And then you'll need to make the result bootable with installboot.
"Umm, wouldn't it be easier to do this with JumpStart?"

I haven't used jumpstart before?  Where/how do i get started?
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Jumpstart is just a way of automating the installation of Solaris, and that presumes that you already know how this system was installed and configured. To some degree third party packages can be added as a part of a Jumpstart, and naturally patches can be applied. Of course if you know all of that you could manually install Solaris on another systen and set it up like this one.

It is worth the effort to set up Jumpstart only if you need to be able to semi-automatically install a number of machines with similar configurations. In my opinion it would be a waste of time and effort to do so for a single duplicate.

Using an NFS mount of the target of the ufsdump, or rsh (per yuzh's suggestion) is going to be the most efficient solution to duplicate a single machine. Actually, the fastest way is to attach the target disk to this system and use ufsdump/ufsrestore to replicate the system directly to the target disk.
Keep in mind that
a) ufsdump reads directly from the (local, raw) disk device
b) can write to a local tape or a remote tape (via network)

Locally attached tape device:
ufsdump 0f /dev/raw-disk /dev/tape

Tape device on antother machine (rsh access must be allowed):
ufsdump 0f /dev/raw-disk server:/dev/tape