X-Git-Url: https://gitweb.dragonflybsd.org/~nant/dragonfly.git/blobdiff_plain/af68c4e166819cbb4ad4c22ddc23c34b8f47ec99..02096bc2ac33cea8c8fe268a8f306f5bf27c6d95:/UPDATING diff --git a/UPDATING b/UPDATING index 1b1b5a2343..088ee10b7e 100644 --- a/UPDATING +++ b/UPDATING @@ -1,4 +1,4 @@ -$DragonFly: src/UPDATING,v 1.14 2005/06/09 19:39:18 joerg Exp $ +$DragonFly: src/UPDATING,v 1.20 2006/07/02 08:13:07 swildner Exp $ Updating Information for DragonFly users. @@ -17,6 +17,11 @@ mailing list with the details. The compatiblity shims for the build environment have been removed, you have to update to DragonFly 1.2 release branch first. +The default PAM configuration has moved from /etc/pam.conf to /etc/pam.d/. +The existing configuration can be converted using /etc/pam.d/convert.sh. +Entries in /etc/pam.d/ override entries in /etc/pam.conf. In addition +the pam_skey.so module was retired, you have to remove it manually from +your configuration, when you convert it. > Required user and group IDs when upgrading from either FreeBSD or DragonFly --------------------- @@ -55,8 +60,7 @@ object hierarchy is necessary. # FreeBSD src first) (500MB) cd /usr rm -rf src - cvs -R -d /home/dcvs checkout src - cvs -R -d /home/dcvs checkout dfports + cvs -R -d /home/dcvs checkout -P src # build it (500MB used in /usr/obj) # @@ -77,17 +81,24 @@ the build steps above. make installkernel KERNCONF= make installworld -Then you need to upgrade your /etc. DragonFly's 'make upgrade' target +Then you need to upgrade your system. DragonFly's 'make upgrade' target will unconditionally upgrade the /etc files that sysops do not usually -mess around with, such as the files in /etc/rc.d. If you are unsure we -recommend that you make a backup of your /etc before applying this step. -Note that DragonFly's RC system is basically RCNG from FreeBSD-5, but -there are some differences in the contents of the RC files. +mess around with, such as the files in /etc/rc.d. It will also remove any +obsolete files such as utilities and manpages that have been removed from +the system since the version you're coming from. If you are unsure we +recommend that you make a backup of at least your /etc before applying +this step. Note that DragonFly's RC system is basically RCNG from +FreeBSD-5, but there are some differences in the contents of the RC files. make upgrade +NOTE! Never do a 'make upgrade' before 'make installworld' has been run. +Doing so might leave your system in an unusable state. + Finally we recommend that you do an 'ls -lta BLAH' for /bin, /sbin, /usr/bin, -/usr/bin, and /usr/lib, and remove any stale files that you find. +/usr/bin, and /usr/lib, and remove any stale files that you find. Please +report these files to the DragonFly developers so that they can be added to +the 'upgrade' target. ------------------------------------------------------------------------------ @@ -95,12 +106,12 @@ Finally we recommend that you do an 'ls -lta BLAH' for /bin, /sbin, /usr/bin, --------------------- The best way to upgrade DragonFly is to maintain a copy of the DragonFly -CVS repository via cvsup and to checkout the source base and DragonFly -ports via this repository. The repository is stored in /home/dcvs by -default and requires about 500MB of disk space. The checked out source -tree (/usr/src) requires about 500MB of disk space, and the build will -eat around 500MB of space out of /usr/obj. To maintain the build you -should reserve at least 2GB of disk space, and 3GB if you have the space. +CVS repository via cvsup and to checkout the source base via this repository. +The repository is stored in /home/dcvs by default and requires about 800MB +of disk space. The checked out source tree (/usr/src) requires about 400MB +of disk space, and the build will eat around 800MB of space out of /usr/obj. +To maintain the build you should reserve at least 2.5GB of disk space, and +3.5GB if you have the space. Note: most people run cvsup via a root cron job to keep the repository up to date. Please limit such automatic updates to once a day and try to randomize @@ -111,7 +122,6 @@ the hour and minute in the cron job a bit to avoid pileups. # install the source from the CVS hierarchy cd /usr cvs -R -d /home/dcvs checkout -P src - cvs -R -d /home/dcvs checkout -P dfports Once you have the repository and broken out sources you can decide whether to update your sources from the repository automatically or manually. Since @@ -129,14 +139,17 @@ To upgrade a DragonFly system from sources you run the following sequence: make installkernel KERNCONF= make installworld -You will also want to run the 'upgrade' target to upgrade your /etc. The -upgrade target is aware of stale files created by older DragonFly -installations and should delete them automatically. +You will also want to run the 'upgrade' target to upgrade your /etc and the +rest of your system. The upgrade target is aware of stale files created by +older DragonFly installations and should delete them automatically. make upgrade +NOTE! Never do a 'make upgrade' before 'make installworld' has been run. +Doing so might leave your system in an unusable state. + If you are using 'config' manually from /usr/src/sys/i386/conf/BLAH, note -that the build will use the current DragonFly environment rather then +that the build will use the current DragonFly environment rather than the post-build environment from the last buildworld. For this reason manual configs are discouraged. The proper way to build a kernel is to use the 'buildkernel' or 'quickkernel' target in /usr/src. @@ -153,23 +166,26 @@ and buildkernel as shown above, before asking for help. Kerberos IV (eBones) was removed from the tree, please consider moving to Kerberos 5 (Heimdal). -> FreeBSD and DragonFly ports ------------------------------ +> Package Management System +--------------------------- + +Starting with the 1.4 release, DragonFly uses NetBSD's pkgsrc package +management system. The necessary tools to build and maintain packages +are provided in /usr/pkg/bin and /usr/pkg/sbin. Make sure that these +directories are in your PATH variable. + +In order to obtain a reasonably current snapshot of the pkgsrc tree, use +the tarball from NetBSD: -DragonFly will eventually have its own package management system but at the -moment we leverage off of the FreeBSD ports system. You should maintain -/usr/ports from the FreeBSD cvs repository via cvsup just like you do now. + fetch -o /tmp/pkgsrc.tar.gz ftp://ftp.NetBSD.org/pub/NetBSD/packages/pkgsrc.tar.gz + cd /usr; tar -xzf /tmp/pkgsrc.tar.gz; chown -R root:wheel pkgsrc -DragonFly has its own 'port overrides' hierarchy in /usr/dfports. You can -check this out of the DragonFly cvs repository using: +This tree can then be kept up to date with cvs update: -cd /usr -cvs -R -d /home/dcvs checkout -P dfports + cd /usr/pkgsrc; cvs up -Be sure that you have installed 'relpath' from the DragonFly sources -(/usr/src/usr.bin/relpath) as well as the updated /usr/share/mk files from -/usr/src/share/mk. As a test you can cd into /usr/ports/sysutils/cpdup and -build the port. Dragonfly should contain an override and you should see a -warning message that the DragonFly override is being build instead when you -build it from the FreeBSD ports. +NOTE! If you upgraded from a pre-1.4 system to 1.4 or later, you need to +build and install the pkgsrc bootstrap manually: + cd /usr/pkgsrc/bootstrap + ./bootstrap --pkgdbdir /var/db/pkg --prefix /usr/pkg