IRIX Network Forums
Clone system disk to larger disk - Printable Version

+- IRIX Network Forums (//forums.irixnet.org)
+-- Forum: SGI/MIPS (//forums.irixnet.org/forum-3.html)
+--- Forum: Beginners' Questions/Tips (//forums.irixnet.org/forum-6.html)
+--- Thread: Clone system disk to larger disk (/thread-702.html)



Clone system disk to larger disk - bjames - 11-24-2018

I have a 4 gig system disk that is 98% full.  I want to copy the entire contents to a larger 73gig drive.  The contents is irix and all my apps.

What is the best way to do this instead of reinstalling everything’s no from scratch.


RE: Clone system disk to larger disk - gijoe77 - 11-24-2018

insert second disk, "fx" it to be a root disk, run this script (as in save it, name it "clone", as root do "./clone 2" if your new disk will have scsi id of 2, then type 0 if its on scsi controller 0):


Code:
#!/bin/sh
# program to copy root & usr partitions and create a new bootable disk
# Note that this script is limited to SCSI drives, and only those
# on controller 2.
# It makes the root & usr filesystem on partition 0 & 6 for destination drive
# and install sash, ide & fx in the volume header of  the destination drive.

if [ $# -eq 0 ]
then
       echo "Usage $0 [disk_number]"
       exit 1
elif [ $1 -eq 1 ]
then
       echo "The disk number needs to be greater than 1."
       exit 1
elif [ $1 -le 1 ]
then
       echo "The disk number needs to be greater than 1."
       exit 1
else
       NUM=$1
fi

echo "\nSource SCSI (system)disk 1"
echo "\nDestination SCSI controller:  \c"
read SCSI_C
echo "\nDestination SCSI Controller channel "$SCSI_C" disk "$NUM""
echo "\007OK? (n)\c"
       read answer
       case "$answer" {
       y|Y|yes|Yes|YES) ;;
       *) echo "\007\n\nAbort"; exit 1;;
       }


echo "\nChecking SCSI disk"$NUM".."
hinv -c disk | grep -s "unit $NUM on SCSI controller $SCSI_C" > /dev/null 2>&1
if [ $? -ne 0 ]
then echo SCSI disk $NUM not found on controller $SCSI_C
       exit 1
fi

(prtvtoc -s -h /dev/rdsk/dks"$SCSI_C"d"$NUM"vol | grep "0.*xfs" ) > /dev/null 2>&1
if [ $? != 0 ]
then
       echo "reformat disk $NUM on SCSI controller $SCSI_C\n"
echo "for a system disk (no partition 0 found)"
       exit 1
fi

/etc/fsstat /dev/dsk/dks"$SCSI_C"d"$NUM"s7 > /dev/null 2>&1
s7=$?
/etc/fsstat /dev/dsk/dks"$SCSI_C"d"$NUM"s6 > /dev/null 2>&1
s6=$?
/etc/fsstat /dev/dsk/dks"$SCSI_C"d"$NUM"s0 > /dev/null 2>&1
s0=$?
if [ $s7 -ne 3 -o $s6 -ne 3 -o $s0 -ne 3 ]
then
       echo "\007SCSI controller $SCSI_C disk $NUM appears to\n"
echo "have a valid filesystem, overwrite it? (n)\c"
       read answer
       case "$answer" {
       y|Y|yes|Yes|YES) ;;
       *) echo Disk $NUM not added; exit 1;;
       }
fi
#-------------------------------------------------

echo "\nStart disk clone..."
umount /d
mkdir /d
mkfs -d name=/dev/rdsk/dks"$SCSI_C"d"$NUM"s0 -l internal,size=2048b -b size=1k
labelit /dev/rdsk/dks"$SCSI_C"d"$NUM"s0 / sgi
mount /dev/dsk/dks"$SCSI_C"d"$NUM"s0 /d
df -k
echo "\ncopy root partition..."
cd /; xfsdump -l 0 -J - / | (cd /d; xfsrestore - .)

fsstat /dev/usr 1> /dev/null 2>&1
stat=$?
if [ $stat = 2 ]
then
       mkdir /d/usr
       mkfs -d name=/dev/rdsk/dks"$SCSI_C"d"$NUM"s6 -l internal,size=2048b -b
size=1k
       labelit /dev/rdsk/dks"$SCSI_C"d"$NUM"s6 /usr sgi
       mount /dev/dsk/dks"$SCSI_C"d"$NUM"s6 /d/usr
       df -k
       echo "\ncopy usr partition..."
       cd /usr; xfsdump -l 0 -J - /usr | (cd /d/usr; xfsrestore - .)
fi

echo "\ninstalling sash, ide & fx in volume header....."
if [ ! -r /stand/sash ]; then /etc/dvhtool -v get sash /stand/sash /dev/rdsk/dks0d1vh ;fi
if [ ! -r /stand/fx   ]; then /etc/dvhtool -v get fx   /stand/fx   /dev/rdsk/dks0d1vh ;fi
if [ ! -r /stand/ide  ]; then /etc/dvhtool -v get ide  /stand/ide  /dev/rdsk/dks0d1vh ;fi

/etc/dvhtool -v c /stand/sash sash /dev/rdsk/dks"$SCSI_C"d"$NUM"vh
/etc/dvhtool -v c /stand/ide ide /dev/rdsk/dks"$SCSI_C"d"$NUM"vh
/etc/dvhtool -v c /stand/fx fx /dev/rdsk/dks"$SCSI_C"d"$NUM"vh
echo "\nNew disk number SCSI:"$SCSI_C" disk:"$NUM" ready to use."

echo "\nDONE....."
exit 0



RE: Clone system disk to larger disk - pcar - 05-05-2019

Is this still the suggested method for disk cloning?


RE: Clone system disk to larger disk - callahan - 05-05-2019

Yes. Xfsdump/xfsrestore is the way to go. It's not hard to do with a few basic commands (fx, mkfs, and xfsdump | xfsrestore), but I assume this script will work too.


RE: Clone system disk to larger disk - pcar - 05-08-2019

This process worked perfectly, thanks all!


RE: Clone system disk to larger disk - Titox - 05-09-2019

I cloned my hard disk to a SCSI2SD for my Indy without any problem. Now it works a little bit more silent.

Thanks!!!


RE: Clone system disk to larger disk - 7077115292 - 05-16-2019

Thanks!!!I will try it later.