SUMM: A doconfig question

From: Guy Dallaire <dallaire_at_total.net>
Date: Thu, 15 May 1997 13:14:22 -0400

***********************************
many Thanks to everyone who replied.
***********************************

Rob Naccarato <rob.naccarato_at_sheridanc.on.ca>
Damian Murphy <sysdfm_at_dtir.qld.gov.au>
"Dr. Tom Blinn, 603-881-0646" <tpb_at_zk3.dec.com>
"Lucien_HERCAUD"_at_paribas.com (Lucien HERCAUD)
"Robert L. McMillin" <rlm_at_syseca-us.com>

---- My Question(s) ------------

We are running Digital Unix 3.2D-1.

I read the section about kernel rebuild in the administration manual and
I'm not sure that I fully understood the differences between the 'doconfig'
and 'doconfig -c' commands.

When they say that doconfig (without options) will create a new
configuration file, will this file include the options that are currently
in the actual configuration file ?

Also, suppose I have some options (Like LSM) in my actual config file and I
add new hardware and reboot with the generic kernel. If I do a doconfig -c
SYSTEMNAME, will the previous options + the new hardware be included in the
resulting config file + kernel ?

I have another task at hand: I once removed LSM from my system and then
reinstalled it, it says in the manual that a kernel rebuild is needed for
the system to support LSM. My current configuration file includes various
custom options (Ex.: ppp) and I also added entries for HSZ40 devices that
do not get automatically discovered by the generic kernel. Should I use
doconfig or doconfig -c ? Do I have to boot with the generic kernel to have
LSM support in the new kernel or can I just recompile the actuel kernel ?

----- SUMMARY --------

The consensus is that the answer is NO to both of my questions. Tom gave me
a very detailed answer about the behavior of doconfig, someone also
explained to me how you can make your own kernel without using doconfig.

Various other people responded in the same manner, I'll include a couple of
those answers for your information.

------ Answers excerpts ---------------

When you do a doconfig with no -c or other options, the doconfig script (it
is a shell script, you can read it) uses the sizer program to create a new
configuration file based on the current configuration of the system (that is
what hardware can be discovered, and some default options) and also runs a
program that selects among the available kernel options the ones that should
be in the system configuration, by presenting you with a menu. If I recall
correctly, it does the option menu first, then runs sizer, and sizer merges
the menu choice information with the discovered system configuration to get
the final new configuration file. Another thing that sizer spits out is a
shell script to run MAKEDEV to make device special names.

You don't HAVE to use your system's hostname as the configuration file name,
so one way to do it is to run doconfig without the -c and give it a name you
pick sort of at random. Then you can compare the configuration file that it
creates with your existing file, and manually merge any needed changes.

The drawback in doing that is that the sizer generated MAKEDEV script does
get run, and the kernel build is done. You could, of course, modify a copy
of the doconfig script to stop once it builds the configuration file before
it runs the kernel build or makes the special devices.

You don't really have to run the generic vmunix when you do a doconfig, but
if you've added or reorganized your hardware, the /genvmunix kernel should
be able to find everything, where your target platform kernel might not. So
we tell you to boot /genvmunix for that reason. As long as your kernel is
finding everything, then sizer running on your kernel will find everything.

If, in answering the menu questions from doconfig, you don't select one or
more of the options you have in your present kernel, they won't be in the
new kernel unless you edit the new configuration file and add the relevant
"options" lines.

If you read the "sizer" reference page you will find the option flag that is
used by doconfig to get sizer to create the new configuration file and the
script for running MAKEDEV; you can run sizer manually with that flag to get
the files generated and then look at them.

I *think* I answered your questions; I strongly recommend that if you want
to understand what doconfig does, that you read the script and read each of
the relevant reference pages for the things it invokes. Everything it does
is just making it easy to do all the right things in the right order, so a
non-technical person can set up a system. You can customize things to your
heart's content.

Tom
 
 Dr. Thomas P. Blinn, UNIX Software Group, Digital Equipment Corporation
  110 Spit Brook Road, MS ZKO3-2/U20 Nashua, New Hampshire 03062-2698
   Technology Partnership Engineering Phone: (603) 881-0646
    Internet: tpb_at_zk3.dec.com Digital's Easynet: alpha::tpb
     ACM Member: tpblinn_at_acm.org PC_at_Home: tom_at_felines.mv.net

--------------------------------------

I like to roll my own kernel. I've found that doconfig makes some assumptions
that really made my life difficult one midsummer morning.

To make your kernel without doconfig:

        cd /usr/sys/conf
        Edit your HOSTNAME file directly and make changes
        ./config HOSTNAME
        cd ../HOSTNAME
        make depend
        make
        mv /vmunix /vmunix.old
        cp -p ./vmunix /

The above procedure allows you to add devices and options on your own without
doconfig doing it for you.
-- 
Rob Naccarato
Sys Admin
Sheridan College
Oakville, Ont. Canada
----------------------------------------------
If you do a doconfig the system generates a new config file and modifications 
to parameters such as maxusers, taskmax, and semiphores have to be readded 
when it asks you if you want to edit the config file otherwise they're lost.
If you're a little more experienced you can edit your own config file and 
add/remove a device or change a parameter and then do a doconfig -c FILENAME 
and it will take the modifications and build a new kernel.  The nice thing 
about this is that if you add a new device you don't have to reboot with the 
generic kernel and then build.  You can just edit the config file, move the 
kernel and reboot.  NOTE: vectors increment by 8 for each device (ie rz2, 
tz4)regardless if it's in the config file or not.
							Hope this helps!
------------------------------------------------------------------------------
Trevor Stott                                   Trevor.Stott_at_sheridanc.on.ca
Information Technology
Sheridan College			       Phone: (905) 845-9430 ext. 2148
Oakville, Ontario                              Fax:   (905) 815-4011
------------------------------------------------------------------------------
-------------------------------------------------------------------
Guy E Dallaire, SysAdmin, DBA
Le Directeur General des Elections du Quebec, QC, Canada     
Phone: (418) 646-8618                                         
Fax: (418) 644-9624                                             
    ** "Honni soit qui disco pense"
-------------------------------------------------------------------
Received on Thu May 15 1997 - 19:35:01 NZST

This archive was generated by hypermail 2.4.0 : Wed Nov 08 2023 - 11:53:36 NZDT