This commit is contained in:
Jordan K. Hubbard 1997-03-08 12:58:29 +00:00
parent 0b6828d14d
commit c29c9ac418
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=23516
17 changed files with 216 additions and 71 deletions

View file

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id$
* $Id: config.c,v 1.83 1997/02/22 14:11:16 peter Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -249,7 +249,7 @@ configFstab(void)
msgConfirm("Unable to make mount point for: /cdrom");
}
else
fprintf(fstab, "/dev/%s\t\t/cdrom\tcd9660\t\tro,noauto\t0\t0\n", devs[0]->name);
fprintf(fstab, "/dev/%s\t\t/cdrom\t\tcd9660\t\tro,noauto\t0\t0\n", devs[0]->name);
}
/* Write the others out as /cdrom<n> */

View file

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id$
* $Id: dist.c,v 1.99 1997/02/22 14:11:31 peter Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -75,6 +75,7 @@ static Distribution DistTable[] = {
{ "compat1x", "/", &Dists, DIST_COMPAT1X, NULL },
{ "compat20", "/", &Dists, DIST_COMPAT20, NULL },
{ "compat21", "/", &Dists, DIST_COMPAT21, NULL },
{ "ports", "/usr", &Dists, DIST_PORTS, NULL },
{ "XF8632", "/usr", &Dists, DIST_XF86, XF86DistTable },
{ NULL },
};
@ -645,7 +646,12 @@ distExtractAll(dialogMenuItem *self)
char buf[512];
/* paranoia */
if (!Dists || !mediaVerify() || !mediaDevice->init(mediaDevice))
if (!Dists) {
if (!dmenuOpenSimple(&MenuDistributions, FALSE) && !Dists)
return DITEM_FAILURE | DITEM_RESTORE;
}
if (!mediaVerify() || !mediaDevice->init(mediaDevice))
return DITEM_FAILURE;
dialog_clear_norefresh();
@ -667,3 +673,5 @@ distExtractAll(dialogMenuItem *self)
}
return DITEM_SUCCESS;
}

View file

@ -16,7 +16,8 @@
#define DIST_XF86 0x0800
#define DIST_DES 0x1000
#define DIST_CATPAGES 0x2000
#define DIST_ALL 0x3FFF
#define DIST_PORTS 0x4000
#define DIST_ALL 0x7FFF
/* Canned distribution sets */
#define _DIST_DEVELOPER \

View file

@ -1,10 +1,49 @@
Boot Manager Selection:
-----------------------
If you wish to switch between multiple operating systems on your
machine, or if you are trying to install FreeBSD on a drive other than
your 1st drive, then you must install a boot manager. In the case
where you wish to boot off an alternate drive, it should also be noted
that you still need to install a boot manager on the FIRST drive!
Even if you do not intend to create a FreeBSD partition on that drive
(e.g. it's being wholly used by something else), the boot manager
still needs to reside on the first disk in order to function as a
"redirector" for the boot process.
To do this, simply select your 1st drive in the drive selection menu
and when the partition editor comes up, don't make any changes - just
(Q)uit. At the boot manager menu which follows, select the first
option (install a boot manager) and then proceed to setup the other
drive(s) for FreeBSD as normal.
It should also be noted that "operating systems" such as Windows 95
will completely overwrite your boot manager without so much as a
polite "may I please destroy your boot manager?" prompt if you make
the mistake of installing them second. If this happens to you after
FreeBSD is already installed, all is not lost! Simply revisit your
FreeBSD distribution directory and look for a tools/ subdirectory, in
which you'll find "bootinst.exe" and "boot.bin". To reinstall, simply
say "bootinst boot.bin" while in the tools/ subdirectory.
If you see the boot manager displaying ``F?'' when you try to come up
for the first time and it refuses to change, no matter how often you
whap on the function key assigned to FreeBSD, then you have a geometry
mismatch problem and you should read the next section for important
information on how to prevent that exact problem from happening!
Geometry Translation / Sharing the disk(s) with another OS:
----------------------------------------------------------
If you are going to actually install some portion of FreeBSD on a
drive then PLEASE BE VERY CERTAIN that the Geometry reported in the
Partition Editor is the correct one for your drive and controller
combination!
IDE drives often have a certain geometry set during the PC BIOS setup,
or (in the case of larger IDE drives) have their geometry "remapped"
or (in the case of larger IDE drives) have their geometry "translated"
by either the IDE controller or a special boot-sector translation
utility such as that by OnTrack Systems. In these cases, knowing the
correct geometry gets even more complicated as it's not something you
@ -21,9 +60,33 @@ very small DOS partition first, before installing FreeBSD. Once
FreeBSD is installed you can always delete it again if you need the
space.
It's actually not a bad idea (believe it or not) to have a small bootable
DOS partition on your FreeBSD machine anyway: Should the machine become
unstable or exhibit strange behavior at some point in the future (which
is not uncommon behavior for PC hardware!) you can then at least use
DOS for installing and running one of the commercially available system
diagnostic utilities.
It's actually not a bad idea (believe it or not) to have a small
bootable DOS partition on your FreeBSD machine anyway: Should the
machine become unstable or exhibit strange behavior at some point in
the future (which is not uncommon behavior for PC hardware!) you can
then at least use DOS for installing and running one of the
commercially available system diagnostic utilities.
IMPORTANT NOTE:
Any root partition you try to boot from must also reside below the
1024th cylinder. If you're using a translated geometry then this is
probably not a problem, but if you are using a native disk geometry
which exceeds 1024 cylinders then you could have a failure to boot if
you end up installing a root partition (or even just the kernel file
in a root partition) out past cylinder 1024. If you are trying to
share your first disk with FreeBSD and another OS which was installed
previously, you are particularly susceptible to this problem and should
check your disk addresses very carefully.
If you find that you have insufficient space below cylinder 1024 to
make a root partition for FreeBSD (and again, this ONLY applies to the
root partition - once FreeBSD's kernel is loaded, it doesn't care
about the geometry issues) then you will probably need to install on a
completely different disk (see the boot manager section above) or
resize your existing partitions so that both operating systems can
have boot partitions below cylinder 1024.
You may blame IBM for the limitations of a 10 bit cylinder address.
"No one will have a disk with more than 1024 cylinders." I'm sure
someone said.

View file

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id: install.c,v 1.172 1997/02/22 14:11:46 peter Exp $
* $Id: install.c,v 1.173 1997/03/07 16:39:15 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -318,8 +318,8 @@ installFixitCDROM(dialogMenuItem *self)
fixit_common();
msgConfirm("Please remove the FreeBSD CDROM now.");
mediaDevice->shutdown(mediaDevice);
msgConfirm("Please remove the FreeBSD CDROM now.");
return DITEM_SUCCESS;
}
@ -353,8 +353,8 @@ installFixitFloppy(dialogMenuItem *self)
fixit_common();
msgConfirm("Please remove the fixit floppy now.");
unmount("/mnt2", MNT_FORCE);
msgConfirm("Please remove the fixit floppy now.");
return DITEM_SUCCESS;
}

View file

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id$
* $Id: menus.c,v 1.119 1997/02/22 14:12:05 peter Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -221,6 +221,7 @@ DMenu MenuIndex = {
{ "Dists, Kern Developer", "Select kernel developer's distribution.", checkDistKernDeveloper, distSetKernDeveloper },
{ "Dists, User", "Select average user distribution.", checkDistUser, distSetUser },
{ "Dists, X User", "Select average X user distribution.", checkDistXUser, distSetXUser },
{ "Distributions, Adding", "Installing additional distribution sets", NULL, distExtractAll },
{ "Distributions, XFree86","XFree86 distribution menu.", NULL, distSetXF86 },
{ "Documentation", "Installation instructions, README, etc.", NULL, dmenuSubmenu, NULL, &MenuDocumentation },
{ "Doc, README", "The distribution README file.", NULL, dmenuDisplayFile, NULL, "readme" },
@ -230,7 +231,6 @@ DMenu MenuIndex = {
{ "Doc, Release", "The distribution release notes.", NULL, dmenuDisplayFile, NULL, "relnotes" },
{ "Doc, HTML", "The HTML documentation menu.", NULL, docBrowser },
{ "Emergency shell", "Start an Emergency Holographic shell.", NULL, installFixitHoloShell },
{ "Extract", "Extract selected distributions from media.", NULL, distExtractAll },
{ "Fixit", "Repair mode with CDROM or fixit floppy.", NULL, dmenuSubmenu, NULL, &MenuFixit },
{ "FTP sites", "The FTP mirror site listing.", NULL, dmenuSubmenu, NULL, &MenuMediaFTP },
{ "Gateway", "Set flag to route packets between interfaces.", dmenuVarCheck, dmenuToggleVariable, NULL, "gateway=YES" },
@ -648,10 +648,10 @@ DMenu MenuDistributions = {
checkDistXUser, distSetXUser },
{ "6 Minimal", "The smallest configuration possible",
checkDistMinimum, distSetMinimum },
{ "7 All", "All sources, binaries and XFree86 binaries",
checkDistEverything, distSetEverything },
{ "8 Custom", "Specify your own distribution set",
{ "7 Custom", "Specify your own distribution set",
NULL, dmenuSubmenu, NULL, &MenuSubDistributions, '>', '>', '>' },
{ "8 All", "All sources, binaries and XFree86 binaries",
checkDistEverything, distSetEverything },
{ "9 Clear", "Reset selected distribution list to nothing",
NULL, distReset, NULL, NULL, ' ', ' ', ' ' },
{ "0 Exit", "Exit this menu (returning to previous)",
@ -693,6 +693,8 @@ DMenu MenuSubDistributions = {
dmenuFlagCheck, dmenuSetFlag, NULL, &Dists, '[', 'X', ']', DIST_PROFLIBS },
{ "src", "Sources for everything but DES",
srcFlagCheck, distSetSrc },
{ "ports", "The FreeBSD Ports collection",
dmenuFlagCheck, dmenuSetFlag, NULL, &Dists, '[', 'X', ']', DIST_PORTS },
{ "XFree86", "The XFree86 3.2 distribution",
x11FlagCheck, distSetXF86 },
{ "All", "All sources, binaries and XFree86 binaries",
@ -999,7 +1001,6 @@ DMenu MenuInstallCustom = {
{ "4 Distributions", "Select distribution(s) to extract", NULL, dmenuSubmenu, NULL, &MenuDistributions },
{ "5 Media", "Choose the installation media type", NULL, dmenuSubmenu, NULL, &MenuMedia },
{ "6 Commit", "Perform any pending Partition/Label/Extract actions", NULL, installCustomCommit },
{ "7 Extract", "Just do distribution extract step", NULL, distExtractAll },
{ "0 Exit", "Exit this menu (returning to previous)", NULL, dmenuExit },
{ NULL } },
};
@ -1017,8 +1018,8 @@ DMenu MenuMBRType = {
"one, select \"standard\". If you would prefer your Master Boot\n"
"Record to remain untouched then select \"None\".\n\n"
" NOTE: PC-DOS users will almost certainly require \"None\"!",
"Press F1 to read the installation guide",
"install",
"Press F1 to read about drive setup",
"drives",
{ { "BootMgr", "Install the FreeBSD Boot Manager (\"Booteasy\")",
dmenuRadioCheck, dmenuSetValue, NULL, &BootMgr },
{ "Standard", "Install a standard MBR (no boot manager)",
@ -1060,6 +1061,8 @@ DMenu MenuConfigure = {
NULL, docBrowser },
{ "B XFree86", "Configure XFree86",
NULL, configXFree86 },
{ "D Distributions", "Install additional distribution sets",
NULL, distExtractAll },
{ "L Label", "The disk Label editor",
NULL, diskLabelEditor },
{ "Partition", "The disk Partition Editor",

View file

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id: package.c,v 1.57 1997/02/14 21:59:26 jkh Exp $
* $Id: package.c,v 1.58 1997/02/14 23:00:01 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -141,8 +141,6 @@ package_extract(Device *dev, char *name, Boolean depended)
while (!sigpipe_caught && (i = fread(buf, 1, BUFSIZ, fp)) > 0) {
int seconds;
if (isDebug())
msgDebug("Just read %d bytes from media device.\n", i);
tot += i;
/* Print statistics about how we're doing */
(void) gettimeofday(&stop, (struct timezone *)0);
@ -189,15 +187,13 @@ package_extract(Device *dev, char *name, Boolean depended)
}
}
else {
msgDebug("pkg_extract: get returned NULL\n");
dialog_clear_norefresh();
if (variable_get(VAR_NO_CONFIRM))
msgNotify("Unable to fetch package %s from selected media.\n"
"No package add will be done.", name);
else {
else
msgConfirm("Unable to fetch package %s from selected media.\n"
"No package add will be done.", name);
}
ret = DITEM_FAILURE | DITEM_RESTORE;
}
return ret;

View file

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id$
* $Id: config.c,v 1.83 1997/02/22 14:11:16 peter Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -249,7 +249,7 @@ configFstab(void)
msgConfirm("Unable to make mount point for: /cdrom");
}
else
fprintf(fstab, "/dev/%s\t\t/cdrom\tcd9660\t\tro,noauto\t0\t0\n", devs[0]->name);
fprintf(fstab, "/dev/%s\t\t/cdrom\t\tcd9660\t\tro,noauto\t0\t0\n", devs[0]->name);
}
/* Write the others out as /cdrom<n> */

View file

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id: install.c,v 1.172 1997/02/22 14:11:46 peter Exp $
* $Id: install.c,v 1.173 1997/03/07 16:39:15 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -318,8 +318,8 @@ installFixitCDROM(dialogMenuItem *self)
fixit_common();
msgConfirm("Please remove the FreeBSD CDROM now.");
mediaDevice->shutdown(mediaDevice);
msgConfirm("Please remove the FreeBSD CDROM now.");
return DITEM_SUCCESS;
}
@ -353,8 +353,8 @@ installFixitFloppy(dialogMenuItem *self)
fixit_common();
msgConfirm("Please remove the fixit floppy now.");
unmount("/mnt2", MNT_FORCE);
msgConfirm("Please remove the fixit floppy now.");
return DITEM_SUCCESS;
}

View file

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id$
* $Id: menus.c,v 1.119 1997/02/22 14:12:05 peter Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -221,6 +221,7 @@ DMenu MenuIndex = {
{ "Dists, Kern Developer", "Select kernel developer's distribution.", checkDistKernDeveloper, distSetKernDeveloper },
{ "Dists, User", "Select average user distribution.", checkDistUser, distSetUser },
{ "Dists, X User", "Select average X user distribution.", checkDistXUser, distSetXUser },
{ "Distributions, Adding", "Installing additional distribution sets", NULL, distExtractAll },
{ "Distributions, XFree86","XFree86 distribution menu.", NULL, distSetXF86 },
{ "Documentation", "Installation instructions, README, etc.", NULL, dmenuSubmenu, NULL, &MenuDocumentation },
{ "Doc, README", "The distribution README file.", NULL, dmenuDisplayFile, NULL, "readme" },
@ -230,7 +231,6 @@ DMenu MenuIndex = {
{ "Doc, Release", "The distribution release notes.", NULL, dmenuDisplayFile, NULL, "relnotes" },
{ "Doc, HTML", "The HTML documentation menu.", NULL, docBrowser },
{ "Emergency shell", "Start an Emergency Holographic shell.", NULL, installFixitHoloShell },
{ "Extract", "Extract selected distributions from media.", NULL, distExtractAll },
{ "Fixit", "Repair mode with CDROM or fixit floppy.", NULL, dmenuSubmenu, NULL, &MenuFixit },
{ "FTP sites", "The FTP mirror site listing.", NULL, dmenuSubmenu, NULL, &MenuMediaFTP },
{ "Gateway", "Set flag to route packets between interfaces.", dmenuVarCheck, dmenuToggleVariable, NULL, "gateway=YES" },
@ -648,10 +648,10 @@ DMenu MenuDistributions = {
checkDistXUser, distSetXUser },
{ "6 Minimal", "The smallest configuration possible",
checkDistMinimum, distSetMinimum },
{ "7 All", "All sources, binaries and XFree86 binaries",
checkDistEverything, distSetEverything },
{ "8 Custom", "Specify your own distribution set",
{ "7 Custom", "Specify your own distribution set",
NULL, dmenuSubmenu, NULL, &MenuSubDistributions, '>', '>', '>' },
{ "8 All", "All sources, binaries and XFree86 binaries",
checkDistEverything, distSetEverything },
{ "9 Clear", "Reset selected distribution list to nothing",
NULL, distReset, NULL, NULL, ' ', ' ', ' ' },
{ "0 Exit", "Exit this menu (returning to previous)",
@ -693,6 +693,8 @@ DMenu MenuSubDistributions = {
dmenuFlagCheck, dmenuSetFlag, NULL, &Dists, '[', 'X', ']', DIST_PROFLIBS },
{ "src", "Sources for everything but DES",
srcFlagCheck, distSetSrc },
{ "ports", "The FreeBSD Ports collection",
dmenuFlagCheck, dmenuSetFlag, NULL, &Dists, '[', 'X', ']', DIST_PORTS },
{ "XFree86", "The XFree86 3.2 distribution",
x11FlagCheck, distSetXF86 },
{ "All", "All sources, binaries and XFree86 binaries",
@ -999,7 +1001,6 @@ DMenu MenuInstallCustom = {
{ "4 Distributions", "Select distribution(s) to extract", NULL, dmenuSubmenu, NULL, &MenuDistributions },
{ "5 Media", "Choose the installation media type", NULL, dmenuSubmenu, NULL, &MenuMedia },
{ "6 Commit", "Perform any pending Partition/Label/Extract actions", NULL, installCustomCommit },
{ "7 Extract", "Just do distribution extract step", NULL, distExtractAll },
{ "0 Exit", "Exit this menu (returning to previous)", NULL, dmenuExit },
{ NULL } },
};
@ -1017,8 +1018,8 @@ DMenu MenuMBRType = {
"one, select \"standard\". If you would prefer your Master Boot\n"
"Record to remain untouched then select \"None\".\n\n"
" NOTE: PC-DOS users will almost certainly require \"None\"!",
"Press F1 to read the installation guide",
"install",
"Press F1 to read about drive setup",
"drives",
{ { "BootMgr", "Install the FreeBSD Boot Manager (\"Booteasy\")",
dmenuRadioCheck, dmenuSetValue, NULL, &BootMgr },
{ "Standard", "Install a standard MBR (no boot manager)",
@ -1060,6 +1061,8 @@ DMenu MenuConfigure = {
NULL, docBrowser },
{ "B XFree86", "Configure XFree86",
NULL, configXFree86 },
{ "D Distributions", "Install additional distribution sets",
NULL, distExtractAll },
{ "L Label", "The disk Label editor",
NULL, diskLabelEditor },
{ "Partition", "The disk Partition Editor",

View file

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id$
* $Id: config.c,v 1.83 1997/02/22 14:11:16 peter Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -249,7 +249,7 @@ configFstab(void)
msgConfirm("Unable to make mount point for: /cdrom");
}
else
fprintf(fstab, "/dev/%s\t\t/cdrom\tcd9660\t\tro,noauto\t0\t0\n", devs[0]->name);
fprintf(fstab, "/dev/%s\t\t/cdrom\t\tcd9660\t\tro,noauto\t0\t0\n", devs[0]->name);
}
/* Write the others out as /cdrom<n> */

View file

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id$
* $Id: dist.c,v 1.99 1997/02/22 14:11:31 peter Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -75,6 +75,7 @@ static Distribution DistTable[] = {
{ "compat1x", "/", &Dists, DIST_COMPAT1X, NULL },
{ "compat20", "/", &Dists, DIST_COMPAT20, NULL },
{ "compat21", "/", &Dists, DIST_COMPAT21, NULL },
{ "ports", "/usr", &Dists, DIST_PORTS, NULL },
{ "XF8632", "/usr", &Dists, DIST_XF86, XF86DistTable },
{ NULL },
};
@ -645,7 +646,12 @@ distExtractAll(dialogMenuItem *self)
char buf[512];
/* paranoia */
if (!Dists || !mediaVerify() || !mediaDevice->init(mediaDevice))
if (!Dists) {
if (!dmenuOpenSimple(&MenuDistributions, FALSE) && !Dists)
return DITEM_FAILURE | DITEM_RESTORE;
}
if (!mediaVerify() || !mediaDevice->init(mediaDevice))
return DITEM_FAILURE;
dialog_clear_norefresh();
@ -667,3 +673,5 @@ distExtractAll(dialogMenuItem *self)
}
return DITEM_SUCCESS;
}

View file

@ -16,7 +16,8 @@
#define DIST_XF86 0x0800
#define DIST_DES 0x1000
#define DIST_CATPAGES 0x2000
#define DIST_ALL 0x3FFF
#define DIST_PORTS 0x4000
#define DIST_ALL 0x7FFF
/* Canned distribution sets */
#define _DIST_DEVELOPER \

View file

@ -1,10 +1,49 @@
Boot Manager Selection:
-----------------------
If you wish to switch between multiple operating systems on your
machine, or if you are trying to install FreeBSD on a drive other than
your 1st drive, then you must install a boot manager. In the case
where you wish to boot off an alternate drive, it should also be noted
that you still need to install a boot manager on the FIRST drive!
Even if you do not intend to create a FreeBSD partition on that drive
(e.g. it's being wholly used by something else), the boot manager
still needs to reside on the first disk in order to function as a
"redirector" for the boot process.
To do this, simply select your 1st drive in the drive selection menu
and when the partition editor comes up, don't make any changes - just
(Q)uit. At the boot manager menu which follows, select the first
option (install a boot manager) and then proceed to setup the other
drive(s) for FreeBSD as normal.
It should also be noted that "operating systems" such as Windows 95
will completely overwrite your boot manager without so much as a
polite "may I please destroy your boot manager?" prompt if you make
the mistake of installing them second. If this happens to you after
FreeBSD is already installed, all is not lost! Simply revisit your
FreeBSD distribution directory and look for a tools/ subdirectory, in
which you'll find "bootinst.exe" and "boot.bin". To reinstall, simply
say "bootinst boot.bin" while in the tools/ subdirectory.
If you see the boot manager displaying ``F?'' when you try to come up
for the first time and it refuses to change, no matter how often you
whap on the function key assigned to FreeBSD, then you have a geometry
mismatch problem and you should read the next section for important
information on how to prevent that exact problem from happening!
Geometry Translation / Sharing the disk(s) with another OS:
----------------------------------------------------------
If you are going to actually install some portion of FreeBSD on a
drive then PLEASE BE VERY CERTAIN that the Geometry reported in the
Partition Editor is the correct one for your drive and controller
combination!
IDE drives often have a certain geometry set during the PC BIOS setup,
or (in the case of larger IDE drives) have their geometry "remapped"
or (in the case of larger IDE drives) have their geometry "translated"
by either the IDE controller or a special boot-sector translation
utility such as that by OnTrack Systems. In these cases, knowing the
correct geometry gets even more complicated as it's not something you
@ -21,9 +60,33 @@ very small DOS partition first, before installing FreeBSD. Once
FreeBSD is installed you can always delete it again if you need the
space.
It's actually not a bad idea (believe it or not) to have a small bootable
DOS partition on your FreeBSD machine anyway: Should the machine become
unstable or exhibit strange behavior at some point in the future (which
is not uncommon behavior for PC hardware!) you can then at least use
DOS for installing and running one of the commercially available system
diagnostic utilities.
It's actually not a bad idea (believe it or not) to have a small
bootable DOS partition on your FreeBSD machine anyway: Should the
machine become unstable or exhibit strange behavior at some point in
the future (which is not uncommon behavior for PC hardware!) you can
then at least use DOS for installing and running one of the
commercially available system diagnostic utilities.
IMPORTANT NOTE:
Any root partition you try to boot from must also reside below the
1024th cylinder. If you're using a translated geometry then this is
probably not a problem, but if you are using a native disk geometry
which exceeds 1024 cylinders then you could have a failure to boot if
you end up installing a root partition (or even just the kernel file
in a root partition) out past cylinder 1024. If you are trying to
share your first disk with FreeBSD and another OS which was installed
previously, you are particularly susceptible to this problem and should
check your disk addresses very carefully.
If you find that you have insufficient space below cylinder 1024 to
make a root partition for FreeBSD (and again, this ONLY applies to the
root partition - once FreeBSD's kernel is loaded, it doesn't care
about the geometry issues) then you will probably need to install on a
completely different disk (see the boot manager section above) or
resize your existing partitions so that both operating systems can
have boot partitions below cylinder 1024.
You may blame IBM for the limitations of a 10 bit cylinder address.
"No one will have a disk with more than 1024 cylinders." I'm sure
someone said.

View file

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id: install.c,v 1.172 1997/02/22 14:11:46 peter Exp $
* $Id: install.c,v 1.173 1997/03/07 16:39:15 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -318,8 +318,8 @@ installFixitCDROM(dialogMenuItem *self)
fixit_common();
msgConfirm("Please remove the FreeBSD CDROM now.");
mediaDevice->shutdown(mediaDevice);
msgConfirm("Please remove the FreeBSD CDROM now.");
return DITEM_SUCCESS;
}
@ -353,8 +353,8 @@ installFixitFloppy(dialogMenuItem *self)
fixit_common();
msgConfirm("Please remove the fixit floppy now.");
unmount("/mnt2", MNT_FORCE);
msgConfirm("Please remove the fixit floppy now.");
return DITEM_SUCCESS;
}

View file

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id$
* $Id: menus.c,v 1.119 1997/02/22 14:12:05 peter Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -221,6 +221,7 @@ DMenu MenuIndex = {
{ "Dists, Kern Developer", "Select kernel developer's distribution.", checkDistKernDeveloper, distSetKernDeveloper },
{ "Dists, User", "Select average user distribution.", checkDistUser, distSetUser },
{ "Dists, X User", "Select average X user distribution.", checkDistXUser, distSetXUser },
{ "Distributions, Adding", "Installing additional distribution sets", NULL, distExtractAll },
{ "Distributions, XFree86","XFree86 distribution menu.", NULL, distSetXF86 },
{ "Documentation", "Installation instructions, README, etc.", NULL, dmenuSubmenu, NULL, &MenuDocumentation },
{ "Doc, README", "The distribution README file.", NULL, dmenuDisplayFile, NULL, "readme" },
@ -230,7 +231,6 @@ DMenu MenuIndex = {
{ "Doc, Release", "The distribution release notes.", NULL, dmenuDisplayFile, NULL, "relnotes" },
{ "Doc, HTML", "The HTML documentation menu.", NULL, docBrowser },
{ "Emergency shell", "Start an Emergency Holographic shell.", NULL, installFixitHoloShell },
{ "Extract", "Extract selected distributions from media.", NULL, distExtractAll },
{ "Fixit", "Repair mode with CDROM or fixit floppy.", NULL, dmenuSubmenu, NULL, &MenuFixit },
{ "FTP sites", "The FTP mirror site listing.", NULL, dmenuSubmenu, NULL, &MenuMediaFTP },
{ "Gateway", "Set flag to route packets between interfaces.", dmenuVarCheck, dmenuToggleVariable, NULL, "gateway=YES" },
@ -648,10 +648,10 @@ DMenu MenuDistributions = {
checkDistXUser, distSetXUser },
{ "6 Minimal", "The smallest configuration possible",
checkDistMinimum, distSetMinimum },
{ "7 All", "All sources, binaries and XFree86 binaries",
checkDistEverything, distSetEverything },
{ "8 Custom", "Specify your own distribution set",
{ "7 Custom", "Specify your own distribution set",
NULL, dmenuSubmenu, NULL, &MenuSubDistributions, '>', '>', '>' },
{ "8 All", "All sources, binaries and XFree86 binaries",
checkDistEverything, distSetEverything },
{ "9 Clear", "Reset selected distribution list to nothing",
NULL, distReset, NULL, NULL, ' ', ' ', ' ' },
{ "0 Exit", "Exit this menu (returning to previous)",
@ -693,6 +693,8 @@ DMenu MenuSubDistributions = {
dmenuFlagCheck, dmenuSetFlag, NULL, &Dists, '[', 'X', ']', DIST_PROFLIBS },
{ "src", "Sources for everything but DES",
srcFlagCheck, distSetSrc },
{ "ports", "The FreeBSD Ports collection",
dmenuFlagCheck, dmenuSetFlag, NULL, &Dists, '[', 'X', ']', DIST_PORTS },
{ "XFree86", "The XFree86 3.2 distribution",
x11FlagCheck, distSetXF86 },
{ "All", "All sources, binaries and XFree86 binaries",
@ -999,7 +1001,6 @@ DMenu MenuInstallCustom = {
{ "4 Distributions", "Select distribution(s) to extract", NULL, dmenuSubmenu, NULL, &MenuDistributions },
{ "5 Media", "Choose the installation media type", NULL, dmenuSubmenu, NULL, &MenuMedia },
{ "6 Commit", "Perform any pending Partition/Label/Extract actions", NULL, installCustomCommit },
{ "7 Extract", "Just do distribution extract step", NULL, distExtractAll },
{ "0 Exit", "Exit this menu (returning to previous)", NULL, dmenuExit },
{ NULL } },
};
@ -1017,8 +1018,8 @@ DMenu MenuMBRType = {
"one, select \"standard\". If you would prefer your Master Boot\n"
"Record to remain untouched then select \"None\".\n\n"
" NOTE: PC-DOS users will almost certainly require \"None\"!",
"Press F1 to read the installation guide",
"install",
"Press F1 to read about drive setup",
"drives",
{ { "BootMgr", "Install the FreeBSD Boot Manager (\"Booteasy\")",
dmenuRadioCheck, dmenuSetValue, NULL, &BootMgr },
{ "Standard", "Install a standard MBR (no boot manager)",
@ -1060,6 +1061,8 @@ DMenu MenuConfigure = {
NULL, docBrowser },
{ "B XFree86", "Configure XFree86",
NULL, configXFree86 },
{ "D Distributions", "Install additional distribution sets",
NULL, distExtractAll },
{ "L Label", "The disk Label editor",
NULL, diskLabelEditor },
{ "Partition", "The disk Partition Editor",

View file

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id: package.c,v 1.57 1997/02/14 21:59:26 jkh Exp $
* $Id: package.c,v 1.58 1997/02/14 23:00:01 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -141,8 +141,6 @@ package_extract(Device *dev, char *name, Boolean depended)
while (!sigpipe_caught && (i = fread(buf, 1, BUFSIZ, fp)) > 0) {
int seconds;
if (isDebug())
msgDebug("Just read %d bytes from media device.\n", i);
tot += i;
/* Print statistics about how we're doing */
(void) gettimeofday(&stop, (struct timezone *)0);
@ -189,15 +187,13 @@ package_extract(Device *dev, char *name, Boolean depended)
}
}
else {
msgDebug("pkg_extract: get returned NULL\n");
dialog_clear_norefresh();
if (variable_get(VAR_NO_CONFIRM))
msgNotify("Unable to fetch package %s from selected media.\n"
"No package add will be done.", name);
else {
else
msgConfirm("Unable to fetch package %s from selected media.\n"
"No package add will be done.", name);
}
ret = DITEM_FAILURE | DITEM_RESTORE;
}
return ret;