ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/src/trunk/UPDATING
Revision: 325
Committed: Tue Oct 31 19:20:59 2006 UTC (17 years, 7 months ago) by laffer1
File size: 8196 byte(s)
Log Message:
List recent changes and removals.

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

Properties

Name Value
cvs2svn:cvs-rev 1.6