Copying /dev/* to another partition
Randall Tidd
rtidd at mwunix.mitre.org
Thu May 31 01:09:41 AEST 1990
I am running SunOS 4.1 on a Sun 3/160.
I am trying to clone my root partition to a backup partition (just
root and subdirectories, but *not* other partitions such as /usr,
/home, etc). I ran into a problem when trying to copy /dev; when I
try to cp /dev/sd0a (for example), it will try to read from the device
/dev/sd0a rather than copy the actual file /dev/sd0a.
I started to write a script to do it, but it was hard to parse out the
permissions; I started to write a C program to do it, but ran into
other problems:
# ls -l /dev/fd*
brw-rw-rw 2 root 16, 2 May 29 15:23 /dev/fd0
brw-rw-rw 1 root 16, 0 May 29 15:23 /dev/fd0a
brw-rw-rw 1 root 16, 1 May 29 15:23 /dev/fd0b
brw-rw-rw 2 root 16, 2 May 29 15:23 /dev/fd0c
/dev/fd0 and /dev/fd0c point to the same device (major=16 minor=2),
but one is actually a symbolic link to the other (note "number of
links" field, second field from left). I would have to handle these
cases as well.
Rather than writing a lengthly and probably very ugly C program to do
this, is there an easier way? I would like to keep the permisionns
and number of links intact for each file.
I tried doing a dd if=/dev/sd0a of=/dev/sd1a, but the file system got
really confused; it didn't think there was anything on /dev/sd1a, and
when I erased a couple files it said I was down to -17% capacity!
Any help would be appreciated. Thanks in advance!
Randy Tidd
rtidd at mwunix.mitre.org
#define DISCLAIM TRUE
More information about the Comp.unix.wizards
mailing list