1d2a0deccSMatthew Dillon# Updating Information for DragonFly users. 2d2a0deccSMatthew Dillon# 3d2a0deccSMatthew Dillon# 4d2a0deccSMatthew Dillon# This file should warn you of any pitfalls which you might need to work around 5d2a0deccSMatthew Dillon# when trying to update your DragonFly system. The information below is 6d2a0deccSMatthew Dillon# in reverse-time order, with the latest information at the top. 7d2a0deccSMatthew Dillon# 8d2a0deccSMatthew Dillon# If you discover any problem, please contact the bugs@lists.dragonflybsd.org 9d2a0deccSMatthew Dillon# mailing list with the details. 10984263bcSMatthew Dillon 11d2a0deccSMatthew Dillon+-----------------------------------------------------------------------+ 12640dc18fSSepherosa Ziehau+ UPGRADING DRAGONFLY FROM 3.3 to later versions + 13640dc18fSSepherosa Ziehau+-----------------------------------------------------------------------+ 14640dc18fSSepherosa Ziehau 15*1c297ed0SSascha WildnerDEVICE_POLLING OPTION REPLACED BY IFPOLL_ENABLE OPTION, KTR_POLLING REMOVED 16*1c297ed0SSascha Wildner--------------------------------------------------------------------------- 17640dc18fSSepherosa Ziehau 18640dc18fSSepherosa ZiehauThe DEVICE_POLLING kernel option has been made a no-op and it has been 19640dc18fSSepherosa Ziehaureplaced by IFPOLL_ENABLE. If you have 'options DEVICE_POLLING' in your 20640dc18fSSepherosa Ziehaukernel config, you need to change it to IFPOLL_ENABLE. 21640dc18fSSepherosa Ziehau 22*1c297ed0SSascha WildnerAlso, the KTR_POLLING kernel option has been removed, so it must be 23*1c297ed0SSascha Wildnerremoved from kernel configs that have it. 24*1c297ed0SSascha Wildner 25640dc18fSSepherosa Ziehau+-----------------------------------------------------------------------+ 261918fc5cSSascha Wildner+ UPGRADING DRAGONFLY FROM 3.2 to later versions + 271918fc5cSSascha Wildner+-----------------------------------------------------------------------+ 281918fc5cSSascha Wildner 291918fc5cSSascha WildnerSMP OPTION REMOVED 301918fc5cSSascha Wildner------------------ 311918fc5cSSascha Wildner 3209ff663cSSascha WildnerThe SMP kernel option has been made a no-op. All kernels now feature SMP 3309ff663cSSascha Wildnersupport. If you have 'options SMP' in your kernel config, you can as well 3409ff663cSSascha Wildnerremove it. 351918fc5cSSascha Wildner 361918fc5cSSascha Wildner+-----------------------------------------------------------------------+ 37c691bb43SSascha Wildner+ UPGRADING DRAGONFLY FROM 3.0 to later versions + 38c691bb43SSascha Wildner+-----------------------------------------------------------------------+ 39c691bb43SSascha Wildner 40c691bb43SSascha WildnerAPIC_IO OPTION REMOVED 41c691bb43SSascha Wildner---------------------- 42c691bb43SSascha Wildner 43c691bb43SSascha WildnerThe APIC_IO kernel option is no longer accepted after having been without 44c691bb43SSascha Wildnereffect for a while. The hw.ioapic_enable tunable now serves its purpose. 45c691bb43SSascha WildnerIf you have 'options APIC_IO' in your kernel config, you'll have to 46c691bb43SSascha Wildnerremove it. 47c691bb43SSascha Wildner 486d488cc3SSascha WildnerWATCHDOG_ENABLE & HW_WDOG OPTIONS REMOVED 496d488cc3SSascha Wildner----------------------------------------- 50cf03d6cdSSascha Wildner 51cf03d6cdSSascha WildnerThe wdog framework is now compiled into our kernels by default, so the 526d488cc3SSascha Wildneroptions are no longer needed. 53cf03d6cdSSascha Wildner 54397ffc5cSSascha WildnerDOSCMD(1) REMOVED 55397ffc5cSSascha Wildner----------------- 56397ffc5cSSascha Wildner 57397ffc5cSSascha Wildnerdoscmd(1) has been removed. It was i386 only. The doscmd(1) specific 58397ffc5cSSascha WildnerNO_X make.conf option was removed too. 59397ffc5cSSascha Wildner 60a1404d4fSSascha WildnerGCC 4.7 61a1404d4fSSascha Wildner------- 62a1404d4fSSascha Wildner 63a1404d4fSSascha WildnerGCC 4.7 has been brought in and replaces GCC 4.1 as DragonFly's non- 64a1404d4fSSascha Wildnerdefault compiler in base (default is still GCC 4.4). 65a1404d4fSSascha Wildner 66a1404d4fSSascha WildnerUsers who wish to build only GCC 4.4 have to replace NO_GCC41 with 67a1404d4fSSascha WildnerNO_GCC47 in /etc/make.conf. 68a1404d4fSSascha Wildner 692508820fSSascha WildnerUSB4BSD 702508820fSSascha Wildner------- 712508820fSSascha Wildner 722508820fSSascha WildnerA new USB stack (from FreeBSD) has been brought in. The following 732508820fSSascha Wildnermodules have been ported so far: usb, uhci, ohci, ehci, xhci, umass, 742508820fSSascha Wildnerusfs, uether, if_axe, if_udav, ukbd, ums, uep, uhid, usb_quirk, 752508820fSSascha Wildnerand uaudio. 762508820fSSascha Wildner 772508820fSSascha WildnerIt is not yet the default. To activate it, WANT_USB4BSD=yes has to 78c7200221SSascha Wildnerbe put in make.conf and device "usb4bsd" (quotes needed) has to 79c7200221SSascha Wildnerreplace device usb in the kernel config. After that, a full 80c7200221SSascha Wildnerbuild/install/upgrade cycle is needed. 812508820fSSascha Wildner 822508820fSSascha WildnerNote that this is experimental and incomplete, but we are interested 832508820fSSascha Wildnerin hearing about issues with it, of course. 842508820fSSascha Wildner 85c691bb43SSascha Wildner+-----------------------------------------------------------------------+ 8696386d4bSSascha Wildner+ UPGRADING DRAGONFLY FROM 2.10 to later versions + 8796386d4bSSascha Wildner+-----------------------------------------------------------------------+ 8896386d4bSSascha Wildner 8996386d4bSSascha WildnerSEVERAL ISA DRIVERS REMOVED 9096386d4bSSascha Wildner--------------------------- 9196386d4bSSascha Wildner 9296386d4bSSascha WildnerThe following ISA only drivers have been removed along with a couple of 9396386d4bSSascha Wildnerassociated userland tools: 9496386d4bSSascha Wildner 9596386d4bSSascha Wildneraha(4) 9696386d4bSSascha Wildnerasc(4) & sasc(1) 9796386d4bSSascha Wildnerctx 9896386d4bSSascha Wildnerdgb(4) 9996386d4bSSascha Wildnerel(4) 10096386d4bSSascha Wildnergpib 10196386d4bSSascha Wildnergsc(4) & sgsc(1) 10296386d4bSSascha Wildnerie(4) 10396386d4bSSascha Wildnerlabpc(4) 10496386d4bSSascha Wildnerle(4) 10596386d4bSSascha Wildnermse(4) 10696386d4bSSascha Wildnerrc(4) 10796386d4bSSascha Wildnerrdp(4) 10896386d4bSSascha Wildnerspigot 10996386d4bSSascha Wildnertw(4) & xten(1) & xtend(8) 11096386d4bSSascha Wildnerwl(4) & wlconfig(8) 11196386d4bSSascha Wildnerwt(4) 11296386d4bSSascha Wildner 11396386d4bSSascha WildnerNote that two of these drivers (aha(4) and ie(4)) are in our GENERIC 11496386d4bSSascha Wildnerconfig and one (aha(4)) is in our X86_64_GENERIC kernel configuration 11596386d4bSSascha Wildnerfile. 11696386d4bSSascha Wildner 11796386d4bSSascha WildnerIf buildkernel complains about any of these drivers, just remove them 11896386d4bSSascha Wildnerfrom your kernel configuration. 11996386d4bSSascha Wildner 120919eb219SJohn MarinoBINUTILS 2.20 121919eb219SJohn Marino------------- 12237c5a0dbSJohn MarinoBinutils 2.20 has been removed in favor of Binutils 2.22. The accepted 123e685772eSJohn Marinovalues of BINUTILSVERS are now binutils221 and binutils222 (default). 124919eb219SJohn Marino 12583bc1e2aSSascha WildnerBUILDWORLD/-KERNEL PARALLELIZATION WORK 12683bc1e2aSSascha Wildner--------------------------------------- 12783bc1e2aSSascha WildnerDue to changes in the way we build with more than one make job, you 12883bc1e2aSSascha Wildnerwill have to update install(1) and mkdir(1) prior to buildworld if you 12983bc1e2aSSascha Wildnerwant to build with 'make -j': 13083bc1e2aSSascha Wildner 13183bc1e2aSSascha Wildnercd /usr/src/usr.bin/xinstall; make; make install; make clean 13283bc1e2aSSascha Wildnercd /usr/src/bin/mkdir; make; make install; make clean 13383bc1e2aSSascha Wildner 134eca86bd9SSascha WildnerDMA(8) UPGRADE 135eca86bd9SSascha Wildner-------------- 136eca86bd9SSascha Wildnerdma(8) has been upgraded to v0.7 which no longer supports the 137eca86bd9SSascha Wildner/etc/dma/virtusertable. Some of its functionality has been replaced 138eca86bd9SSascha Wildnerwith the MASQUERADE keyword and the EMAIL environment variable (see 139eca86bd9SSascha Wildnerthe dma(8) manual page). 140eca86bd9SSascha Wildner 14196386d4bSSascha Wildner+-----------------------------------------------------------------------+ 1422443e96eSJustin C. Sherrill+ UPGRADING DRAGONFLY FROM 2.8 to later versions + 143a4a39c94SJustin C. Sherrill+-----------------------------------------------------------------------+ 144a4a39c94SJustin C. Sherrill 145b1242318SSascha WildnerGCC 4.4 & BINUTILS 2.21 146b1242318SSascha Wildner----------------------- 14730c91f0cSSascha Wildner 148b1242318SSascha WildnerGCC 4.4 has been made DragonFly's default compiler and Binutils 2.21 has 149b1242318SSascha Wildnerbeen made DragonFly's default Binutils. 15030c91f0cSSascha Wildner 15130c91f0cSSascha WildnerThat means that any settings that set CCVER to 'gcc44' are not needed 15230c91f0cSSascha Wildneranymore. Instead, CCVER can be set to 'gcc41' to go back to using 15330c91f0cSSascha WildnerGCC 4.1. 15430c91f0cSSascha Wildner 155b1242318SSascha WildnerIt also means that 'binutils221' as a value for BINUTILSVER has no 156b1242318SSascha Wildnereffect anymore. 2.17 has been removed and 'binutils220' is available 157b1242318SSascha Wildneras an option. 158b1242318SSascha Wildner 1595738210dSSascha WildnerThe NO_GCC44 option has been removed and will not affect the build 16030c91f0cSSascha Wildneranymore. There is now a NO_GCC41 option that will prevent GCC 4.1 from 16130c91f0cSSascha Wildnerbuilding in a similar fashion. 16230c91f0cSSascha Wildner 16380abb3beSSascha WildnerNote that you must do a full buildworld/buildkernel for upgrading. 16430c91f0cSSascha Wildner 165a4a39c94SJustin C. Sherrillpkg_radd settings 166c983d16eSSascha Wildner----------------- 167a4a39c94SJustin C. Sherrill 168a4a39c94SJustin C. SherrillThe config file for pkg_radd has moved from /etc/settings.conf to 169a4a39c94SJustin C. Sherrill/etc/pkg_radd.conf. Save the contents of settings.conf before upgrading 170a4a39c94SJustin C. Sherrillif this is needed. This warning only applies if /etc/settings.conf 171a4a39c94SJustin C. Sherrillexists. pkg_radd will continue to work with defaults. 172a4a39c94SJustin C. Sherrill 173a4a39c94SJustin C. Sherrill+-----------------------------------------------------------------------+ 17472fe41d3SPeter Avalos+ 20100927 + 1751bb1cc14SMatthias Schmidt+ UPGRADING DRAGONFLY FROM 2.6 to 2.8 or HEAD + 176b79f66ddSJoe Talbott+-----------------------------------------------------------------------+ 177b79f66ddSJoe Talbott 17872fe41d3SPeter AvalosOpenSSL 179c983d16eSSascha Wildner-------- 18072fe41d3SPeter Avalos 18172fe41d3SPeter AvalosOpenSSL has been upgraded, and SHLIB_MAJOR was bumped for libssh and libcrypto. 18272fe41d3SPeter AvalosThis shouldn't break any 3rd-party software, but you'll need to recompile your 18372fe41d3SPeter Avalos3rd-party software if you want it to link against the new version of OpenSSL. 18472fe41d3SPeter Avalos 1858eb0b612SJustin C. SherrillLoader 186c983d16eSSascha Wildner------- 1878eb0b612SJustin C. Sherrill 188b79f66ddSJoe TalbottA new loader (dloader) has been added which better handles booting from 189b79f66ddSJoe Talbottmultiple kernel/module versions. 190b79f66ddSJoe Talbott 191b79f66ddSJoe TalbottTo upgrade (Only for this upgrade, for post 2.8 upgrades see GENERAL below) 192b79f66ddSJoe Talbott 193b79f66ddSJoe Talbott cd /usr/src 194b79f66ddSJoe Talbott make buildworld 195b79f66ddSJoe Talbott make installworld 196b79f66ddSJoe Talbott make upgrade 197b79f66ddSJoe Talbott make buildkernel KERNCONF=<KERNELNAME> 198b79f66ddSJoe Talbott make installkernel KERNCONF=<KERNELNAME> 199b79f66ddSJoe Talbott 200b79f66ddSJoe TalbottNote that you must installworld and run the 'upgrade' target before 201b79f66ddSJoe Talbottinstalling the new kernel. 202b79f66ddSJoe Talbott 2038eb0b612SJustin C. SherrillBIND 204c983d16eSSascha Wildner----- 2058eb0b612SJustin C. Sherrill 2068eb0b612SJustin C. SherrillBIND has been removed from the base system. The ldns and drill tools have 2078eb0b612SJustin C. Sherrillbeen added for basic functionality. Use 'drill' where you would normally 2088eb0b612SJustin C. Sherrilluse nslookup or dig, or install BIND from pkgsrc. It's available as 2098eb0b612SJustin C. Sherrillnet/bind95, net/bind96, or net/bind97 as of this writing. 2108eb0b612SJustin C. Sherrill 2118eb0b612SJustin C. SherrillThis only affects older systems upgrading to 2.8. New 2.8+ installs 2128eb0b612SJustin C. Sherrillinclude BIND as a pkgsrc package. 2138eb0b612SJustin C. Sherrill 214b79f66ddSJoe Talbott+-----------------------------------------------------------------------+ 215d2a0deccSMatthew Dillon+ UPGRADING DRAGONFLY ON AN EXISTING DRAGONFLY SYSTEM + 216d2a0deccSMatthew Dillon+ GENERAL + 217d2a0deccSMatthew Dillon+-----------------------------------------------------------------------+ 218984263bcSMatthew Dillon 219a700883cSSascha WildnerInstructions on how to obtain and maintain DragonFly source code using git 220a700883cSSascha Wildnerare in the development(7) manual page. 221d2a0deccSMatthew Dillon 222d2a0deccSMatthew DillonTo upgrade a DragonFly system from sources you run the following sequence: 223d2a0deccSMatthew Dillon 224d2a0deccSMatthew Dillon cd /usr/src 225d2a0deccSMatthew Dillon make buildworld 226d2a0deccSMatthew Dillon make buildkernel KERNCONF=<KERNELNAME> 227d2a0deccSMatthew Dillon make installkernel KERNCONF=<KERNELNAME> 228d2a0deccSMatthew Dillon make installworld 229d2a0deccSMatthew Dillon 230d2a0deccSMatthew DillonYou will also want to run the 'upgrade' target to upgrade your /etc and the 231d2a0deccSMatthew Dillonrest of your system. The upgrade target is aware of stale files created by 232d2a0deccSMatthew Dillonolder DragonFly installations and should delete them automatically. 233d2a0deccSMatthew Dillon 234d2a0deccSMatthew Dillon make upgrade 235d2a0deccSMatthew Dillon 236a700883cSSascha WildnerSee the build(7) manual page for further information. 237a700883cSSascha Wildner 238d2a0deccSMatthew DillonOnce you've done a full build of the world and kernel you can do incremental 239d2a0deccSMatthew Dillonupgrades of either by using the 'quickworld' and 'quickkernel' targets 240d2a0deccSMatthew Dilloninstead of 'buildworld' and 'buildkernel'. If you have any problems with 241a700883cSSascha Wildnerthe quick targets, try updating your repo first, and then a full buildworld 242d2a0deccSMatthew Dillonand buildkernel as shown above, before asking for help. 2434523a2c0SThomas Nikolajsen 2444523a2c0SThomas Nikolajsen+-----------------------------------------------------------------------+ 2454523a2c0SThomas Nikolajsen+ UPGRADING FROM DRAGONFLY <= 2.0 TO DRAGONFLY >= 2.1 + 2464523a2c0SThomas Nikolajsen+-----------------------------------------------------------------------+ 2474523a2c0SThomas Nikolajsen 2484523a2c0SThomas NikolajsenIn 2.1 kernel and modules has moved to boot directory. For most cases 2494523a2c0SThomas Nikolajsenthis is handled automatically by 'make upgrade'. A few cases needs manual 2504523a2c0SThomas Nikolajsenintervention: 2514523a2c0SThomas Nikolajsen 2524523a2c0SThomas Nikolajsen * When installing a kernel without first doing a make buildworld, 2534523a2c0SThomas Nikolajsen installworld and upgrade to the same DESTDIR as kernel: 2544523a2c0SThomas Nikolajsen make DESTDIR/boot directory and move kernel and modules into this boot 2554523a2c0SThomas Nikolajsen directory; also move kernel.old and modules.old. 2564523a2c0SThomas Nikolajsen Typical example is vkernel(7), use (no modules used): 2574523a2c0SThomas Nikolajsen 2584523a2c0SThomas Nikolajsen cd /var/vkernel 2594523a2c0SThomas Nikolajsen mkdir boot 2604523a2c0SThomas Nikolajsen chflags noschg kernel 2614523a2c0SThomas Nikolajsen mv kernel kernel.old boot 2624523a2c0SThomas Nikolajsen chflags schg boot/kernel 2634523a2c0SThomas Nikolajsen 2644523a2c0SThomas Nikolajsen * When using a boot-only partition, /boot/loader.rc needs to be edited: 2654523a2c0SThomas Nikolajsen delete occurrences of '/boot/'. 2664523a2c0SThomas Nikolajsen These occurences can normally be deleted in any case, see loader(8). 267d2a0deccSMatthew Dillon 268d2a0deccSMatthew Dillon+-----------------------------------------------------------------------+ 269d2a0deccSMatthew Dillon+ UPGRADING FROM DRAGONFLY <= 1.8 TO DRAGONFLY >= 1.9 + 270d2a0deccSMatthew Dillon+-----------------------------------------------------------------------+ 271d2a0deccSMatthew Dillon 272d2a0deccSMatthew DillonIn 1.9 major changes to the disk management infrastructure have taken 273d2a0deccSMatthew Dillonplace. make upgrade may not catch all of your disk devices in /dev, 274d2a0deccSMatthew Dillonso after upgrading be sure to cd /dev; ./MAKEDEV <blah> where <blah> 27545e80934SMatthew Dillonare all of your disk devices. HOWEVER, from late 2.3 on we run devfs 27645e80934SMatthew Dillonand MAKEDEV no longer exists. 277d2a0deccSMatthew Dillon 278d2a0deccSMatthew DillonThe biggest changes in 1.9 are: 279d2a0deccSMatthew Dillon 280d2a0deccSMatthew Dillon(1) That whole-slice devices such as da0s1 no longer share the same device 281d2a0deccSMatthew Dillon id as partition c devices such as da0s1c. 282d2a0deccSMatthew Dillon 283d2a0deccSMatthew Dillon(2) The whole-disk device (e.g. da0) is full raw access to the disk, 284d2a0deccSMatthew Dillon with no snooping or reserved sectors. Consequently you cannot run 285d2a0deccSMatthew Dillon disklabel on this device. Instead you must run disklabel on a 286d2a0deccSMatthew Dillon whole-slice device. 287d2a0deccSMatthew Dillon 288d2a0deccSMatthew Dillon(3) The 'compatibility' partitions now use slice 0 in the device name, 289d2a0deccSMatthew Dillon so instead of da0a you must specify da0s0a. Also, as per (1) above, 290d2a0deccSMatthew Dillon accessing the disklabel for the compatibility partitions must be 291d2a0deccSMatthew Dillon done via slice 0 (da0s0). 292d2a0deccSMatthew Dillon 293d2a0deccSMatthew Dillon(4) Many device drivers that used to fake up labels, such as CD, ACD, VN, 294d2a0deccSMatthew Dillon and CCD now run through the disk management layer and are assigned 295d2a0deccSMatthew Dillon real disk management devices. VN and CCD in particular do not usually 296d2a0deccSMatthew Dillon use a MBR and disklabels must be accessed through the compatibility 297d2a0deccSMatthew Dillon slice 0. Your /etc/ccd.conf file still specifies 'ccd0', though, you 298d2a0deccSMatthew Dillon don't name it 'ccd0s0' in the config file. 299d2a0deccSMatthew Dillon 300d2a0deccSMatthew DillonGenerally speaking, you have to get used to running fdisk and disklabel on 301d2a0deccSMatthew Dillonthe correctly specified device names. A lot of the wiggle, such as running 302d2a0deccSMatthew Dillondisklabel on a partition, has been removed. 303d2a0deccSMatthew Dillon 304d2a0deccSMatthew Dillon+-----------------------------------------------------------------------+ 305d2a0deccSMatthew Dillon+ UPGRADING FROM OLDER VERSIONS OF DRAGONFLY OR FREEBSD + 306d2a0deccSMatthew Dillon+-----------------------------------------------------------------------+ 307d2a0deccSMatthew Dillon 308d2a0deccSMatthew Dillon> Kerberos IV 309d2a0deccSMatthew Dillon------------- 310d2a0deccSMatthew Dillon 311d2a0deccSMatthew DillonKerberos IV (eBones) was removed from the tree, please consider moving to 312d2a0deccSMatthew DillonKerberos 5 (Heimdal). 313d2a0deccSMatthew Dillon 314d2a0deccSMatthew Dillon> Package Management System 315d2a0deccSMatthew Dillon--------------------------- 316d2a0deccSMatthew Dillon 317d2a0deccSMatthew DillonStarting with the 1.4 release, DragonFly uses NetBSD's pkgsrc package 318d2a0deccSMatthew Dillonmanagement system. The necessary tools to build and maintain packages 319d2a0deccSMatthew Dillonare provided in /usr/pkg/bin and /usr/pkg/sbin. Make sure that these 320d2a0deccSMatthew Dillondirectories are in your PATH variable. 321d2a0deccSMatthew Dillon 322d2a0deccSMatthew DillonIn order to obtain a reasonably current snapshot of the pkgsrc tree, use 323d2a0deccSMatthew Dillonthe tarball from NetBSD: 324d2a0deccSMatthew Dillon 325d2a0deccSMatthew Dillon fetch -o /tmp/pkgsrc.tar.gz ftp://ftp.NetBSD.org/pub/NetBSD/packages/pkgsrc.tar.gz 326d2a0deccSMatthew Dillon cd /usr; tar -xzf /tmp/pkgsrc.tar.gz; chown -R root:wheel pkgsrc 327d2a0deccSMatthew Dillon 328d2a0deccSMatthew DillonThis tree can then be kept up to date with cvs update: 329d2a0deccSMatthew Dillon 330d2a0deccSMatthew Dillon cd /usr/pkgsrc; cvs up 331d2a0deccSMatthew Dillon 332d2a0deccSMatthew DillonNOTE! If you upgraded from a pre-1.4 system to 1.4 or later, you need to 333d2a0deccSMatthew Dillonbuild and install the pkgsrc bootstrap manually: 334d2a0deccSMatthew Dillon 335d2a0deccSMatthew Dillon cd /usr/pkgsrc/bootstrap 336d2a0deccSMatthew Dillon ./bootstrap --pkgdbdir /var/db/pkg --prefix /usr/pkg 337d2a0deccSMatthew Dillon 338d2a0deccSMatthew Dillon+-----------------------------------------------------------------------+ 339d2a0deccSMatthew Dillon+ UPGRADING DRAGONFLY ON AN EXISTING DRAGONFLY SYSTEM + 340d2a0deccSMatthew Dillon+ UPDATING FROM PRE-1.2 SYSTEMS OR FreeBSD 4.x TO + 341d2a0deccSMatthew Dillon+ DRAGONFLY 1.3+ (EITHER PREVIEW or HEAD) + 342d2a0deccSMatthew Dillon+-----------------------------------------------------------------------+ 34358116288SJoerg Sonnenberger 344114580acSSascha WildnerThe compatibility shims for the build environment have been removed, you 34558116288SJoerg Sonnenbergerhave to update to DragonFly 1.2 release branch first. 34658116288SJoerg Sonnenberger 3471fcc7462SJoerg SonnenbergerThe default PAM configuration has moved from /etc/pam.conf to /etc/pam.d/. 3481fcc7462SJoerg SonnenbergerThe existing configuration can be converted using /etc/pam.d/convert.sh. 3491fcc7462SJoerg SonnenbergerEntries in /etc/pam.d/ override entries in /etc/pam.conf. In addition 3501fcc7462SJoerg Sonnenbergerthe pam_skey.so module was retired, you have to remove it manually from 3511fcc7462SJoerg Sonnenbergeryour configuration, when you convert it. 35258116288SJoerg Sonnenberger 353a3107071SMatthew Dillon> Required user and group IDs when upgrading from either FreeBSD or DragonFly 354a3107071SMatthew Dillon--------------------- 355a3107071SMatthew Dillon 356a3107071SMatthew DillonThe following users may be missing from your password file. Use vipw and 357a3107071SMatthew Dillonadd any that are missing: 358a3107071SMatthew Dillon 359a3107071SMatthew Dillonsmmsp:*:25:25::0:0:Sendmail Submission User:/var/spool/clientmqueue:/sbin/nologin 360dcf85892SJoerg Sonnenberger_pflogd:*:64:64::0:0:pflogd privsep user:/var/empty:/sbin/nologin 361a3107071SMatthew Dillon 362a3107071SMatthew DillonThe following groups may be missing from your group file. Use vi /etc/group 363a3107071SMatthew Dillonand add any that are missing: 364a3107071SMatthew Dillon 365a3107071SMatthew Dillonsmmsp:*:25: 366a3107071SMatthew Dillonauthpf:*:63: 367dcf85892SJoerg Sonnenberger_pflogd:*:64: 368a3107071SMatthew Dillon 369a3107071SMatthew Dillon 370f419dacaSMatthew Dillon> Upgrading to DragonFly from FreeBSD 371984263bcSMatthew Dillon--------------------- 372984263bcSMatthew Dillon 373f419dacaSMatthew DillonYou can build the DragonFly world and DragonFly kernels on a FreeBSD-4.x or 374f419dacaSMatthew DillonFreeBSD-5.x machine and then install DragonFly over FreeBSD, replacing 375f419dacaSMatthew DillonFreeBSD. Note that the DragonFly buildworld target does not try to reuse 376f419dacaSMatthew Dillonmake depend information, it starts from scratch, so no pre-cleaning of the 377f419dacaSMatthew Dillonobject hierarchy is necessary. 378984263bcSMatthew Dillon 379466bbc10SHiten Pandya # get the CVS repository (it is placed in /home/dcvs, 500MB). 380f419dacaSMatthew Dillon # Please use the -h option and a mirror site to pull the 381f419dacaSMatthew Dillon # initial repository, but feel free to use the main repository 382f419dacaSMatthew Dillon # machine to pull updates. 3835010eeb3SSascha Wildner cvsup /usr/share/examples/cvsup/DragonFly-cvs-supfile 384f419dacaSMatthew Dillon # install the source from the CVS hierarchy (remove preexisting 385f419dacaSMatthew Dillon # FreeBSD src first) (500MB) 386f419dacaSMatthew Dillon cd /usr 387f419dacaSMatthew Dillon rm -rf src 38850172b1cSDavid Rhodus cvs -R -d /home/dcvs checkout -P src 389984263bcSMatthew Dillon 390f419dacaSMatthew Dillon # build it (500MB used in /usr/obj) 391f419dacaSMatthew Dillon # 392fb12f484SMatthew Dillon cd /usr/src 393fb12f484SMatthew Dillon make buildworld 394f419dacaSMatthew Dillon make buildkernel KERNCONF=<KERNELNAME> 395f419dacaSMatthew Dillon 396f419dacaSMatthew DillonOnce you have built DragonFly you have to install it over FreeBSD. Since 397f419dacaSMatthew DillonDragonFly does not track changes made by FreeBSD to its include file 398f419dacaSMatthew Dillonhierarchy and include file pollution can cause all sorts of unexpected 399f419dacaSMatthew Dilloncompilation issues to come up, it is best to wipe your include hierarchy 400f419dacaSMatthew Dillonprior to installing DragonFly. Note that you should not wipe any installed 401f419dacaSMatthew DillonFreeBSD header files or binaries until after you have successfully completed 402f419dacaSMatthew Dillonthe build steps above. 403f419dacaSMatthew Dillon 404f419dacaSMatthew Dillon rm -rf /usr/include 405f419dacaSMatthew Dillon mkdir /usr/include 406f419dacaSMatthew Dillon make installkernel KERNCONF=<KERNELNAME> 407fb12f484SMatthew Dillon make installworld 408fb12f484SMatthew Dillon 409b8cbf045SSascha WildnerThen you need to upgrade your system. DragonFly's 'make upgrade' target 410f419dacaSMatthew Dillonwill unconditionally upgrade the /etc files that sysops do not usually 411b8cbf045SSascha Wildnermess around with, such as the files in /etc/rc.d. It will also remove any 412b8cbf045SSascha Wildnerobsolete files such as utilities and manpages that have been removed from 413b8cbf045SSascha Wildnerthe system since the version you're coming from. If you are unsure we 414b8cbf045SSascha Wildnerrecommend that you make a backup of at least your /etc before applying 415b8cbf045SSascha Wildnerthis step. Note that DragonFly's RC system is basically RCNG from 416b8cbf045SSascha WildnerFreeBSD-5, but there are some differences in the contents of the RC files. 417f419dacaSMatthew Dillon 418f419dacaSMatthew Dillon make upgrade 419f419dacaSMatthew Dillon 420b8cbf045SSascha WildnerNOTE! Never do a 'make upgrade' before 'make installworld' has been run. 421b8cbf045SSascha WildnerDoing so might leave your system in an unusable state. 422b8cbf045SSascha Wildner 423f419dacaSMatthew DillonFinally we recommend that you do an 'ls -lta BLAH' for /bin, /sbin, /usr/bin, 424b8cbf045SSascha Wildner/usr/bin, and /usr/lib, and remove any stale files that you find. Please 425b8cbf045SSascha Wildnerreport these files to the DragonFly developers so that they can be added to 426b8cbf045SSascha Wildnerthe 'upgrade' target. 427f419dacaSMatthew Dillon 428