ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/src/trunk/UPDATING
Revision: 376
Committed: Wed Dec 27 05:02:27 2006 UTC (17 years, 5 months ago) by laffer1
File size: 9274 byte(s)
Log Message:
Documented changes to bsnmpd, geom, etc.

File Contents

# Content
1 Updating Information for MidnightBSD users
2
3 Items affecting the mports and packages system can be found in
4 /usr/mports/UPDATING.
5
6 20061226:
7 Setup /usr/share/examples/cvsup SUPfiles for the new
8 MidnightBSD CVSup server.
9
10 Fix a bug in burncd where it would continue forever while
11 erasing CDRW media.
12
13 Add csup to /usr/bin. csup is a CVSup replacement written
14 in C.
15
16 Fixed a bug with bsnmpd build from Oct 30.
17
18 Corrected some race conditions and fixed a few bugs in
19 geom. Imported changes from FreeBSD RELENG_6.
20
21 20061225:
22 Fixed a typo in src/lib/libc/sparc64/fpu/fpu_implode.c
23 that caused long double to long and long long
24 conversion of negative numbers to always result in -1.
25
26 20061221:
27 Fixed acpi_battery.c to not report an ERROR if no
28 batteries are present.
29
30 Performed some minor updates on the RL and RE NIC drivers.
31 RL should no longer panic when trying to print errors.
32
33 Corrected a bug with TTY.
34
35 20061218:
36 Corrected a bug with libpthread where newly created suspended
37 threads don't get scheduled.
38
39 20061206:
40 Fixed a typo with the firewire security patch.
41
42 20061129:
43 Minor cleanups to utilities in bin.
44
45 Fixed msdos file system short file name behavior to match
46 FreeBSD.
47
48 20061031:
49 Updated man pages in section 7.
50
51 20061030:
52 Updated sys/dev/drm to support intel 915 and radeon
53 r300 cards properly.
54
55 Synced snmpd with FreeBSD-stable.
56
57 Fixed a bug in rm which could cause data loss.
58
59 20061027:
60 Added Intel ICH8 and nForce 5 support to ATA. cam, mpt,
61 random, kbdmux, atkbd, and usb were updated. Changes
62 to clearing registers on SSE enabled processors (i386)
63 commited.
64
65 lukemftpd updated.
66
67 openssh rc script was altered which effects initial
68 seeding.
69
70 20061014:
71 Workaround for em driver problem on shared IRQ.
72
73 Started removal of alpha support.
74
75 20061013:
76 ATA driver was updated. USB/USB1/USB2 types added.
77
78 20061010:
79 OpenSSH was updated to 4.4p1.
80
81 20060909:
82 OpenNTPD was added to MidnightBSD. Run make delete-old to remove
83 the old ntpd daemon.
84
85 cat has a new option -D which allows you to timestamp output
86 on a per line basis.
87
88 The kernel has a keyboard mux which allows you to have multiple
89 keyboard connected simultaneously. USB keyboard support was also
90 improved with this patch.
91
92 The Intel em driver was updated. Network performance was greatly
93 increased on many systems. Additional models are supported.
94
95 The ATA driver was patched to fix a potential deadlock.
96
97 Bind was patched to fix a potential denial of service condition.
98
99 20060817:
100 ksh has been added to the base system. If you previously had
101 the port installed, it will be overwritten on the next buildworld.
102
103
104
105 To build a kernel
106 -----------------
107 If you are updating from a prior version of MidnightBSD (even one just
108 a few days old), you should follow this procedure. With a
109 /usr/obj tree with a fresh buildworld,
110 make -DALWAYS_CHECK_MAKE buildkernel KERNCONF=YOUR_KERNEL_HERE
111 make -DALWAYS_CHECK_MAKE installkernel KERNCONF=YOUR_KERNEL_HERE
112
113 To test a kernel once
114 ---------------------
115 If you just want to boot a kernel once (because you are not sure
116 if it works, or if you want to boot a known bad kernel to provide
117 debugging information) run
118 make installkernel KERNCONF=YOUR_KERNEL_HERE KODIR=/boot/testkernel
119 nextboot -k testkernel
120
121 To just build a kernel when you know that it won't mess you up
122 --------------------------------------------------------------
123 This assumes you are already running a 6.X system. Replace
124 ${arch} with the architecture of your machine (e.g. "i386",
125 "amd64", "ia64", "pc98", "sparc64", etc).
126
127 cd src/sys/${arch}/conf
128 config KERNEL_NAME_HERE
129 cd ../compile/KERNEL_NAME_HERE
130 make depend
131 make
132 make install
133
134 If this fails, go to the "To build a kernel" section.
135
136 To rebuild everything and install it on the current system.
137 -----------------------------------------------------------
138 # Note: sometimes if you are running current you gotta do more than
139 # is listed here if you are upgrading from a really old current.
140
141 <make sure you have good level 0 dumps>
142 make buildworld
143 make kernel KERNCONF=YOUR_KERNEL_HERE
144 [1]
145 <reboot in single user> [3]
146 mergemaster -p [5]
147 make installworld
148 make delete-old
149 mergemaster [4]
150 <reboot>
151
152
153 To cross-install current onto a separate partition
154 --------------------------------------------------
155 # In this approach we use a separate partition to hold
156 # current's root, 'usr', and 'var' directories. A partition
157 # holding "/", "/usr" and "/var" should be about 2GB in
158 # size.
159
160 <make sure you have good level 0 dumps>
161 <boot into -stable>
162 make buildworld
163 make buildkernel KERNCONF=YOUR_KERNEL_HERE
164 <maybe newfs current's root partition>
165 <mount current's root partition on directory ${CURRENT_ROOT}>
166 make installworld DESTDIR=${CURRENT_ROOT}
167 cd src/etc; make distribution DESTDIR=${CURRENT_ROOT} # if newfs'd
168 make installkernel KERNCONF=YOUR_KERNEL_HERE DESTDIR=${CURRENT_ROOT}
169 cp /etc/fstab ${CURRENT_ROOT}/etc/fstab # if newfs'd
170 <edit ${CURRENT_ROOT}/etc/fstab to mount "/" from the correct partition>
171 <reboot into current>
172 <do a "native" rebuild/install as described in the previous section>
173 <maybe install compatibility libraries from src/lib/compat>
174 <reboot>
175
176
177 To upgrade in-place from 5.x-stable or higher to 6.x-stable
178 -----------------------------------------------------------
179 <make sure you have good level 0 dumps>
180 make buildworld [9]
181 make kernel KERNCONF=YOUR_KERNEL_HERE [8]
182 [1]
183 <reboot in single user> [3]
184 mergemaster -p [5]
185 make installworld
186 make delete-old
187 mergemaster -i [4]
188 <reboot>
189
190 Make sure that you've read the UPDATING file to understand the
191 tweaks to various things you need. At this point in the life
192 cycle of current, things change often and you are on your own
193 to cope. The defaults can also change, so please read ALL of
194 the UPDATING entries.
195
196 Also, if you are tracking -current, you must be subscribed to
197 freebsd-current@freebsd.org. Make sure that before you update
198 your sources that you have read and understood all the recent
199 messages there. If in doubt, please track -stable which has
200 much fewer pitfalls.
201
202 [1] If you have third party modules, such as vmware, you
203 should disable them at this point so they don't crash your
204 system on reboot.
205
206 [3] From the bootblocks, boot -s, and then do
207 fsck -p
208 mount -u /
209 mount -a
210 cd src
211 adjkerntz -i # if CMOS is wall time
212 Also, when doing a major release upgrade, it is required that
213 you boot into single user mode to do the installworld.
214
215 [4] Note: This step is non-optional. Failure to do this step
216 can result in a significant reduction in the functionality of the
217 system. Attempting to do it by hand is not recommended and those
218 that pursue this avenue should read this file carefully, as well
219 as the archives of freebsd-current and freebsd-hackers mailing lists
220 for potential gotchas.
221
222 [5] Usually this step is a noop. However, from time to time
223 you may need to do this if you get unknown user in the following
224 step. It never hurts to do it all the time.
225
226 [8] In order to have a kernel that can run the 5.x binaries
227 needed to do an installworld, you must include the COMPAT_FREEBSD5
228 option in your kernel. Failure to do so may leave you with a system
229 that is hard to boot to recover. A similar kernel option COMPAT_FREEBSD5
230 is required to run the 5.x binaries on more recent kernels.
231
232 Make sure that you merge any new devices from GENERIC since the
233 last time you updated your kernel config file.
234
235 [9] When checking out sources, you must include the -P flag to have
236 cvs prune empty directories.
237
238 If CPUTYPE is defined in your /etc/make.conf, make sure to use the
239 "?=" instead of the "=" assignment operator, so that buildworld can
240 override the CPUTYPE if it needs to.
241
242 MAKEOBJDIRPREFIX must be defined in an environment variable, and
243 not on the command line, or in /etc/make.conf. buildworld will
244 warn if it is improperly defined.
245
246 Copyright information:
247
248 Copyright 1998-2005 M. Warner Losh. All Rights Reserved.
249
250 Redistribution, publication, translation and use, with or without
251 modification, in full or in part, in any form or format of this
252 document are permitted without further permission from the author.
253
254 THIS DOCUMENT IS PROVIDED BY WARNER LOSH ``AS IS'' AND ANY EXPRESS OR
255 IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
256 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
257 DISCLAIMED. IN NO EVENT SHALL WARNER LOSH BE LIABLE FOR ANY DIRECT,
258 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
259 (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
260 SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
261 HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
262 STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
263 IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
264 POSSIBILITY OF SUCH DAMAGE.
265
266 If you find this document useful, and you want to, you may buy the
267 author a beer.
268
269 Contact Warner Losh if you have any questions about your use of
270 this document.
271
272 $FreeBSD: src/UPDATING,v 1.416.2.18 2006/02/22 11:51:57 yar Exp $
273 $MidnightBSD: src/UPDATING,v 1.7 2006/12/26 22:38:02 laffer1 Exp $

Properties

Name Value
cvs2svn:cvs-rev 1.8