From - Sun Jan 26 22:19:49 1997
Path: news.unizar.es!news.rediris.es!news.uoregon.edu!news-peer.gsl.net!news.gsl.net!mr.net!newsfeeds.sol.net!newspump.sol.net!howland.erols.net!news.mathworks.com!enews.sgi.com!news.corp.sgi.com!inn
From: Scott Henry <scotth@sgi.com>
Newsgroups: comp.sys.sgi.admin
Subject: Re: Switching to XFS (Re: Xfs or Efs on Irix 5.3?)
Date: 23 Jan 1997 11:08:45 -0800
Organization: I/S Network Services, Silicon Graphics, Inc.
Lines: 81
Sender: scotth@hoshi.corp.sgi.com
Message-ID: <yd8zpy09pky.fsf@hoshi.corp.sgi.com>
References: <5c6508$74q@nntp1.best.com> <5c6ah9$hun@fido.asd.sgi.com>
	<5c86q6$64k@netnews.upenn.edu>
Reply-To: scotth@sgi.com
NNTP-Posting-Host: hoshi.corp.sgi.com
X-Disclaimer: These are my opinions only, I cannot speak for SGI
X-URL: http://reality.sgi.com/scotth/
X-Newsreader: Gnus v5.3/Emacs 19.34

>>>>> "M" == Martin J Dellwo <dellwo@spruce.chem.upenn.edu> writes:

M> So this brings up a question I have--what's the best way to upgrade to
M> 6.2 *and* switch over to XFS.  Will it work to upgrade to 6.2 and then
M> backup-> remake filesystems as xfs-> restore, or should I remake the
M> filesystems in the miniroot and clean-install 6.2?  I'd like to avoid
M> the last because of all the NFS/NIS/automount stuff I have set up.

Once upon a time I wrote this script to help me with similar
problems.  It finds all the non-insted files, and the modified
configuration files.  It trys to avoid the directories with
"scratch" data, but you should manually check them.  It requires
Perl5 (you can get this from the Frreware CD or from my home page),
and runs on 6.2, though since I wrote it originally on 5.3, it
should still work there.

I have a second disk with a directory /d/shadow that I stor this
info.  I called the script vorlon.  I use it like:

# cd /
# vorlon -c | tar -cf - - | gzip -v > /d/shadow/config.tar.gz
# vorlon -u | tar -cf - - | gzip -v > /d/shadow/user.tar.gz
# versions -n | gzip -v > /d/shadow/versions.gz

The latter command has a list of the installed software, though it
might be better to print it for reference while re-installing
software.  Then restore the 2 tarred images.  If you are doing this
across releases, it makes sense to save the files that config.tar.gz
would restore, since you will have to merge the new and old files.
Or restore the config files under /tmp and hand merge them.  xdiff
is a wonderful tool for that...

================ snip-snip ================
#!/usr/bin/perl5
#
# find all the non-inst-ed files on the root disk(s) that need to be shadowed
#
# author: Scott Henry <scotth@sgi.com>
# date: Sun Jan 21 20:29:13 PST 1996
#
require 5.0;
use Getopt::Std;
use strict;
use integer;

getopts("vcmu");
# -v    verbose mode
# -m    modified configuration files
# -c    same as -m
# -u    user files
my($verbose) = $::opt_v ? $::opt_v : 0;

# use the program `showfiles`
my($showprog) = "/usr/sbin/showfiles";

if ($::opt_m || $::opt_c) {
    # generate the modified config files
    open(IN, "$showprog -i -c -s -m | egrep '/bin|/etc|/lib|/opt|/sbin|/usr|/var' |");
} elsif ($::opt_u) {
    # generate the user files on the root disk(s)
    open(IN, "find / -mount \\( -type f -o -type l \\) -print | $showprog -F \! -i -s |");
} else {
    die "usage: $0 [-vcmu]\n";
}

while(<IN>) {
    chomp;
    s,^/,,;
    next if /^core|~$|\.bak$|\.old$|[-._]orig$|^tmp|Insight|sgitcl|usr\/people|perl.*\.ph|etc\/net|^unix|^\.|log$|lock|logs\/|^dev|^lost\+found/i;
    next if (/^var/ && ! /^var\/(www|spool\/(cron|lp)|netls|sysgen|inst\/.swmgrrc)/);
    next if (/^usr\/lib/ && ! /filetype\/local|X11\/.*defaults/);
    print STDERR "$_\n" if $::opt_v;
    print "$_\n";
}
close(IN);
================ snip-snip ================

--
 Scott Henry <scotth@sgi.com> /  Help! My disclaimer is missing!
 Networking Services,        /  GIGO *really* means: Garbage in, Gospel Out
 Silicon Graphics, Inc      /  http://reality.sgi.com/scotth/
