当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > FreeBSD 5.3 to FreeBSD 5.4 binary upgrade

Unix/Linux
怎样设置一个档案来作为 linux 的转换空间?
全文替换以修改档案方法
如何删除档案中的重复的行
/dev下 cua*被删除,该如何恢复?
/dev/tty0不见了怎麽救回来?
Linux 网管 123 --- 第4章. 安装及硬体组态 - 2.启动 Linux 安装
Linux 网管 123 --- 第4章. 安装及硬体组态 - 3.分割硬碟机
Linux 网管 123 --- 第4章. 安装及硬体组态 - 4.设定Swap格式化Pa
Linux 网管 123 --- 第4章. 安装及硬体组态 - 5.选择想要安装的套件
Linux 网管 123 --- 第4章. 安装及硬体组态 - 6.硬体组态
Linux 网管 123 --- 第4章. 安装及硬体组态 - 7.从 LILO 启动
Linux 网管 123 --- 第4章. 安装及硬体组态 - 8.下载及安装 Red H
Linux 网管 123 --- 第5章. 组态 X Window 系统 -1.使用 X-
Linux 网管 123 --- 第5章. 组态 X Window 系统 -2.使用 X
Linux 网管 123 --- 第5章. 组态 X Window 系统 -3.改善X下的
Linux 网管 123 --- 第5章. 组态 X Window 系统 -4.选择 X
Linux 网管 123 --- 第5章. 组态 X Window 系统 -5.GNOME
Linux 网管 123 --- 第5章. 组态 X Window 系统 -6.KDE 的
Linux 网管 123 --- 第6章. 一般系统管理问题 -1.Root 帐号
Linux 网管 123 --- 第6章. 一般系统管理问题 -2.建立使用者帐号

Unix/Linux 中的 FreeBSD 5.3 to FreeBSD 5.4 binary upgrade


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 196 ::
收藏到网摘: n/a

In February 2005 I put instructions online explaining how to perform a binary upgrade from FreeBSD 4.8 to FreeBSD 4.11. When it came time to upgrade my FreeBSD 5.3 system to instead run FreeBSD 5.4, I found that some slightly different steps were needed, so I decided to put together a 5.3-to-5.4 upgrade guide as well.
What follows are the steps I used to upgrade my FreeBSD 5.3 system to FreeBSD 5.4-RELEASE; I can't guarantee that they'll work for everyone, but this should be at least a good starting point.
N.B. I only install the "base" "dict", "doc", and "manpages" distributions here -- I don't want the "catpages", compat, "games", "info", "ports", "proflibs", or "src" distributions. If you want a different set of distributions, change the lists in steps 6, 9, and 10.
If you haven't done so already, install FreeBSD Update. cd /usr/ports/security/freebsd-update && make install cleancp /usr/local/etc/freebsd-update.conf.sample /usr/local/etc/freebsd-update.confUsing FreeBSD Update, generate a list of files from the base system which have been locally modified. We might not want to overwrite these. freebsd-update -v IDS | tail +8 | grep . | cut -c 2- - > /root/base-modifiedEdit this list and delete files for which you don't want to keep your local changes. You'll almost certainly want to delete any lines starting with usr/, but you'll probably want to keep the lines which start with etc/ or var/log/. ee /root/base-modified(or use vi or any other text editor you have installed.) Generate a list of files installed which belong to the old RELEASE. We'll be using this list to make sure we don't leave old files lying around after the upgrade. cut -f 1 -d '$' /usr/local/freebsd-update/work/md5all | uniq | while read X; do if [ -f $X ]; then echo $X; fi; done | sort > /root/base-oldDownload an ISO image for the new release and mount it. fetch -o /usr/disc1.iso ftp://ftp.freebsd.org/pub/FreeBSD/ISO-IMAGES-i386/5.4/5.4-RELEASE-i386-disc1.isomdconfig -a -t vnode -f /usr/disc1.iso -u 9mount -t cd9660 -o ro /dev/md9 /mntFor the files which have been locally modified, extract the new versions to a temporary directory. mkdir /usr/releasefor dist in base dict doc manpages; do cat /mnt/5.4-RELEASE/$/$.?? | tar -xpzf - -I /root/base-modified -C /usr/releasedone 2>/dev/nullFor each of these files (in /root/base-modified), compare the existing and new versions to see if you need to update anything. (I didn't, but sometimes there are necessary changes in configuration files -- for example, in FreeBSD 4.7 a new "sshd" user was added.) grep ^etc /root/base-modified | while read f; do diff -u /$ /usr/release/$done | moreClear the immutable flag on files from the base system to make sure that we can overwrite or delete them. xargs chflags noschg < /root/base-oldExtract the new release (minus the locally modified files that we don't want to overwrite). for dist in base dict doc manpages; do /mnt/rescue/cat /mnt/5.4-RELEASE/$/$.?? | /mnt/rescue/tar -Uxpzf - -X /root/base-modified -C /doneGenerate a list of files which belong to the new release, and compare this to the list of files which were in the old release, so that we can clean up the garbage left behind. ( for dist in base dict doc manpages; do cat /mnt/5.4-RELEASE/$/$.?? | tar -tzf -done; cat /root/base-modified ) | sort | uniq | lam -s '/' - > /root/base-newcomm -13 /root/base-new /root/base-old | xargs rmClean up. umount /mntmdconfig -d -u 9rm -r /usr/releaserm /usr/disc1.isorm /root/base-modified /root/base-old /root/base-newReboot into your new 5.4-RELEASE system. shutdown -r nowFrom: http://www.daemonology.net/freebsd-upgrade-5.3-to-5.4/