1: DRAGONFLY CDROM README FILE
3: This CDROM boots DragonFly BSD. Basically what you get is a full base
4: system on CD with certain critical directories, such as /tmp, remounted
5: read-write using MFS. Your existing hard drive is not effected by
6: booting this CDROM.
8: NOTE!!! DRAGONFLY IS UNDERGOING DEVELOPMENT AND CONSIDERED EXPERIMENTAL!
9: BSD RELATED EXPERIENCE IS REQUIRED TO USE THIS CDROM.
11: If you just want to play with DragonFly and not mess with your hard disk,
12: this CDROM boots into a fully operational console-based system, though
13: without swap it should be noted that you are limited by available memory.
15: AUTOMATIC INSTALLATION
17: We are currently developing automatic installation tools. There are none
18: on this CD.
20: MANUAL INSTALLATION
22: Manual installation of DragonFly onto an HD involve the following sequence
23: of commands. You must be familiar with BSD style UNIX systems to do
24: installations manually. The primary IDE hard drive is typically 'ad0'
25: and DragonFly is typically installed onto the first slice.
28: # This COMPLETE WIPES and repartitions your hard drive
29: fdisk -IB ad0
31: # This installs boot blocks onto the HD and verifies their
32: # installation.
33: boot0cfg -B ad0
34: boot0cfg -v ad0
36: # This creates an initial label on the first slice of the HD. If
37: # you have problems booting you could try wiping the first 32 blocks
38: # of the slice with dd and then reinstalling the label
40: # dd if=/dev/zero of=/dev/ad0s1 bs=32k count=16
41: disklabel -B -r -w ad0s1 auto
43: # Edit the label. Create various standard partitions. The typical
44: # configurations is:
46: # ad0s1a 256m This will be your /
47: # ad0s1b 1024m This will be your swap
48: # ad0s1c (leave alone)
49: # ad0s1d 256m This will be your /var
50: # ad0s1e 256m This will be your /tmp
51: # ad0s1f 8192m This will be your /usr (min 4096m)
52: # ad0s1g * All remaining space to yoru /home
54: disklabel -e ad0s1
56: # Newfs (format) the various filesystems. Softupdates is not
57: # normally enabled on the root filesystem.
59: newfs /dev/ad0s1a
60: newfs -U /dev/ad0s1d
61: newfs -U /dev/ad0s1e
62: newfs -U /dev/ad0s1f
63: newfs -U /dev/ad0s1g
65: # Mount the filesystems
67: mount /dev/ad0s1a /mnt
68: mkdir /mnt/var
69: mkdir /mnt/tmp
70: mkdir /mnt/usr
71: mkdir /mnt/home
72: mount /dev/ad0s1d /mnt/var
73: mount /dev/ad0s1e /mnt/tmp
74: mount /dev/ad0s1f /mnt/usr
75: mount /dev/ad0s1g /mnt/home
77: # Copy the CDRom onto the target. cpdup won't cross mount boundaries
78: # on the source (e.g. the MFS remounts) so it takes a few commands.
80: cpdup / /mnt
81: cpdup /var /mnt/var
82: cpdup /etc /mnt/etc
83: cpdup /dev /mnt/dev
84: cpdup /usr /mnt/usr
86: # Edit /mnt/etc/fstab to reflect the new mounts. An example fstab
87: # file based on the above parameters exists as /mnt/etc/fstab.example
88: # which you can rename to /mnt/etc/fstab.
90: mv /mnt/etc/fstab.example /mnt/etc/fstab
91: vi /mnt/etc/fstab
93: Once you've duplicated the CD onto your HD you have to make some edits
94: so the system boots properly from your HD. Primarily you must remove
95: or edit /mnt/boot/loader.conf
97: # Remove /mnt/boot/loader.conf so the kernel does not try to
98: # obtain the root filesystem from the CD.
100: rm /mnt/boot/loader.conf
102: At this point it should be possible to reboot. The CD may be locked
103: since it is currently mounted. Be careful of the CD drawer closing
104: on you when you open it during the reboot. Remove the CD and allow
105: the system to boot from the HD.
107: WARNING do not just hit reset, the kernel may not have written out
108: all the pending data to your HD. Either unmount the HD partitions
109: or type reboot.
111: # reboot
113: (remove CD when convenient, be careful of the CD drawer closing on you)
115: Once you have a working HD based system you can clean up /etc/rc.conf
116: to enable things like cron, sendmail, setup your networking, and so
117: forth. If 'ifconfig' does not show your networking device you could
118: try to kldload it from /modules. With a recognized network device
119: you can ifconfig its IP address or, if you have a DHCP server on your
120: network, use 'dhclient <interfacename>' to obtain an IP address from
121: the netweork.
123: USING CVSUP TO OBTAIN A CVS TREE, PORTS, AND DOING BUILDWORLDS
125: cvsup can be used to obtain the DragonFly cvs repository, the FreeBSD
126: ports tree, and so on and so forth. 'man cvsup' for more information on
127: its capabilities. cvsup is a port (not part of the base system), but
128: it IS included on the CD. The cvsup example files are in
129: /usr/share/examples/cvsup. You will primarily be interested in the
130: DragonFly CVS repository, DragonFly-supfile, and the FreeBSD ports,
131: FreeBSD-ports-supfile. Once you have done the initial cvsup of the
132: blocks of data that you want you may wish to create a cron job to
133: keep it all up to date. However, please do not run an unattended cvsup
134: more then once a day.
136: # get the CVS pository (it is placed in /home/dcvs)
137: cvsup /usr/share/examples/DragonFly-supfile
138: # install the source from the CVS hierarchy
139: cd /usr
140: cvs -R -d /home/dcvs checkout src
141: cvs -R -d /home/dcvs checkout dfports
143: # get the FreeBSD ports tree (it is directly broken out into /usr/ports)
144: cvsup -h cvsup.freebsd.org /usr/share/examples/FreeBSD-ports-supfile
146: # buildworld and installworld examples
148: cd /usr/src
149: make buildworld
150: make installworld
152: # buildkernel and installkernel examples. Create your own custom kernel
153: # config in /usr/src/sys/i386/conf/<YOURKERNEL> and you can build and
154: # install custom kernels.
156: # WARNING! Always keep a fully working backup kernel in / in case
157: # you blow it. Remember that /kernel.old is overwritten when you
158: # make installkernel. It is usually a good idea to maintain an emergency
159: # kernel as /kernel.GENERIC or /kernel.bak. If all else fails you can
160: # still fall back to booting the CD.
162: cd /usr/src
163: make buildkernel KERNCONF=GENERIC
164: make installkernel KERNCONF=GENERIC
166: EMERGENCY RECOVERY FROM THE CD
168: Lets say you blew up your kernel or something else in / and you need to
169: boot the CD to fix it. Remember that you have a fully operational
170: system when booting the CD, but that you have to fsck and mount your
171: hard drive (typically onto /mnt) to get at the contents of your HD.
173: Your HD is typically an IDE hard drive, so the device is typically
174: /dev/ad0. DragonFly is typically on the first slice, which is
175: /dev/ad0s1, and the root partition is always in partition 'a',
176: which is /dev/ad0s1a.
178: # fsck root before trying to mount it.
179: fsck /dev/ad0s1a
180: # mount root read-write onto /mnt
181: mount /dev/ad0s1a /mnt
182: # copy files from the CD as appropriate to make it possible to boot
183: # from your HD again. Note that /mnt/kernel may be flags-protected.
184: chflags noschg /mnt/kernel
185: cp /kernel /mnt/kernel
186: cp /modules/* /mnt/modules/
188: If you want to mount other partitions from your HD but have forgotten
189: what they are, simply cat /mnt/etc/fstab after mounting the root
192: $DragonFly: src/nrelease/root/README,v 1.3 2003/12/02 20:19:39 dillon Exp $