[linux-fai] various comments, questions, remarks, suggestions, ...

Thomas Gebhardt gebhardt at HRZ.Uni-Marburg.DE
Tue May 30 17:06:05 CEST 2000


Hi,

after fiddling around with fai I have some questions and remarks
(in random order)

* S02memory.pl and S05network_card.pl are missing in the fai alpha
  version. Are they left away purposely? I suggest to use some
  systematics in the naming scheme of the disk and memory classes,
  e.g., DISK_1_4GB instead of 4GB (4GB could equally attribute the
  main memory) and MEM_200_500MB instead of BIG_MEMORY (big is
  relative).

* shouldn't S24nis.sh define NONIS if YPDOMAIN is not present?

* it seems that rootpw from S98variables.source superseeds
  the settings in S98rootpw.source

* I suggest to test for 
  A <  x <= B         or 
  A <= x <  B         instead of
  A <  x <  B         in testsize(x,A,B) of fai.pl
  Then one could divide a parameter interval into subranges.
  A specific parameter x would belong to exactly one of
  the subranges even if it lies on a boundary

* read_disk_info from silently assumes that the disk block size
  is 512 bytes. This may be false. I tried to figure out the
  block size by "sfdisk -l":

sub read_disk_info {

    # use "sfdisk -s" to get disk size in units of blocks
    open ( DISK,"sfdisk -s|");
    while (<DISK>) {
	if (m!^/dev/(.+):\s+(\d+)!) {
	    my ($device,$blocks) = ($1,$2);
	    $numdisks++;
	    push @devicelist,$device;
	    $blocks{$device} = $blocks;
	}
    }
    close DISK;

    # use "sfdisk -l" to get the size of a block
    my $device;
    open ( DISK,"sfdisk -l|");
    while (<DISK>) {
	if (m!^Disk\s/dev/(\w+)!) {
	    $device = $1;
	}
	if (m!blocks of\s*(\d+)\s*bytes!) {
	    my $bytes_per_block = $1;
            # blocks -> Mbytes:
	    $size = $blocks{$device} * $bytes_per_block / (1024*1024) ;
	    $sum_disk_size += $size;
	}
    }
    close DISK;
}

* Could one include "define_classes" to the sysinfo routine in rc_fai?
  This would give some useful information for installation candidates.

* let fai ring the bell ( echo -e "\a" ) after installation done? :-)

* Maybe one could supply a shell on the second tty (Alt+F2)
  during installation? Then a courious person could do a
  "ps" or somewhat else. Unfortunately I do not know how to
  implement this (/bin/sh </dev/tty2 >/dev/tty2 &) doesn't
  seem to work.

* suggestion to give the package_configs REMOVE and MAINTAINER
  a more meaningful name (NOPCMCIA, NOPPP, DEBIAN_DEVEL). Maybe
  one shuold not just remove but purge the pcmcia package since
  "/etc/init.d/pcmcia start" results in an error message in the
  boot sequence when no pcmcia module is configured in the kernel.

* The BASE script sets mode=a+rw . This is an unsecure default
  configuration (M$ style)

* BTW: Why doesn't fai install shadow passwords by default?
  (I assume the reason is NIS? But the debian version of the
  NIS server can be configured to hide the password entry
  when asked from a port > 1024. So shadow passwords do make
  sense even with NIS)

* Don't know the meaning of
 	{ ${target}/etc/modutils/switch_off
	  AutoCreate
	  AppendIfNoSuchLine "alias char-major-4 off"
	}
  in the BOOT cfengine script. A comment line would be helpful?

* Is the files directory intendend to be just a repository for
  files used by the cfengine scripts? Or is there a strict
  rule that applies to all files in the files directory, saying
    "/files/<path>/<classname> gets copied to /<path> if
    fai client belongs to class <classname>"
  If the latter is true, shouldn't one put that rule into
  some general code rather than code it in each cfengine script
  individually? I recently wrote a perl script that does some
  kind of this.

Kind regards, Thomas




More information about the linux-fai mailing list