xref: /freebsd/UPDATING (revision 38d6ecd20cd1b5f86800d63f28de5d02ad42ea54)
157199806SWarner LoshUpdating Information for FreeBSD current users
253dfde79SWarner Losh
3f8c77507SWarner LoshThis file is maintained by imp@village.org.  Please send new entries
4dc0dbf5cSWarner Loshdirectly to him.  See end of file for further details.  For commonly
516de1a07SWarner Loshdone items, please see the end of the file.  Search for 'COMMON
616de1a07SWarner LoshITEMS:'
716de1a07SWarner Losh
8f4865386SMark Murray20000911:
9f4865386SMark Murray	The random device has been turned into a (pseudo-)device,
10f4865386SMark Murray	rather than an option. The supplied kernel config files have
11f4865386SMark Murray	been updated. You will need to do something similar in your
12f4865386SMark Murray	own kernel config file.
13f4865386SMark Murray	Remove:
14f4865386SMark Murray		options		RANDOMDEV
15f4865386SMark Murray	Add:
16f4865386SMark Murray		device		random
17f4865386SMark Murray	If you prefer to load the loadable module, you need to do
18f4865386SMark Murray	nothing.
19f4865386SMark Murray
20d594498fSWarner Losh20000909:
21d594498fSWarner Losh	The random device module has been renamed from randomdev.ko to
22d594498fSWarner Losh	random.ko. You will need to edit your /boot/loader.conf to
23d594498fSWarner Losh	reflect this if you load this module at boot time.
24d594498fSWarner Losh	The line should read:
25d594498fSWarner Losh		random_load="YES"
26d594498fSWarner Losh
270deb7ddcSWarner Losh20000907:
280deb7ddcSWarner Losh	The SMPNG commit has happened.  It should work, but if it
2916eb772dSWarner Losh	doesn't, fallback to the PRE_SMPNG CVS tag.  There are likely
3016eb772dSWarner Losh	to be a variety of minor issues.  Please see 20000905 to make
3116eb772dSWarner Losh	sure you don't have model loading problems which might at
3216eb772dSWarner Losh	first blush appear related to SMP.
3352bf24e7SWarner Losh
345a01880bSWarner Losh20000906:
355a01880bSWarner Losh	nsswitch has been imported from NetBSD.  Among other things,
365a01880bSWarner Losh	this means that /etc/host.conf is no longer used.  See
375a01880bSWarner Losh	nsswitch.conf(5) instead.  Note that at boot time rc.network
385a01880bSWarner Losh	will attempt to produce a new nsswitch.conf file for you if you
395a01880bSWarner Losh	don't have one, and you have host.conf.
405a01880bSWarner Losh
412b41163cSWarner Losh20000905:
4238d6ecd2SWarner Losh	The ucred structure changed size.  This breaks the interface
4338d6ecd2SWarner Losh	that mountd uses.  Trying to use an older mountd with a newer
4438d6ecd2SWarner Losh	kernel guarantees a panic.  This means that you need to use
4538d6ecd2SWarner Losh	kernels newer than today only with matching mountd, but you
4638d6ecd2SWarner Losh	needed to do that anyway with the boot loader changes.
4738d6ecd2SWarner Losh
4838d6ecd2SWarner Losh20000905:
498aab4bc7SWarner Losh	The boot loader has been updated.  The new default kernel is
508aab4bc7SWarner Losh	now /boot/kernel/kernel.ko.  The new default module location
518aab4bc7SWarner Losh	is /boot/kernel.
528aab4bc7SWarner Losh
538aab4bc7SWarner Losh	You *MUST* upgrade your boot loader and kernel at the same time.
5438d6ecd2SWarner Losh	The easiest way to do this is to do the buildworld/buildkernel/
5538d6ecd2SWarner Losh	installkernel/installworld dance.
562b41163cSWarner Losh
57d594498fSWarner Losh	Furthermore, you are urged to delete your old /modules directory
58d594498fSWarner Losh	before booting the new kernel, since kldload will find stale
59d594498fSWarner Losh	modules in that directory instead of finding them in the correct
60d594498fSWarner Losh	path, /boot/kernel.  The most common complaint that this cures
61d594498fSWarner Losh	is that the linux module crashes your machine after the update.
62d594498fSWarner Losh
63d594498fSWarner Losh	if [ ! -d /boot/kernel.old ]; then
64d594498fSWarner Losh		mv /modules.old /boot/kernel.old
65d594498fSWarner Losh		chflags noschg /kernel.old
66d594498fSWarner Losh		mv /kernel.old /boot/kernel.old/kernel.ko
67d594498fSWarner Losh		chflags schg /boot/kernel.old/kernel.ko
68d594498fSWarner Losh	fi
69d594498fSWarner Losh
70c22a309cSWarner Losh20000904:
71c22a309cSWarner Losh	A new issue with the sendmail upgrade has come to light.
72c22a309cSWarner Losh	/etc/aliases has moved to /etc/mail/aliases.  Mergemaster will
73c22a309cSWarner Losh	incorrectly install the default aliases in /etc/mail rather than
74c22a309cSWarner Losh	move the old one from /etc.  So you'll need to manually move the
75c22a309cSWarner Losh	file, create a symbolic link, remove the old /etc/aliases.db and
76c22a309cSWarner Losh	run newaliases.  For safety sake, you should stop sendmail
77c22a309cSWarner Losh	while doing this and run the upgrade when locally sourced email
78c22a309cSWarner Losh	is not likely to be generated.
79c22a309cSWarner Losh
80fdb9f54dSWarner Losh20000825:
81fdb9f54dSWarner Losh	/boot/device.hints is now required for installkernel to
829c1a7444SWarner Losh	succeed.  You should copy GENERIC.hints for your architecture
839c1a7444SWarner Losh	into /boot/device.hints.  If and only if you compile hints
849c1a7444SWarner Losh	into your kernel, then this file may be empty.  Please note,
859c1a7444SWarner Losh	if you have an empty or missing /boot/device.hints file and
869c1a7444SWarner Losh	you neglected to compile hints into your kernel, no boot
879c1a7444SWarner Losh	messages will appear after the boot loader tries to start the
889c1a7444SWarner Losh	kernel.
899c1a7444SWarner Losh
909c1a7444SWarner Losh20000821:
919c1a7444SWarner Losh	If you do NOT have ``options RANDOMDEV'' in your kernel and
929c1a7444SWarner Losh	you DO want the random device then add randomdev_load="YES" to
939c1a7444SWarner Losh	/boot/loader.conf.
94fdb9f54dSWarner Losh
958f250aa7SWarner Losh20000812:
965da0d091SWarner Losh	suidperl is now always built and installed on the system, but
975da0d091SWarner Losh	with permissions of 511.  If you have applications that use
985da0d091SWarner Losh	this program, you are now required to add ENABLE_SUIDPERL=true
995da0d091SWarner Losh	to /etc/make.conf.  If you forget to do this,
1005da0d091SWarner Losh		chmod 4511 /usr/bin/suidperl
1015da0d091SWarner Losh	will fix this until the next build.
1025da0d091SWarner Losh
1035da0d091SWarner Losh20000812:
1048f250aa7SWarner Losh	sendmail has been updated from 8.9.3 to 8.11.0.  Some of the more
1058f250aa7SWarner Losh	visible changes that may immediately affect your configuration
1068f250aa7SWarner Losh	include:
1078f250aa7SWarner Losh	- New default file locations from src/contrib/sendmail/cf/README
1088f250aa7SWarner Losh	- newaliases limited to root and trusted users
1098f250aa7SWarner Losh	- MSA port (587) turned on by default
1108f250aa7SWarner Losh	- New queue file naming system so can't go from 8.11 -> 8.9
1118f250aa7SWarner Losh	- FEATURE(`rbl') renamed to FEATURE(`dnsbl')
1128f250aa7SWarner Losh	- FEATURE(`nullclient') is more full featured
1138f250aa7SWarner Losh	- FEATURE(`nouucp') requires an argument: `reject' or `nospecial'
1148f250aa7SWarner Losh	- mail.local FreeBSD-only -b option changed to -B
1158f250aa7SWarner Losh	- See src/contrib/sendmail/RELEASE_NOTES for more info
1168f250aa7SWarner Losh
11771c38472SWarner Losh20000810:
11871c38472SWarner Losh	suidperl (aka sperl) is no longer build by default.  You must
11971c38472SWarner Losh	specifically define BUILD_SUIDPERL to "true" for it to be build.
12071c38472SWarner Losh	Furthermore, we recommend that you remove /usr/bin/sperl* and
12171c38472SWarner Losh	/usr/bin/suidperl files from your system unless you have a
12271c38472SWarner Losh	specific use for it.
12371c38472SWarner Losh
12471c38472SWarner Losh20000729:
12571c38472SWarner Losh	Networking defaults have been tightened.  Anybody upgrading
12671c38472SWarner Losh	/etc/defaults/rc.conf needs to add the following lines to
12771c38472SWarner Losh	/etc/rc.conf if they want to have the same setup
12871c38472SWarner Losh	afterwards (unless the variables already are set, of course):
12971c38472SWarner Losh		# Enable network daemons for user convenience.
13071c38472SWarner Losh		inetd_enable="YES"
13171c38472SWarner Losh		portmap_enable="YES"
13271c38472SWarner Losh		sendmail_enable="YES"
13371c38472SWarner Losh
13471c38472SWarner Losh20000728:
13571c38472SWarner Losh	If you have null_load="YES" in your /boot/loader.conf, you
13671c38472SWarner Losh	will need to change that to nullfs_load="YES".
13771c38472SWarner Losh
1381dece4a9SWarner Losh20000728:
1391dece4a9SWarner Losh	The "installkernel" target has changed slightly. Now even if
1401dece4a9SWarner Losh	you override KERNEL e.g. 'make installkernel KERNEL=MYKERNEL'
1411dece4a9SWarner Losh	it will install the MYKERNEL file (built with the buildkernel
1421dece4a9SWarner Losh	target) as /kernel rather than /MYKERNEL. Those who have
1431dece4a9SWarner Losh	updated their /boot/loader.conf files to point to /MYKERNEL
1441dece4a9SWarner Losh	should remove that entry or perform manual rename of /kernel
1451dece4a9SWarner Losh	to /MYKERNEL.
1461dece4a9SWarner Losh
147409e887cSWarner Losh20000711:
148409e887cSWarner Losh	If you use CVSUP or CTM to get CVS trees, AND you used to get
149409e887cSWarner Losh	the old crypto files from internat.freebsd.org AND you check
150409e887cSWarner Losh	out files from the CVS tree with the cvs command, please read
151409e887cSWarner Losh		http://people.freebsd.org/~imp/internat.txt
152409e887cSWarner Losh	for details on potential problems that you might have and how
153409e887cSWarner Losh	to get around them.
154409e887cSWarner Losh
155409e887cSWarner Losh	If you are merely a mirror, or don't answer yes to each of the
156409e887cSWarner Losh	clauses above, you needn't worry.
157409e887cSWarner Losh
158409e887cSWarner Losh20000711:
159409e887cSWarner Losh	/etc/security has been updated to print the inode number of
160409e887cSWarner Losh	setuid programs that have changed.  You will see a large spike
161409e887cSWarner Losh	in the number of changed programs the first time when you run
162409e887cSWarner Losh	mergemaster to get a new /etc/security.
163409e887cSWarner Losh
164673d13f2SWarner Losh20000710:
165673d13f2SWarner Losh	/dev/random now has good entropy collection (from the keyboard
166673d13f2SWarner Losh	and sysmouse drivers). Please ensure that either `options
167673d13f2SWarner Losh	RANDOMDEV' is present in your kernel config file or that
168673d13f2SWarner Losh	`randomdev_load="YES"' is in your /boot/loader.conf. If you do
169673d13f2SWarner Losh	not have the /dev/random driver, OpenSSL (and consequently
170673d13f2SWarner Losh	lots of crypto tools (like SSH)) will fail with strange
171673d13f2SWarner Losh	errors. (see below, 20000624).
172673d13f2SWarner Losh
173bed5c5ffSWarner Losh	FreeBSD-current is safe again to run Crypto.
1741dece4a9SWarner Losh
175673d13f2SWarner Losh20000709:
176c6dd1430SWarner Losh	phk made the malloc default options AJ.  This may slow things
177c6dd1430SWarner Losh	down and uncover other latent bugs in the code.  If you need to
178c6dd1430SWarner Losh	run at full speed, you can disable this by doing the following:
179673d13f2SWarner Losh		ln -s aj /etc/malloc.conf
180673d13f2SWarner Losh
181e98e26cdSWarner Losh20000706:
182e98e26cdSWarner Losh	libftpio's version was accidentally bumped a few days ago.  This
183e98e26cdSWarner Losh	has been corrected.  You may need to remove /usr/lib/libftpio.so.6
184e98e26cdSWarner Losh	before doing your next buildworld/installworld pair.  It certainly
185f699bbbbSMark Ovens	won't hurt to remove it before the update procedure.  It will
186e98e26cdSWarner Losh	break fetch until a new one is built, but ftp can be used in the
1872c021c6cSMark Ovens	interim if needed.
188e98e26cdSWarner Losh
189e98e26cdSWarner Losh20000705:
190e98e26cdSWarner Losh	The crypto packages have changed for the cvsup.  This has been done
191e98e26cdSWarner Losh	in a backward compatible way, but the old packages will go away at
192e98e26cdSWarner Losh	some point in the future.  Look at /usr/share/examples/cvsup for
193e98e26cdSWarner Losh	details.
194e98e26cdSWarner Losh
195c373950eSWarner Losh20000704:
1962f961bc8SWarner Losh	With the new sys/modules/sound/drivers/*, you will need to
1972f961bc8SWarner Losh	set SYSDIR until you do an installworld after July 7th.
1982f961bc8SWarner Losh
1992f961bc8SWarner Losh20000704:
200c373950eSWarner Losh	rc.shutdown and rc will now call the rc.d scripts with start
201c373950eSWarner Losh	or stop.  This may cause some harmless warnings from older
202c373950eSWarner Losh	rc.d scripts that haven't been updated.
203c373950eSWarner Losh
20427dc3a2bSWarner Losh20000630:
20527dc3a2bSWarner Losh	The libfetch based version of fetch has gone into the tree.
20627dc3a2bSWarner Losh	Minor problems may result on some of the less popular sites,
20727dc3a2bSWarner Losh	which should be reported to des@freebsd.org.
20827dc3a2bSWarner Losh
209b8c215acSWarner Losh20000625:
210b8c215acSWarner Losh	From approximately this date forward, one must have the crypto
21127dc3a2bSWarner Losh	system installed in order to build the system and kernel.
21227dc3a2bSWarner Losh	While not technically strictly true, one should treat it as
21327dc3a2bSWarner Losh	required and grab the crypto bits.  If you are grabbing CVS
21427dc3a2bSWarner Losh	trees, src-all and cvs-crypto should be treated as if they
21527dc3a2bSWarner Losh	were required.  You should check with the latest collections
21627dc3a2bSWarner Losh	to make sure that these haven't changed.
217b8c215acSWarner Losh
2187b990719SWarner Losh20000624:
2197b990719SWarner Losh	Mark Murray just committed the first parts of a cleanup of
2207b990719SWarner Losh	/dev/zero, et al.  This is also cleaning up /dev/random.
2217b990719SWarner Losh	The entropy is disconnected, so DO NOT USE VERSIONS OF FREEBSD
2227b990719SWarner Losh	-CURRENT FROM THIS POINT FORWARD for cryptographic services
2237b990719SWarner Losh	until Mark can merge in the fixes to this work in progress.
2247b990719SWarner Losh	openssh and openssl should not be used to generate keys from this
2257b990719SWarner Losh	date to the completion of the work.
2267b990719SWarner Losh
22727dc3a2bSWarner Losh	If you must operate at this reduced level of security, add '
22827dc3a2bSWarner Losh	options RANDOMDEV' to your kernel or modload the randomdev
22927dc3a2bSWarner Losh	module.  You may also need to copy a new MAKEDEV to /dev and
23027dc3a2bSWarner Losh	recreate the random and urandom devices.
23127dc3a2bSWarner Losh
23281e54c50SWarner Losh20000622:
23381e54c50SWarner Losh	The license on the softupdates is now a standard 2 clause
23481e54c50SWarner Losh	BSD license.  You may need to remove your symbolic links
23581e54c50SWarner Losh	that used to be required when updating.
23681e54c50SWarner Losh
23739943833SWarner Losh20000621:
2382c021c6cSMark Ovens	Scott Flatman <sf@aracnet.com> sent in a decent write-up on
2392a2f33fbSDaniel Baker	the config file update procedure.
2402a2f33fbSDaniel Baker		http://people.freebsd.org/~imp/config-upd.html
241c373950eSWarner Losh	NOTE: LINT is gone.  It has been replaced with NOTES.  NOTES
242a24eff53SWarner Losh	isn't buildable.  However, you can generate a LINT file.
24339943833SWarner Losh
244290f9ad8SWarner Losh20000620:
245290f9ad8SWarner Losh	Binutils 2.10 have hit the tree, or will shortly.  As soon
246290f9ad8SWarner Losh	as they do, the problem noted in 20000522 will be resolved and
247290f9ad8SWarner Losh	that workaround will no longer be required.
248290f9ad8SWarner Losh
24990fb6346SWarner Losh20000615:
25090fb6346SWarner Losh	phk removed the compatibility creation of wd devices in the
25190fb6346SWarner Losh	ad driver.  If you haven't done so already, you must update
25290fb6346SWarner Losh	your fstab, etc to use the ad devices instead of the wd
25390fb6346SWarner Losh	devices.
25490fb6346SWarner Losh
255f75f65bbSWarner Losh	In addition, you'll need to update your boot blocks to a
256f75f65bbSWarner Losh	more modern version, if you haven't already done so.  Modern
257f75f65bbSWarner Losh	here means 4.0 release or newer (although older releases
258f75f65bbSWarner Losh	may work).
259f75f65bbSWarner Losh
260ba26da8eSWarner Losh20000612:
261ba26da8eSWarner Losh	Peter took an axe to config(8).  Be sure that you read his mail
262290f9ad8SWarner Losh	on the topic before even thinking about updating.  You will
263c6dd1430SWarner Losh	need to create a /boot/device.hints or add a hints directive
264290f9ad8SWarner Losh	to your config file to compile them in statically.  The format
265f54a3542SWarner Losh	of the config file has changed as well.  Please see GENERIC or
266f54a3542SWarner Losh	NEWCARD for examples of the new format.
267290f9ad8SWarner Losh
268d65850ebSWarner Losh20000522:
269ba26da8eSWarner Losh	A new set of binutils went into the tree today.  Anybody
270d65850ebSWarner Losh	building a kernel after this point is advised that they need
271d65850ebSWarner Losh	to rebuild their binutils (or better yet do a
272d65850ebSWarner Losh	buildworld/installworld) before building a new kernel.
273d65850ebSWarner Losh
274d9583a00SWarner Losh	Due to bugs in binutils, using malloc options (eg /etc/malloc.conf
275d9583a00SWarner Losh	or MALLOC_OPTIONS env var) J will cause ld to dump core.  It
276d9583a00SWarner Losh	is recommended that you don't set this option until the problem
277d9583a00SWarner Losh	is resolved.
278d9583a00SWarner Losh
2798039cedeSWarner Losh20000513:
2808039cedeSWarner Losh	The ethernet drivers were all updated to clean up the BPF handling.
2818039cedeSWarner Losh
282d65850ebSWarner Losh20000510:
2838039cedeSWarner Losh	The problems with boot blocks on the alphas have been corrected.
2848039cedeSWarner Losh	This will require some care in updating alphas.  A new libstand
2858039cedeSWarner Losh	is requires for the boot blocks to build properly.
2868039cedeSWarner Losh
2878039cedeSWarner Losh20000503:
2888039cedeSWarner Losh	Recompile all kld modules.  Proper version dependency info
2898039cedeSWarner Losh	is now available.
2908039cedeSWarner Losh
291d65850ebSWarner Losh20000502:
292d65850ebSWarner Losh	Modules have been disconnected from the buildworld tree and
293d65850ebSWarner Losh	connected to the kernel building instead.
294d65850ebSWarner Losh
2958039cedeSWarner Losh2000427:
2968039cedeSWarner Losh	You may need to build gperf
2978039cedeSWarner Losh		cd /usr/src/gnu/usr.bin/gperf && make depend all install
2988039cedeSWarner Losh	when upgrading from 4.0 -> current.  The build system now uses
2998039cedeSWarner Losh	an option only in -current.
3008039cedeSWarner Losh
3012b8dd5f4SWarner Losh20000417:
3022b8dd5f4SWarner Losh	The method that we brand ELF binaries has changed to be more
303f699bbbbSMark Ovens	acceptable to the binutils maintainers.  You will need to
3042b8dd5f4SWarner Losh	rebrand your ELF binaries that aren't native.  One problem
3052b8dd5f4SWarner Losh	binary is the Linux ldconfig.  After your make world, but
3062c021c6cSMark Ovens	before you reboot, you'll need to issue:
3072b8dd5f4SWarner Losh		brandelf -t Linux /compat/linux/sbin/ldconfig
3082b8dd5f4SWarner Losh	if you have Linux compatibility enabled on your machine.
3092b8dd5f4SWarner Losh
3108d9f1945SWarner Losh20000320:
3112b8dd5f4SWarner Losh	If you have really bad/marginal IDE drives, you may find they
3122b8dd5f4SWarner Losh	don't work well.  Use pio mode instead.  The easiest way to
3132b8dd5f4SWarner Losh	cope if you have a problem combination is to add:
3148d9f1945SWarner Losh		/sbin/sysctl -w hw.atamodes=pio,pio,pio,pio
3152b8dd5f4SWarner Losh	to the start of /etc/rc.conf.
3168d9f1945SWarner Losh
317f8ab1dd6SWarner Losh20000319:
318f699bbbbSMark Ovens	The ISA and PCI compatibility shims have been connected to the
319f8ab1dd6SWarner Losh	options COMPAT_OLDISA and COMPAT_OLDPCI.  If you are using old
320f8ab1dd6SWarner Losh	style PCI or ISA drivers (i.e. tx, voxware, etc.) you must
321f8ab1dd6SWarner Losh	include the appropriate option in your kernel config.  Drivers
322f8ab1dd6SWarner Losh	using the shims should be updated or they won't ship with
323f8ab1dd6SWarner Losh	5.0-RELEASE, targeted for 2001.
324f8ab1dd6SWarner Losh
32519cada77SWarner Losh20000318:
326f699bbbbSMark Ovens	We've entered the traditional post release dumping party.
32719cada77SWarner Losh	Large kernel changes are being committed and are in the
32819cada77SWarner Losh	works.  It is important to keep the systems' klds and kernel
32919cada77SWarner Losh	in sync as kernel interfaces and structures are changing.
33019cada77SWarner Losh	Before reporting kernel panics, make sure that all modules
33119cada77SWarner Losh	that you are loading are up to date.
332ba228352SWarner Losh
33319cada77SWarner Losh20000315:
3346d23c382SWarner Losh	If you are upgrading from an older version of FreeBSD, you
3356d23c382SWarner Losh	need to update your boot blocks as well.  'disklabel -B ad0'
3366d23c382SWarner Losh	will do the trick.  This isn't critical until you remove your
3376d23c382SWarner Losh	wd device entries in /dev, at which point your system will not
3386d23c382SWarner Losh	boot.
3396d23c382SWarner Losh
3406d23c382SWarner Losh20000315:
34119cada77SWarner Losh	4.0 RELEASE shipped.  Please see the 4.0 UPDATING file for how
34219cada77SWarner Losh	to upgrade to 4.0 from 3.x.
34357199806SWarner Losh
344dc0dbf5cSWarner LoshCOMMON ITEMS:
345dc0dbf5cSWarner Losh
346a24eff53SWarner Losh	General Notes
347a24eff53SWarner Losh	-------------
348a24eff53SWarner Losh	Avoid using make -j when upgrading.  From time to time in the
349a24eff53SWarner Losh	past there have been problems using -j with buildworld and/or
350a24eff53SWarner Losh	installworld.  This is especially true when upgrading between
351a24eff53SWarner Losh	"distant" versions (eg one that cross a major release boundary
352a24eff53SWarner Losh	or several minor releases, or when several months have passed
353a24eff53SWarner Losh	on the -current branch).
354a24eff53SWarner Losh
355dc0dbf5cSWarner Losh	To build a kernel
356dc0dbf5cSWarner Losh	-----------------
357ba01eb20SWarner Losh	If you are updating from a prior version of FreeBSD (even one just
358f699bbbbSMark Ovens	a few days old), you should follow this procedure. With a
359ba01eb20SWarner Losh	/usr/obj tree with a fresh buildworld,
360ba01eb20SWarner Losh	make buildkernel KERNEL=YOUR_KERNEL_HERE
361ba01eb20SWarner Losh	make installkernel KERNEL=YOUR_KERNEL_HERE
362dc0dbf5cSWarner Losh
363ba01eb20SWarner Losh	To just build a kernel when you know that it won't mess you up
364ba01eb20SWarner Losh	--------------------------------------------------------------
365ba01eb20SWarner Losh	cd src/sys/{i386,alpha}/conf
366ba01eb20SWarner Losh	config KERNEL_NAME_HERE			[1]
367ba01eb20SWarner Losh	cd ../../compile/KERNEL_NAME_HERE
368ba01eb20SWarner Losh	make depend
369ba01eb20SWarner Losh	make
370ba01eb20SWarner Losh	make install
371ba01eb20SWarner Losh
372ba01eb20SWarner Losh	[1] If in doubt, -r might help here.
373ba01eb20SWarner Losh
374ba01eb20SWarner Losh	If this fails, go to the "To build a kernel" section.
375ba01eb20SWarner Losh
376ba01eb20SWarner Losh	To rebuild everything and install it on the current system.
377ba01eb20SWarner Losh	-----------------------------------------------------------
378759f0aefSWarner Losh	make world
379fdb9f54dSWarner Losh	Build a new kernel, see above.
380759f0aefSWarner Losh
3811dece4a9SWarner Losh	To upgrade from 4.x-stable to current
382ba26da8eSWarner Losh	-------------------------------------
383ba26da8eSWarner Losh	make buildworld
384ba26da8eSWarner Losh	make buildkernel KERNEL=YOUR_KERNEL_HERE
3859c1a7444SWarner Losh	cp src/sys/${MACHINE_ARCH}/GENERIC.hints /boot/device.hints [2]
386ba26da8eSWarner Losh	make installkernel KERNEL=YOUR_KERNEL_HERE
387ba26da8eSWarner Losh	make installworld
388134d2e86SWarner Losh	[1]
389ba26da8eSWarner Losh	<reboot>
390ba26da8eSWarner Losh
391fdb9f54dSWarner Losh	Make sure that you've read the UPDATING file to understand the
392fdb9f54dSWarner Losh	tweaks to various things you need.  At this point in the life
393fdb9f54dSWarner Losh	cycle of current, things change often and you are on your own
394fdb9f54dSWarner Losh	to cope.  The defaults can also change, so please read ALL of
395fdb9f54dSWarner Losh	the UPDATING entries.
396ba26da8eSWarner Losh
3971dece4a9SWarner Losh	Also, if you are tracking -current, you must be subscribed to
3981dece4a9SWarner Losh	freebsd-current@freebsd.org.  Make sure that before you update
3991dece4a9SWarner Losh	your sources that you have read and understood all the recent
4001dece4a9SWarner Losh	messages there.  If in doubt, please track -stable which has
4011dece4a9SWarner Losh	much fewer pitfalls.
4021dece4a9SWarner Losh
403134d2e86SWarner Losh	[1] If you have third party modules, such as vmware, you
404134d2e86SWarner Losh	should disable them at this point so they don't crash your
405134d2e86SWarner Losh	system on reboot.
406134d2e86SWarner Losh
4079c1a7444SWarner Losh	[2] If you have legacy ISA devices, you may need to create
4089c1a7444SWarner Losh	your own device.hints to reflect your unique hardware
4099c1a7444SWarner Losh	configuration.
4109c1a7444SWarner Losh
411dc0dbf5cSWarner LoshFORMAT:
412dc0dbf5cSWarner Losh
413f699bbbbSMark OvensThis file contains a list, in reverse chronological order, of major
4141fc1a0dcSWarner Loshbreakages in tracking -current.  Not all things will be listed here,
415f8ab1dd6SWarner Loshand it only starts on March 15, 2000.  Updating files can found in
416f8ab1dd6SWarner Loshprevious releases if your system is older than this.
4171fc1a0dcSWarner Losh
4183645fc1cSWarner LoshPlease filter your entries through Warner Losh (imp@village.org) so
4193645fc1cSWarner Loshthat the style, formatting, etc of this file can be maintained.
420f8c77507SWarner Losh
42197d92980SPeter Wemm$FreeBSD$
422