]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - UPDATING
Add openssh and api changes.
[FreeBSD/FreeBSD.git] / UPDATING
1 Updating Information for FreeBSD current users
2
3 This file is maintained by imp@village.org.  Please send new entries
4 directly to him.  See end of file for further details.  For commonly
5 done items, please see the end of the file.  Search for 'COMMON
6 ITEMS:'
7
8 20000303:
9         CMSG_XXX macros offset in <sys/socket.h> has changed to
10         conform RFC-2292.  All affected applications have been
11         corrected.  The i386 platform's offsets haven't changed, but
12         the alpha's did.  When you build and install new kernel on
13         FreeBSD/alpha, you must also do a make world.
14
15 20000225:
16         OpenSSH has been added to FreeBSD.  This may conflict with the
17         ports/security/ssh port since it installs binaries into
18         /usr/bin and the port goes into /usr/local/bin.  Most paths
19         have /usr/bin in the path before /usr/local/bin, so problems
20         may arise.  If you don't want OpenSSH, add NO_OPENSSH=yes to
21         your make.conf.
22
23         You will also need to enable OpenSSH in /etc/rc.conf if you
24         want to run the new servers.  You may need to move your host
25         key and other config files from /usr/local/etc to /etc/ssh.
26
27         OpenSSH's command line parsing, available options and default
28         settings aren't the same as ssh, so some care needs to be
29         taken in its operation.  One should do a full audit of all
30         configuration settings.
31
32 20000205:
33         The xinstall problem has kinda sorta been corrected.  The 
34         following is known to work by the author of UPDATING.  It
35         is what he did to update his laptop.  It is likely the same
36         effect as the work around listed in 20000129.
37                 make buildworld
38                 make installworld       This will fail
39                 cd usr.bin/xinstall
40                 make clean all install NOSHARED=YES
41                 cd ../..
42                 make installworld
43         If it doesn't work for you, then I'm sure that there will be
44         another 100 messages in -current.
45
46 20000204:
47         libipsec version number changed from 2 to 0.  The original
48         commit of Jan 6 incorrectly set this to 2.  Remove
49         /usr/lib/libipsec.so.2* before the buildworld and rebuild
50         anything that uses libipsec.so after you install the new
51         version.
52
53 20000201:
54         The rcmd related functions have been aligned with other BSD
55         implementations.  rlogind and rshd have been changed to use
56         the new API.  A make world is recommended to keep them in sync
57         with the libraries they use.
58
59         http://www.FreeBSD.org/cgi/cvsweb.cgi/src/lib/libc/net/rcmd.c
60         has the details.
61
62 20000129:
63         {set,get}flags have been added to the tree for rather dubious
64         reasons.
65
66         IF AND ONLY IF installworld fails:
67                 make -k -DNOFSCHG installworld
68                 make installworld
69         This issue was resolved Feb 5, 2000.
70
71 20000125:
72         rcmd_af() is added for multiple address family support.  rsh
73         and rlogin have been updated to use this to support INET6.  A
74         make world is recommended to keep them in sync with the
75         libraries they use.
76
77 20000124:
78         The default way that virtual tables in our default C++
79         compiler has changed.  We used to use THUNKS for virtual
80         inheritance.  Unfortunately there are bugs that The GCC
81         developers thought would be fixed in GCC 2.95.  However it
82         isn't.
83
84         After this change existing applications written in C++ may
85         give errors like below when you try to run them:
86
87 /usr/libexec/ld-elf.so.1: /usr/lib/libstdc++.so.3: Undefined symbol "__vt_7filebuf"
88
89         The only fix is to rebuild the application and any C++
90         libraries used.
91
92 20000124:
93         The management of next_writeable has been move from the
94         kernel to userspace. This means that the burncd command
95         must be in sync with the kernel. So make world is your
96         friend.
97
98 20000117:
99         GNU texinfo upgraded to 4.0.  It is recommended that you use
100         make buildworld to update.
101
102 20000117:
103         CAM_VERSION has been increased.  Recompile all programs that
104         depend on it (tosha, camcontrol, etc) when moving to kernels
105         past this date.
106
107 20000115:
108         pccard ioctls changed with a commit to have the kernel tell
109         pccardd which device it created, rather than having pccardd
110         dictate it to the kernel.  Recompile kernel and
111         pccardd/pccardc together.  pccardd/pccardc rely on a kernel
112         Makefile that must be installed prior to building them.  Make
113         world will automatically take care of this issue, but you need
114         to know if you are building by hand.
115
116 20000109:
117         Your kernel config files need to be changed to s/controller/device/
118         in them.  You will need a new version of config to do this.
119
120 20000107:
121         chown & chgrp moved again
122
123         This is a heads up to let you know that you need to 
124                     rm -f /sbin/chown /bin/chgrp
125         after your next `make world'.  Additionally you need to install
126         a new /dev/MAKEDEV (mergemaster(8) will assist you in this).
127
128 20000107:
129         SHA-1 password support gone
130
131         As warned yesterday, I've just removed the ability for
132         libcrypt to understand SHA-1 passwords. This was present but
133         undocumented in the tree for the past few months and was
134         removed so it can be reimplemented properly as part of a
135         revamped libcrypt at a later date. Anyone who was actually
136         making use of the feature will have to update their passwords
137         back to MD5 before they reinstall the library.
138
139 20000106:
140         ioctl numbers changed for dvdio ioctls.  You will need to recompile
141         anything that uses them.  wormcontrol has been deprecated in
142         favor of burncd.
143
144 19991223:
145         Building linux and svr4 compatibility into the kernel now
146         requires /usr/bin/genassym.  Go to /usr/src/usr.bin/genassym,
147         do "make obj ; make clean depend all install" before building
148         your kernel.
149
150 19991218:
151         sendmail.cf has moved from /etc/sendmail.cf to
152         /etc/mail/sendmail.cf.  You may need to adjust /etc/rc.conf
153         and /etc/rc to cope as well as moving sendmail.cf.
154
155 19991216:
156         ntp 4.0.98 has replaced the ancient xntpd.  The daemon name
157         changed from xntpd to ntpd, so you may need to update your
158         /etc/rc.conf file.  The ntp.conf files are compatible with the
159         old release, unless you are using a local reference clock.
160         Details about ntp4 can be found at http://www.ntp.org/.
161
162         xntpd will be cvs removed from the repo in about a week.
163
164 19991213:
165         Soren updated the ata driver.  Please update to at least this
166         version before submitting bug reports.
167
168 19991210:
169         The ata driver has become the primary ata/ide/atapi driver in
170         the kernel.  The wd driver is obsolete.  You should upgrade your
171         machine to the new ata driver.  You will need to follow the
172         directions for updating the devices in the 19991205 entry.  You
173         will need to update all occurances of wd to ad in your config files
174         (/etc/rc.conf, /etc/fstab, etc).  A compatibility device exists
175         for wd for the time being, but once you have determined that
176         ata is working for you, transition to the new ad devices.
177
178 19991205:
179         Block devices are going away.  You will need to update your /dev
180         tree with a fresh copy of MAKEDEV for things to always work in 
181         the future.  fsck is unable to cope with dirty file systems
182         after this change, so it may work for you or it may not.
183
184         See "To rebuild disk /dev entries" at the end of the file.
185
186         *** All uses of block devices must be converted to char devices.
187         *** Likely the only thing impacted is dumpdev in /etc/rc.conf
188
189 19991204:
190         The dc interface has replaced al, ax, dm, pn and mx.  The former
191         have been removed.
192
193 19991204:
194         Support for the old 'sd' device names has been removed in
195         favor of 'da'.  Please update your /etc/fstab, /etc/rc.conf
196         and any other places you might have sd names cached.
197         Generally these changes are as simple as s=/dev/sd=/dev/da=g,
198         but be careful to make sure that things are really that
199         simple.  You may also need to create /dev entries for the da
200         devices as well.
201
202         See "To rebuild disk /dev entries" at the end of the file.
203
204 19991203:
205         BAD144 support has been removed.  Cope or replace the hardware.
206
207 19991129:
208         ALPHA users take note.  All klds will need to be recompiled for
209         kernels build after this date.  It is a good time to update since
210         pal.s will be going away soon.
211
212 19991126:
213         MFS_ROOT and MFS_ROOT_SIZE are gone, replaced by MD_ROOT and
214         MD_ROOT_SIZE options in the md driver.  md driver now deals with
215         the hacks.  You should add md driver to kerneles that have
216         MFS_ROOT, et al.  See GENERIC or LINT for details.
217
218 19991125:
219         The ep changed a while ago and can no longer be used with hard
220         wired addresses in the config file.
221
222 19991122:
223         The bridge drivers for sound cards have been committed.  Please
224         see LINT for instructions for your card, if it still works at
225         all.
226
227 19991113:
228         Gcc 2.95.2 is now the default compiler.
229
230 19991030:
231         /etc/radius.conf file format has changed.The format change is
232         as follows.  Each server line in the file should now begin
233         with a new field containing either "auth" for RADIUS
234         authentication, or "acct" for RADIUS accounting.  Formerly
235         only authentication was supported.  If the first field isn't
236         "auth" or "acct" then the code assumes that "auth" is
237         intended.  (That's the compatibility hack.)
238
239 19991015:
240         PCCARD has been updated to attach pcic to the isa bus.  Therefore
241         you will need to modify kernel config files that have pcic/card
242         in them as follows:
243                 controller      pcic0   at isa?
244                 controller      pcic1   at isa?
245                 controller      card0
246
247 19990929:
248         The sigset_t datatype has been changed from an integral type
249         to a compound type and can hold 128 signals. Syscalls directly
250         or indirectly using the new sigset_t have been added as to
251         maintain compatibility with existing binaries. A new kernel must
252         be made and installed and booted with before a make world can
253         be done.
254
255         ***************************************************************
256                 RECOMPILE AND REINSTALL KERNEL BEFORE MAKEWORLD
257         ***************************************************************
258
259 19990919:
260         New jail syscall format requires recompilation of jail(8) with
261         fresh headers installed (or a make world will do it for you).
262
263 19990914:
264         Matt Dillon checked in many vm related things and sent a heads up
265         to -current urging caution and to report vm problems to him.
266         As of the 19th, no killer problems have been reported, but you
267         have been warned.
268
269 19990908:
270         The new miibus has been added to the system.  If you are using
271         the dm, rl, sf, sis, ste, tl, wb or xl drivers, you need to
272         add "controller miibus0" to your config file.
273
274 19990905:
275         /var/cron/log has been moved to /var/log/cron to get all the
276         log files in one place.
277
278 19990831:
279         tn3270 has been removed from the base system and added as a port.
280
281 19990830:
282         User-visible TCP timers are now expressed in units of 1ms, instead
283         of 500ms, so if you've customized any timer values under
284         ``net.inet.tcp'', multiply them by 500 to preserve TCP's behavior.
285
286 19990828:
287         RCS Id tags changed to FreeBSD.  This will cause huge cvsup
288         updates.
289
290 19990821:
291         On 28-May-1999 libreadline was upgraded from readline-2.2 to
292         readline-4.0.  At that time the shared library major version
293         number was bumped from "3" to "4".  It has been deemed that
294         the interface change between readline-2.2 and readline-4.0 was
295         not sufficient to warrant the version number bump.
296
297         Thus I have reverted it back to "3".  You will need to perform
298         the below immediately before your next ``make world'':
299             cd /usr/lib
300             ls -l libreadline.so.4
301                 (if you have /usr/lib/libreadline.so.4)
302             mv libreadline.so.4 libreadline.so.3
303             rm -f libreadline.so
304             ln -s libreadline.so.3 libreadline.so
305
306 19990801:
307         Changes to the pccardd kernel interface require that you recompile
308         pccardd for new kernel.
309
310 19980725:
311         The ipfw interface to the kernel has changed.  You will need to
312         recompile ipfw programs for the new kernel.
313
314 19990715:
315         The bpfilter device has been renamed to bpf.  You will need to 
316         change your config files in order to enable this in newer kernels.
317
318 19990704:
319         src/contrib/sys/softupdates is moving to
320         src/sys/contrib/softupdates.  Update your symbolic links/etc.
321
322 19990702:
323         Major changes have been made to vinum and its interface.  See
324         the man page (vinum(8)) for details.  Look at the concat,
325         mirror and stripe commands, as well as the SIMPLIFIED
326         CONFIGURATION section.
327
328 19990628:
329         Newsyslog.conf has had a minor, but potentially dangerous,
330         change to its username/group syntax.  The old syntax was
331         user.group, while the new syntax is user:group.
332
333 19990627:
334         Inetd wrapping default has changed.  Please see the updated
335         man page for details.
336
337 19990623:
338         Compaq Smart Raid driver committed as ida.
339
340 19990622:
341         The second phase of syscons cleanup has happened.  Some
342         functionality has been made optional.  For details, see
343         http://www.freebsd.org/~yokota/sc_update-June.txt
344         Everyone will need to re-config(8) their kernels, but old
345         binaries will work with the new kernel.
346
347 19990620:
348         IPFW uid/gid-based filtering support has been committed. This
349         breaks binary compatibility with previous copies of
350         ipfw(8). Any utilities using the ioctl()s of ipfw (especially
351         ipfw(8)) need to be recompiled with the newest headers
352         installed.
353
354 19990618:
355         Inetd now wraps all stream-based services, including internals.
356         Syslog "severity" options are honoured. Installed syslog.conf
357         and hosts.allow should be checked.
358
359 19990509:
360         Most of the problems with newbus have been corrected, but
361         it is still current and evolving.
362
363         libcam's ABI has changed.  You must recompile the world and
364         any ports that use it.
365
366 19990427:
367         Massive changes to SMP went into the tree that should speed
368         things up.  However, if you experience problems with SMP 
369         machines, you can back off to the PRE_SMP_VMSHARE tag in the
370         CVS repository (or run an MP kernel).
371
372 19990420:
373         Pccardd and the pccard bus in general seem to be broken or
374         most people.  Soren has patches to make it better for some,
375         but not all people.  Work is underway to make it better for
376         all people.
377
378 19990416:
379         new bus changes integrated into -current.  Many problems were
380         initially reported, but most have been fixed.  You'll need a
381         new config and to tweak your kernel config file the way that
382         GENERIC was tweaked.  Keep a copy of your old kernel when
383         upgrading in case your new kernel doesn't work (and report the
384         breakage to current@freebsd.org).
385
386         As of 19990421 the remaining problems/quirks are
387
388         o sio no longer supports pnp nor pccard.  This will be corrected,
389           but the new pccard code needs to be completed.
390         o Some of the sound drivers broke for some people.  It seems
391           inconsistant as to who/what/when/where things broke.
392         o Duplicate device entries in your config do not work.  Previously
393           they were silently ignored.  psm0 seems to be the most common
394           duplicate choice, although some reports have come in from people
395           that wired their scsi disk entries.
396         o You must move the keyboard and mouse attachments from the
397           isa bus to the atkbdc bus.  See GENERIC for details.
398         o Machines with multiple host-pci bridges (Intel 450NX) will not
399           probe the second pci bus.
400         o Some probe ordering may have changed, so device naming may change
401           with the new kernel.  If you have multiple devices, please double
402           check to make sure they didn't move.  This is especially true
403           for cards on different buses.
404         o The bus attachment for vga0 is always isa0 and never pci0 when
405           it is in fact a pci card.  It is safe to ignore this.
406         o The format of the boot messages has changed (and is not
407           guaranteed to be constant for a while) so you may see this
408           in some shell scripts that diff dmesg from day to day as well
409           as scripts that parse dmesg output.
410
411 19990414:
412         cc -aout sometimes has problems compiling with -g, remove -g
413         from those compilation units affected until this is corrected.
414
415         cc -aout has problems with producing some threaded libraries,
416         so make world -DWANT_AOUT is not functional at this time.
417
418         Since make world for a.out isn't functional, you cannot do
419         make aout-to-elf from a pre-egcs a.out system.  To work around
420         this problem, make aout-to-elf using 3.1-stable first (or a
421         pre egcs -current) and then a simple make world will take you
422         the rest of the way with a -current source base.
423
424 19990413:
425         Make -j works again for make world.  As always, use it with
426         care, and be sure to try a make world w/o -j before reporting
427         problems (that is, know if the problem exists w/o -j before
428         reporting the problem with -j).
429
430 19990413:
431         Note cc -aout, which had been broken since the conversion to
432         egcs, now supposedly works.  If you have rebuilt things like
433         XFree86 a.out libraries, you should rebuild them again or
434         progams that use them, including netscape, will fail to work.
435
436 19990409:
437         NOTE: New c++ compiler cannot be used with c++ binaries from
438         the old compiler and vice versa.
439
440 19990408:
441         In recent days egcs has been imported into the tree.  A number
442         of problems have been discussed in -current.  Here is a highlight
443         of a few of the more common ones.  With the exception of make
444         -j n, they have been claimed to have been fixed.
445
446         c++ is broken after make world: This is correct.  Because we
447         changed compilers two make worlds are necessary to get C++
448         working again.  The code generated by the old compiler and new
449         compiler are not compatible, so things wind up being
450         undefined.
451
452         cpp is broken in make world:  There was a window where cpp
453         would be built incorrectly.  The fix for this is
454                 cd src/gnu/usr.bin/cc
455                 make clean
456                 make all
457                 make install
458         and this should correct your problems.  See the -current
459         archives for a version of this that does moer cleaning.
460
461         Make -j n doesn't work.  Work contiunes to make this work,
462         I've seen no reports of success as of April 7th.
463
464 19990329:
465         Previously, one would define "NOAOUT" to keep from building
466         the legacy a.out bits.  Now one would define "WANT_AOUT" to
467         build them.
468
469 19990316:
470         The name of the old wd.c and atapi.c based CDROM driver has
471         been changed back to wcd. So update your config file to use
472         "device wcd" instead of "device acd".
473
474 19990314:
475         For those of you using the VN device as a loadable module,
476         please be aware that the new VN device has been committed to
477         -4.x and cannot yet be used as a loadable module.  This will
478         be fixed in the future.
479         
480 19990309:
481         New loader.rc mechanism.  Please see src/sys/boot/README for
482         details.
483
484 19990225:
485         struct proc size changed.  Recompile kernel and the
486         usual suspects.  Make world if in doubt.
487
488 19990214:
489         The nlpt driver has changed names back to be the lpt driver.
490         See ppbus(4) or http://www.freebsd.org/~nsouch/ppbus.html
491         for proper configuration details.
492
493 19990210:
494         The 'lpt' driver is now obsolete.  Replace it with the 'nlpt'
495         driver and 'ppbus' controller combination.
496
497 19990209:
498         New devstat API requires recompilation of libdevstat, systat,
499         iostat, vmstat and rpc.rstatd.  A new kernel is also required.
500         make world + building a kernel should do all of this.  Any
501         ports that use devstat need to be recompiled as well.
502
503 19990125:
504         Linux threads options has gone away (they are now standard in
505         the FreeBSD kernel).  A recompile of all libkvm using programs
506         is in order (or better yet a make world).
507
508 19990122:
509         On or about this date there was a small window when the boot
510         blocks had some minor problems which seemed to force one to
511         edit /etc/fstab.  This has been corrected, if you are seeing this
512         problem, please rebuild and reinstall your boot blocks.
513
514 19990121:
515         Vinum has changed.  The "vinum read" command has changed.  For
516         updates, please see
517
518 http://www.freebsd.org/cgi/getmsg.cgi?fetch=800363+0+current/freebsd-current
519
520         for details.  
521
522         Matt Dillon committed a boatload of VM changes, for
523         information please see
524
525 http://www.freebsd.org/cgi/getmsg.cgi?fetch=886676+0+current/freebsd-current
526         or
527 http://www.freebsd.org/cgi/getmsg.cgi?fetch=827400+0+current/freebsd-current
528
529         for details.  These changes will likely not impact anybody,
530         but large chagnes to the VM need at least a heads up.
531
532 19990120:
533         Stable branch created.  You might want to consider using this
534         branch.  It is tagged with RELENG_3.
535
536 19990119:
537         More work on the syscons driver has been committed.  Since
538         files moved around, you will need to reconfigure your kernel,
539         and make clean; make depend before rebuilding the kernel.  No
540         config file changes are needed.
541
542 19990111:
543         New keyboard and video card drivers are introduced as the first
544         stage of console driver reorganization.  You are required to
545         update the kernel configuration file and rebuild the kernel.
546         kbdcontrol, vidcontrol, and screen savers also need recompilation.
547         The instruction can be found in
548
549                 http://www.freebsd.org/~yokota/sc_update.txt
550
551         It has notes on splash screen too.
552
553 19990106:
554         Robert Nordier was kind enough to make this page to enable people to
555         install the new bootblocks:
556
557                 http://www.freebsd.org/~rnordier/boot.txt
558
559         When updating to ELF, make sure that you have updated your
560         /etc/rc files which have different ldconfig invocations for
561         elf and aout.  Otherwise things like X will stop working with
562         messages about being unable to find library files.  The
563         mergemaster utility in ports/sysutils/mergemaster helps to
564         keep critical files like this in sync, and its use is
565         recommended.
566
567 19990104:
568         Information about ELF day (see 19981230) can be found in
569
570                 http://www.freebsd.org/~peter/elfday.html
571
572         about the upcoming change, its motivations and instructions
573         for doing the upgrade.
574
575 19981230:
576         You should install new bootblocks now.  The ELF kernel will
577         become default soon.  In addition, you'll need to upgrade
578         your userland programs to ELF before then as well.  Use
579         make aout-to-elf to upgrade your userland programs (old
580         a.out programs in, for example, /usr/local/bin will
581         continue to work, even after the upgrade).  See src/Makefile
582         for more details.
583
584 19981224:
585         The old wcd driver has been deleted from the kernel.  The
586         driver that replaces it is named acd.  You'll need to change
587         this in your configuration files.
588
589         Failure to do this will result in "ATAPI CD-ROMs not
590         configured" at boot time.
591
592         The floppy tape driver (ft) has been removed from the kernel,
593         with no replacement driver.
594
595 19981202:
596         New groups from 19981201 commented out of mtree, so they
597         aren't strictly needed, but still a good idea to have.
598
599 19981201:
600         New user/group added: bind.  From src/etc/master.passwd and
601         src/etc/group:
602                 % grep <newstuff> /usr/src/etc/group 
603                 bind:*:53:
604                 % grep <newstuff> /usr/src/etc/master.passwd 
605                 tty:*:4:65533::0:0:Tty Sandbox:/:/sbin/nologin
606                 kmem:*:5:65533::0:0:KMem Sandbox:/:/sbin/nologin
607                 bind:*:53:53::0:0:Bind Sandbox:/:/sbin/nologin
608
609 19981118:
610         PAM integrated into the tree.   Requires new /etc/pam.conf file
611         to silence warnings from authentication programs (login, etc).
612         See src/etc/pam.conf for a sample.
613
614 COMMON ITEMS:
615
616         To build a kernel
617         -----------------
618         Update config, genassym and go:
619                 cd src/usr.bin/genassym
620                 make depend all install clean
621                 cd ../../usr.sbin/config
622                 make depend all install clean
623                 cd ../../sys/i386/conf
624                 config YOUR_KERNEL_HERE
625                 cd ../../compile/YOUR_KERNEL_HERE
626                 make depend && make
627                 make install
628
629         To rebuild disk /dev entries
630         ----------------------------
631
632         MAKEDEV should be copied from src/etc/MAKEDEV to /dev before
633         starting the following:
634
635                 For N in the list of disks
636                         MAKEDEV N                       # eg ad0
637                         for M in the list of slices
638                                 MAKEDEV NsMa            # eg ad0s1a
639
640
641         To rebuild everything
642         ---------------------
643         make world
644
645         Except when it doesn't work.
646
647         To update from 3.x to 4.0 stable
648         --------------------------------
649         cd /usr/src
650         make buildworld
651         cd sbin/mknod
652         make install
653         <follow directions to build/install a kernel>
654         <follow rebuild disk /dev entries above>        [*]
655         reboot
656         <in single user>
657         cd /usr/src
658         make -DNOINFO installworld
659         make installworld
660
661         [*] You may need to switch from wd to ad ala 19991210
662
663
664 FORMAT:
665
666 This file contains a list, in reverse chronologocal order, of major
667 breakages in tracking -current.  Not all things will be listed here,
668 and it only starts on November 18, 1998.  If you have an earlier
669 version of FreeBSD, you are on your own to get to November 18, 1998.
670
671 Please filter your entries through Warner Losh (imp@village.org) so
672 that the style, formatting, etc of this file can be maintained.
673
674 $FreeBSD$