From owner-freebsd-questions@FreeBSD.ORG Wed Nov 30 11:46:28 2005 Return-Path: X-Original-To: freebsd-questions@freebsd.org Delivered-To: freebsd-questions@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6199216A422 for ; Wed, 30 Nov 2005 11:46:28 +0000 (GMT) (envelope-from AshleyMoran@codeweavers.net) Received: from mta09-winn.ispmail.ntl.com (mta09-winn.ispmail.ntl.com [81.103.221.49]) by mx1.FreeBSD.org (Postfix) with ESMTP id 61DD643D7C for ; Wed, 30 Nov 2005 11:46:24 +0000 (GMT) (envelope-from AshleyMoran@codeweavers.net) Received: from aamta10-winn.ispmail.ntl.com ([81.103.221.35]) by mta09-winn.ispmail.ntl.com with ESMTP id <20051130114622.OEEM8609.mta09-winn.ispmail.ntl.com@aamta10-winn.ispmail.ntl.com> for ; Wed, 30 Nov 2005 11:46:22 +0000 Received: from jigsaw-sbs02.jigsawhq.com ([213.106.224.113]) by aamta10-winn.ispmail.ntl.com with ESMTP id <20051130114622.IUFV11396.aamta10-winn.ispmail.ntl.com@jigsaw-sbs02.jigsawhq.com> for ; Wed, 30 Nov 2005 11:46:22 +0000 X-Filtered-With-Copfilter: Version 0.81.6 (ProxSMTP 1.2.1) X-Copfilter-Virus-Scanned: ClamAV 0.87/1198 - Tue Nov 29 10:05:20 2005 X-Copfilter: Client is part of our network, skipped SpamAssassin Received: from alfie.jigsawhq.com ([192.168.0.181]) by jigsaw-sbs02.jigsawhq.com with Microsoft SMTPSVC(5.0.2195.6713); Wed, 30 Nov 2005 11:45:32 +0000 From: Ashley Moran Organization: Codeweavers Ltd To: freebsd-questions@freebsd.org Date: Wed, 30 Nov 2005 11:45:20 +0000 User-Agent: KMail/1.8.3 MIME-Version: 1.0 Content-Disposition: inline Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Message-Id: <200511301145.20994.ashley.moran@codeweavers.net> X-OriginalArrivalTime: 30 Nov 2005 11:45:32.0433 (UTC) FILETIME=[91C9E810:01C5F5A3] Subject: How to perform a system-only re-install i386->amd64 X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 30 Nov 2005 11:46:28 -0000 I'm sure someone has done this before but I wanted to run my plan past everyone to see if I've thought of everything. Yesterday one of our development servers (running FreeBSD 6-release) croaked. It was an old old old machine and we ended up replacing the board and CPU with an MSI Neo2 Platinum (nForce 3 chipset) and Athlon 64 setup. We just swapped the board and re-connected the old array. It works fine but obviously it's running in i386 mode. I don't need to run i386 compatability on this machine because I don't need to run any Linux binaries. I've googled and read through the amd64 list and the consensus seems to be that (a) amd64 is stable enough for production use and (b) very fast. I've heard that it's easiest to reinstall from scratch rather than do a source upgrade in place. So I've downloaded the amd64 ISOs. I tried to prepare for this situation when I first installed the machine. I have each of these in separate partitions: / /usr/local /usr/ports /var /home /tmp Here is my plan: * # pkg_deinstall -a to get rid of all my i386 software * backup /etc to /var/i386etc * Reboot from FreeBSD 6 amd64 disc 1 * Choose Standard installation * On the partitioning screen, reformat the / partition and set the others up to match the current layout (I've never done this but I hope it's intuitive) * Install exactly how I did before (they will both be 6-RELEASE so shouldn't be a problem) * Reboot into the amd64 system * Copy /var/i386etc over /etc Here I'm assuming that the configuration is architecture-independent- is this correct? I have a tarball I made of the i386 6-REL /etc files so I can diff them before I install mine anyway * Recompile the kernel with i386 compatability (or can this be added during installation?) * # cd /var/db/portsnap/* && rm -R INDEX files serverlist tINDEX tag && \ portsnap fetch && portsnap extract to get me the amd64 ports tree * Copy the i386 package I made on my desktop for the BSD jdk14 to the server and install from the package * Compile a native jdk15 * Deinstall jdk14 * Re-compile the kernel without x86 compatability, install and reboot * Reinstall all ports by hand- they should assume their previous roles as all the configs and data should be in /usr/local and I appreciate that this is quite a long question and probably has been answered before in pieces but I'd be grateful if anyone can pick holes in it before I start so I don't waste all Sunday afternoon! Thanks Ashley