ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/src/trunk/UPDATING
Revision: 477
Committed: Mon Jan 1 00:08:00 2007 UTC (17 years, 5 months ago) by laffer1
File size: 9819 byte(s)
Log Message:
We've been busy today.

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

Properties

Name Value
cvs2svn:cvs-rev 1.9