xref: /freebsd/UPDATING (revision c22a309c557c0b1a00b7fe6e541623270ec2692e)
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
8*c22a309cSWarner Losh20000904:
9*c22a309cSWarner Losh	A new issue with the sendmail upgrade has come to light.
10*c22a309cSWarner Losh	/etc/aliases has moved to /etc/mail/aliases.  Mergemaster will
11*c22a309cSWarner Losh	incorrectly install the default aliases in /etc/mail rather than
12*c22a309cSWarner Losh	move the old one from /etc.  So you'll need to manually move the
13*c22a309cSWarner Losh	file, create a symbolic link, remove the old /etc/aliases.db and
14*c22a309cSWarner Losh	run newaliases.  For safety sake, you should stop sendmail
15*c22a309cSWarner Losh	while doing this and run the upgrade when locally sourced email
16*c22a309cSWarner Losh	is not likely to be generated.
17*c22a309cSWarner Losh
18fdb9f54dSWarner Losh20000825:
19fdb9f54dSWarner Losh	/boot/device.hints is now required for installkernel to
209c1a7444SWarner Losh	succeed.  You should copy GENERIC.hints for your architecture
219c1a7444SWarner Losh	into /boot/device.hints.  If and only if you compile hints
229c1a7444SWarner Losh	into your kernel, then this file may be empty.  Please note,
239c1a7444SWarner Losh	if you have an empty or missing /boot/device.hints file and
249c1a7444SWarner Losh	you neglected to compile hints into your kernel, no boot
259c1a7444SWarner Losh	messages will appear after the boot loader tries to start the
269c1a7444SWarner Losh	kernel.
279c1a7444SWarner Losh
289c1a7444SWarner Losh20000821:
299c1a7444SWarner Losh	If you do NOT have ``options RANDOMDEV'' in your kernel and
309c1a7444SWarner Losh	you DO want the random device then add randomdev_load="YES" to
319c1a7444SWarner Losh	/boot/loader.conf.
32fdb9f54dSWarner Losh
338f250aa7SWarner Losh20000812:
345da0d091SWarner Losh	suidperl is now always built and installed on the system, but
355da0d091SWarner Losh	with permissions of 511.  If you have applications that use
365da0d091SWarner Losh	this program, you are now required to add ENABLE_SUIDPERL=true
375da0d091SWarner Losh	to /etc/make.conf.  If you forget to do this,
385da0d091SWarner Losh		chmod 4511 /usr/bin/suidperl
395da0d091SWarner Losh	will fix this until the next build.
405da0d091SWarner Losh
415da0d091SWarner Losh20000812:
428f250aa7SWarner Losh	sendmail has been updated from 8.9.3 to 8.11.0.  Some of the more
438f250aa7SWarner Losh	visible changes that may immediately affect your configuration
448f250aa7SWarner Losh	include:
458f250aa7SWarner Losh	- New default file locations from src/contrib/sendmail/cf/README
468f250aa7SWarner Losh	- newaliases limited to root and trusted users
478f250aa7SWarner Losh	- MSA port (587) turned on by default
488f250aa7SWarner Losh	- New queue file naming system so can't go from 8.11 -> 8.9
498f250aa7SWarner Losh	- FEATURE(`rbl') renamed to FEATURE(`dnsbl')
508f250aa7SWarner Losh	- FEATURE(`nullclient') is more full featured
518f250aa7SWarner Losh	- FEATURE(`nouucp') requires an argument: `reject' or `nospecial'
528f250aa7SWarner Losh	- mail.local FreeBSD-only -b option changed to -B
538f250aa7SWarner Losh	- See src/contrib/sendmail/RELEASE_NOTES for more info
548f250aa7SWarner Losh
5571c38472SWarner Losh20000810:
5671c38472SWarner Losh	suidperl (aka sperl) is no longer build by default.  You must
5771c38472SWarner Losh	specifically define BUILD_SUIDPERL to "true" for it to be build.
5871c38472SWarner Losh	Furthermore, we recommend that you remove /usr/bin/sperl* and
5971c38472SWarner Losh	/usr/bin/suidperl files from your system unless you have a
6071c38472SWarner Losh	specific use for it.
6171c38472SWarner Losh
6271c38472SWarner Losh20000729:
6371c38472SWarner Losh	Networking defaults have been tightened.  Anybody upgrading
6471c38472SWarner Losh	/etc/defaults/rc.conf needs to add the following lines to
6571c38472SWarner Losh	/etc/rc.conf if they want to have the same setup
6671c38472SWarner Losh	afterwards (unless the variables already are set, of course):
6771c38472SWarner Losh		# Enable network daemons for user convenience.
6871c38472SWarner Losh		inetd_enable="YES"
6971c38472SWarner Losh		portmap_enable="YES"
7071c38472SWarner Losh		sendmail_enable="YES"
7171c38472SWarner Losh
7271c38472SWarner Losh20000728:
7371c38472SWarner Losh	If you have null_load="YES" in your /boot/loader.conf, you
7471c38472SWarner Losh	will need to change that to nullfs_load="YES".
7571c38472SWarner Losh
761dece4a9SWarner Losh20000728:
771dece4a9SWarner Losh	The "installkernel" target has changed slightly. Now even if
781dece4a9SWarner Losh	you override KERNEL e.g. 'make installkernel KERNEL=MYKERNEL'
791dece4a9SWarner Losh	it will install the MYKERNEL file (built with the buildkernel
801dece4a9SWarner Losh	target) as /kernel rather than /MYKERNEL. Those who have
811dece4a9SWarner Losh	updated their /boot/loader.conf files to point to /MYKERNEL
821dece4a9SWarner Losh	should remove that entry or perform manual rename of /kernel
831dece4a9SWarner Losh	to /MYKERNEL.
841dece4a9SWarner Losh
85409e887cSWarner Losh20000711:
86409e887cSWarner Losh	If you use CVSUP or CTM to get CVS trees, AND you used to get
87409e887cSWarner Losh	the old crypto files from internat.freebsd.org AND you check
88409e887cSWarner Losh	out files from the CVS tree with the cvs command, please read
89409e887cSWarner Losh		http://people.freebsd.org/~imp/internat.txt
90409e887cSWarner Losh	for details on potential problems that you might have and how
91409e887cSWarner Losh	to get around them.
92409e887cSWarner Losh
93409e887cSWarner Losh	If you are merely a mirror, or don't answer yes to each of the
94409e887cSWarner Losh	clauses above, you needn't worry.
95409e887cSWarner Losh
96409e887cSWarner Losh20000711:
97409e887cSWarner Losh	/etc/security has been updated to print the inode number of
98409e887cSWarner Losh	setuid programs that have changed.  You will see a large spike
99409e887cSWarner Losh	in the number of changed programs the first time when you run
100409e887cSWarner Losh	mergemaster to get a new /etc/security.
101409e887cSWarner Losh
102673d13f2SWarner Losh20000710:
103673d13f2SWarner Losh	/dev/random now has good entropy collection (from the keyboard
104673d13f2SWarner Losh	and sysmouse drivers). Please ensure that either `options
105673d13f2SWarner Losh	RANDOMDEV' is present in your kernel config file or that
106673d13f2SWarner Losh	`randomdev_load="YES"' is in your /boot/loader.conf. If you do
107673d13f2SWarner Losh	not have the /dev/random driver, OpenSSL (and consequently
108673d13f2SWarner Losh	lots of crypto tools (like SSH)) will fail with strange
109673d13f2SWarner Losh	errors. (see below, 20000624).
110673d13f2SWarner Losh
111bed5c5ffSWarner Losh	FreeBSD-current is safe again to run Crypto.
1121dece4a9SWarner Losh
113673d13f2SWarner Losh20000709:
114c6dd1430SWarner Losh	phk made the malloc default options AJ.  This may slow things
115c6dd1430SWarner Losh	down and uncover other latent bugs in the code.  If you need to
116c6dd1430SWarner Losh	run at full speed, you can disable this by doing the following:
117673d13f2SWarner Losh		ln -s aj /etc/malloc.conf
118673d13f2SWarner Losh
119e98e26cdSWarner Losh20000706:
120e98e26cdSWarner Losh	libftpio's version was accidentally bumped a few days ago.  This
121e98e26cdSWarner Losh	has been corrected.  You may need to remove /usr/lib/libftpio.so.6
122e98e26cdSWarner Losh	before doing your next buildworld/installworld pair.  It certainly
123f699bbbbSMark Ovens	won't hurt to remove it before the update procedure.  It will
124e98e26cdSWarner Losh	break fetch until a new one is built, but ftp can be used in the
125e98e26cdSWarner Losh	interrum if needed.
126e98e26cdSWarner Losh
127e98e26cdSWarner Losh20000705:
128e98e26cdSWarner Losh	The crypto packages have changed for the cvsup.  This has been done
129e98e26cdSWarner Losh	in a backward compatible way, but the old packages will go away at
130e98e26cdSWarner Losh	some point in the future.  Look at /usr/share/examples/cvsup for
131e98e26cdSWarner Losh	details.
132e98e26cdSWarner Losh
133c373950eSWarner Losh20000704:
1342f961bc8SWarner Losh	With the new sys/modules/sound/drivers/*, you will need to
1352f961bc8SWarner Losh	set SYSDIR until you do an installworld after July 7th.
1362f961bc8SWarner Losh
1372f961bc8SWarner Losh20000704:
138c373950eSWarner Losh	rc.shutdown and rc will now call the rc.d scripts with start
139c373950eSWarner Losh	or stop.  This may cause some harmless warnings from older
140c373950eSWarner Losh	rc.d scripts that haven't been updated.
141c373950eSWarner Losh
14227dc3a2bSWarner Losh20000630:
14327dc3a2bSWarner Losh	The libfetch based version of fetch has gone into the tree.
14427dc3a2bSWarner Losh	Minor problems may result on some of the less popular sites,
14527dc3a2bSWarner Losh	which should be reported to des@freebsd.org.
14627dc3a2bSWarner Losh
147b8c215acSWarner Losh20000625:
148b8c215acSWarner Losh	From approximately this date forward, one must have the crypto
14927dc3a2bSWarner Losh	system installed in order to build the system and kernel.
15027dc3a2bSWarner Losh	While not technically strictly true, one should treat it as
15127dc3a2bSWarner Losh	required and grab the crypto bits.  If you are grabbing CVS
15227dc3a2bSWarner Losh	trees, src-all and cvs-crypto should be treated as if they
15327dc3a2bSWarner Losh	were required.  You should check with the latest collections
15427dc3a2bSWarner Losh	to make sure that these haven't changed.
155b8c215acSWarner Losh
1567b990719SWarner Losh20000624:
1577b990719SWarner Losh	Mark Murray just committed the first parts of a cleanup of
1587b990719SWarner Losh	/dev/zero, et al.  This is also cleaning up /dev/random.
1597b990719SWarner Losh	The entropy is disconnected, so DO NOT USE VERSIONS OF FREEBSD
1607b990719SWarner Losh	-CURRENT FROM THIS POINT FORWARD for cryptographic services
1617b990719SWarner Losh	until Mark can merge in the fixes to this work in progress.
1627b990719SWarner Losh	openssh and openssl should not be used to generate keys from this
1637b990719SWarner Losh	date to the completion of the work.
1647b990719SWarner Losh
16527dc3a2bSWarner Losh	If you must operate at this reduced level of security, add '
16627dc3a2bSWarner Losh	options RANDOMDEV' to your kernel or modload the randomdev
16727dc3a2bSWarner Losh	module.  You may also need to copy a new MAKEDEV to /dev and
16827dc3a2bSWarner Losh	recreate the random and urandom devices.
16927dc3a2bSWarner Losh
17081e54c50SWarner Losh20000622:
17181e54c50SWarner Losh	The license on the softupdates is now a standard 2 clause
17281e54c50SWarner Losh	BSD license.  You may need to remove your symbolic links
17381e54c50SWarner Losh	that used to be required when updating.
17481e54c50SWarner Losh
17539943833SWarner Losh20000621:
17639943833SWarner Losh	Scott Flatman <sf@aracnet.com> sent in a decent writeup on
1772a2f33fbSDaniel Baker	the config file update procedure.
1782a2f33fbSDaniel Baker		http://people.freebsd.org/~imp/config-upd.html
179c373950eSWarner Losh	NOTE: LINT is gone.  It has been replaced with NOTES.  NOTES
180a24eff53SWarner Losh	isn't buildable.  However, you can generate a LINT file.
18139943833SWarner Losh
182290f9ad8SWarner Losh20000620:
183290f9ad8SWarner Losh	Binutils 2.10 have hit the tree, or will shortly.  As soon
184290f9ad8SWarner Losh	as they do, the problem noted in 20000522 will be resolved and
185290f9ad8SWarner Losh	that workaround will no longer be required.
186290f9ad8SWarner Losh
18790fb6346SWarner Losh20000615:
18890fb6346SWarner Losh	phk removed the compatibility creation of wd devices in the
18990fb6346SWarner Losh	ad driver.  If you haven't done so already, you must update
19090fb6346SWarner Losh	your fstab, etc to use the ad devices instead of the wd
19190fb6346SWarner Losh	devices.
19290fb6346SWarner Losh
193f75f65bbSWarner Losh	In addition, you'll need to update your boot blocks to a
194f75f65bbSWarner Losh	more modern version, if you haven't already done so.  Modern
195f75f65bbSWarner Losh	here means 4.0 release or newer (although older releases
196f75f65bbSWarner Losh	may work).
197f75f65bbSWarner Losh
198ba26da8eSWarner Losh20000612:
199ba26da8eSWarner Losh	Peter took an axe to config(8).  Be sure that you read his mail
200290f9ad8SWarner Losh	on the topic before even thinking about updating.  You will
201c6dd1430SWarner Losh	need to create a /boot/device.hints or add a hints directive
202290f9ad8SWarner Losh	to your config file to compile them in statically.  The format
203f54a3542SWarner Losh	of the config file has changed as well.  Please see GENERIC or
204f54a3542SWarner Losh	NEWCARD for examples of the new format.
205290f9ad8SWarner Losh
206d65850ebSWarner Losh20000522:
207ba26da8eSWarner Losh	A new set of binutils went into the tree today.  Anybody
208d65850ebSWarner Losh	building a kernel after this point is advised that they need
209d65850ebSWarner Losh	to rebuild their binutils (or better yet do a
210d65850ebSWarner Losh	buildworld/installworld) before building a new kernel.
211d65850ebSWarner Losh
212d9583a00SWarner Losh	Due to bugs in binutils, using malloc options (eg /etc/malloc.conf
213d9583a00SWarner Losh	or MALLOC_OPTIONS env var) J will cause ld to dump core.  It
214d9583a00SWarner Losh	is recommended that you don't set this option until the problem
215d9583a00SWarner Losh	is resolved.
216d9583a00SWarner Losh
2178039cedeSWarner Losh20000513:
2188039cedeSWarner Losh	The ethernet drivers were all updated to clean up the BPF handling.
2198039cedeSWarner Losh
220d65850ebSWarner Losh20000510:
2218039cedeSWarner Losh	The problems with boot blocks on the alphas have been corrected.
2228039cedeSWarner Losh	This will require some care in updating alphas.  A new libstand
2238039cedeSWarner Losh	is requires for the boot blocks to build properly.
2248039cedeSWarner Losh
2258039cedeSWarner Losh20000503:
2268039cedeSWarner Losh	Recompile all kld modules.  Proper version dependency info
2278039cedeSWarner Losh	is now available.
2288039cedeSWarner Losh
229d65850ebSWarner Losh20000502:
230d65850ebSWarner Losh	Modules have been disconnected from the buildworld tree and
231d65850ebSWarner Losh	connected to the kernel building instead.
232d65850ebSWarner Losh
2338039cedeSWarner Losh2000427:
2348039cedeSWarner Losh	You may need to build gperf
2358039cedeSWarner Losh		cd /usr/src/gnu/usr.bin/gperf && make depend all install
2368039cedeSWarner Losh	when upgrading from 4.0 -> current.  The build system now uses
2378039cedeSWarner Losh	an option only in -current.
2388039cedeSWarner Losh
2392b8dd5f4SWarner Losh20000417:
2402b8dd5f4SWarner Losh	The method that we brand ELF binaries has changed to be more
241f699bbbbSMark Ovens	acceptable to the binutils maintainers.  You will need to
2422b8dd5f4SWarner Losh	rebrand your ELF binaries that aren't native.  One problem
2432b8dd5f4SWarner Losh	binary is the Linux ldconfig.  After your make world, but
2442b8dd5f4SWarner Losh	before you reboot, you'll neeed to issue:
2452b8dd5f4SWarner Losh		brandelf -t Linux /compat/linux/sbin/ldconfig
2462b8dd5f4SWarner Losh	if you have Linux compatibility enabled on your machine.
2472b8dd5f4SWarner Losh
2488d9f1945SWarner Losh20000320:
2492b8dd5f4SWarner Losh	If you have really bad/marginal IDE drives, you may find they
2502b8dd5f4SWarner Losh	don't work well.  Use pio mode instead.  The easiest way to
2512b8dd5f4SWarner Losh	cope if you have a problem combination is to add:
2528d9f1945SWarner Losh		/sbin/sysctl -w hw.atamodes=pio,pio,pio,pio
2532b8dd5f4SWarner Losh	to the start of /etc/rc.conf.
2548d9f1945SWarner Losh
255f8ab1dd6SWarner Losh20000319:
256f699bbbbSMark Ovens	The ISA and PCI compatibility shims have been connected to the
257f8ab1dd6SWarner Losh	options COMPAT_OLDISA and COMPAT_OLDPCI.  If you are using old
258f8ab1dd6SWarner Losh	style PCI or ISA drivers (i.e. tx, voxware, etc.) you must
259f8ab1dd6SWarner Losh	include the appropriate option in your kernel config.  Drivers
260f8ab1dd6SWarner Losh	using the shims should be updated or they won't ship with
261f8ab1dd6SWarner Losh	5.0-RELEASE, targeted for 2001.
262f8ab1dd6SWarner Losh
26319cada77SWarner Losh20000318:
264f699bbbbSMark Ovens	We've entered the traditional post release dumping party.
26519cada77SWarner Losh	Large kernel changes are being committed and are in the
26619cada77SWarner Losh	works.  It is important to keep the systems' klds and kernel
26719cada77SWarner Losh	in sync as kernel interfaces and structures are changing.
26819cada77SWarner Losh	Before reporting kernel panics, make sure that all modules
26919cada77SWarner Losh	that you are loading are up to date.
270ba228352SWarner Losh
27119cada77SWarner Losh20000315:
2726d23c382SWarner Losh	If you are upgrading from an older version of FreeBSD, you
2736d23c382SWarner Losh	need to update your boot blocks as well.  'disklabel -B ad0'
2746d23c382SWarner Losh	will do the trick.  This isn't critical until you remove your
2756d23c382SWarner Losh	wd device entries in /dev, at which point your system will not
2766d23c382SWarner Losh	boot.
2776d23c382SWarner Losh
2786d23c382SWarner Losh20000315:
27919cada77SWarner Losh	4.0 RELEASE shipped.  Please see the 4.0 UPDATING file for how
28019cada77SWarner Losh	to upgrade to 4.0 from 3.x.
28157199806SWarner Losh
282dc0dbf5cSWarner LoshCOMMON ITEMS:
283dc0dbf5cSWarner Losh
284a24eff53SWarner Losh	General Notes
285a24eff53SWarner Losh	-------------
286a24eff53SWarner Losh	Avoid using make -j when upgrading.  From time to time in the
287a24eff53SWarner Losh	past there have been problems using -j with buildworld and/or
288a24eff53SWarner Losh	installworld.  This is especially true when upgrading between
289a24eff53SWarner Losh	"distant" versions (eg one that cross a major release boundary
290a24eff53SWarner Losh	or several minor releases, or when several months have passed
291a24eff53SWarner Losh	on the -current branch).
292a24eff53SWarner Losh
293dc0dbf5cSWarner Losh	To build a kernel
294dc0dbf5cSWarner Losh	-----------------
295ba01eb20SWarner Losh	If you are updating from a prior version of FreeBSD (even one just
296f699bbbbSMark Ovens	a few days old), you should follow this procedure. With a
297ba01eb20SWarner Losh	/usr/obj tree with a fresh buildworld,
298ba01eb20SWarner Losh	make buildkernel KERNEL=YOUR_KERNEL_HERE
299ba01eb20SWarner Losh	make installkernel KERNEL=YOUR_KERNEL_HERE
300dc0dbf5cSWarner Losh
301ba01eb20SWarner Losh	To just build a kernel when you know that it won't mess you up
302ba01eb20SWarner Losh	--------------------------------------------------------------
303ba01eb20SWarner Losh	cd src/sys/{i386,alpha}/conf
304ba01eb20SWarner Losh	config KERNEL_NAME_HERE			[1]
305ba01eb20SWarner Losh	cd ../../compile/KERNEL_NAME_HERE
306ba01eb20SWarner Losh	make depend
307ba01eb20SWarner Losh	make
308ba01eb20SWarner Losh	make install
309ba01eb20SWarner Losh
310ba01eb20SWarner Losh	[1] If in doubt, -r might help here.
311ba01eb20SWarner Losh
312ba01eb20SWarner Losh	If this fails, go to the "To build a kernel" section.
313ba01eb20SWarner Losh
314ba01eb20SWarner Losh	To rebuild everything and install it on the current system.
315ba01eb20SWarner Losh	-----------------------------------------------------------
316759f0aefSWarner Losh	make world
317fdb9f54dSWarner Losh	Build a new kernel, see above.
318759f0aefSWarner Losh
3191dece4a9SWarner Losh	To upgrade from 4.x-stable to current
320ba26da8eSWarner Losh	-------------------------------------
321ba26da8eSWarner Losh	make buildworld
322ba26da8eSWarner Losh	make buildkernel KERNEL=YOUR_KERNEL_HERE
3239c1a7444SWarner Losh	cp src/sys/${MACHINE_ARCH}/GENERIC.hints /boot/device.hints [2]
324ba26da8eSWarner Losh	make installkernel KERNEL=YOUR_KERNEL_HERE
325ba26da8eSWarner Losh	make installworld
326134d2e86SWarner Losh	[1]
327ba26da8eSWarner Losh	<reboot>
328ba26da8eSWarner Losh
329fdb9f54dSWarner Losh	Make sure that you've read the UPDATING file to understand the
330fdb9f54dSWarner Losh	tweaks to various things you need.  At this point in the life
331fdb9f54dSWarner Losh	cycle of current, things change often and you are on your own
332fdb9f54dSWarner Losh	to cope.  The defaults can also change, so please read ALL of
333fdb9f54dSWarner Losh	the UPDATING entries.
334ba26da8eSWarner Losh
3351dece4a9SWarner Losh	Also, if you are tracking -current, you must be subscribed to
3361dece4a9SWarner Losh	freebsd-current@freebsd.org.  Make sure that before you update
3371dece4a9SWarner Losh	your sources that you have read and understood all the recent
3381dece4a9SWarner Losh	messages there.  If in doubt, please track -stable which has
3391dece4a9SWarner Losh	much fewer pitfalls.
3401dece4a9SWarner Losh
341134d2e86SWarner Losh	[1] If you have third party modules, such as vmware, you
342134d2e86SWarner Losh	should disable them at this point so they don't crash your
343134d2e86SWarner Losh	system on reboot.
344134d2e86SWarner Losh
3459c1a7444SWarner Losh	[2] If you have legacy ISA devices, you may need to create
3469c1a7444SWarner Losh	your own device.hints to reflect your unique hardware
3479c1a7444SWarner Losh	configuration.
3489c1a7444SWarner Losh
349dc0dbf5cSWarner LoshFORMAT:
350dc0dbf5cSWarner Losh
351f699bbbbSMark OvensThis file contains a list, in reverse chronological order, of major
3521fc1a0dcSWarner Loshbreakages in tracking -current.  Not all things will be listed here,
353f8ab1dd6SWarner Loshand it only starts on March 15, 2000.  Updating files can found in
354f8ab1dd6SWarner Loshprevious releases if your system is older than this.
3551fc1a0dcSWarner Losh
3563645fc1cSWarner LoshPlease filter your entries through Warner Losh (imp@village.org) so
3573645fc1cSWarner Loshthat the style, formatting, etc of this file can be maintained.
358f8c77507SWarner Losh
35997d92980SPeter Wemm$FreeBSD$
360