[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Got a base system running



Hi all,
ok, at last I got a base system running, and so far I have only had a
few problems. Here's what I did:

a) The basedisks.sh script from boot-floppies (I used 1.1.1.9; I know .10
already exists) required only a few minor changes to run ok on m68k. Here
is a little diff. The only changes were for the new naming style (_ instead
of -), for NOT writing the base package to disk, writing 'ldso' instead 
of 'ld.so', and leaving out some packages out of the list that don't
exist on m68k.
--- 
*** basedisks.sh.orig	Tue Jul 11 00:14:46 2000
--- basedisks.sh.new	Thu Aug  1 15:11:43 1996
***************
*** 30,36 ****
  make_paths() {
  	local PATHS=""
  	for i in $*; do
! 		p=`last $archive/$i-[^a-zA-Z]*.deb`
  		if [ ! -f $p ]; then
  			echo "Can't find package" $p 1>& 2
  			exit -1;
--- 30,36 ----
  make_paths() {
  	local PATHS=""
  	for i in $*; do
! 		p=`last $archive/$i\_[^a-zA-Z]*.deb`
  		if [ ! -f $p ]; then
  			echo "Can't find package" $p 1>& 2
  			exit -1;
***************
*** 99,105 ****
  (cd $B; chroot $B sbin/ldconfig*)
  trap "umount $B/proc" 0
  chroot $B mount -t proc proc /proc
! (cd $B;dpkg --root=. --install `make_paths base/ld.so`)
  (cd $B;dpkg --root=. --force-depends --install `make_paths base/dpkg`)
  (cd $B;dpkg --root=. --install `make_paths base/libc5`)
  
--- 99,105 ----
  (cd $B; chroot $B sbin/ldconfig*)
  trap "umount $B/proc" 0
  chroot $B mount -t proc proc /proc
! (cd $B;dpkg --root=. --install `make_paths base/ldso`)
  (cd $B;dpkg --root=. --force-depends --install `make_paths base/dpkg`)
  (cd $B;dpkg --root=. --install `make_paths base/libc5`)
  
***************
*** 122,127 ****
  rm -f $B/var/lib/dpkg/status-old
  (cd $B; tar clf - .)| gzip --best > base1_1.tgz
  rm -f -r $B $P &
! ./utilities/floppy_split base1_1.tgz base14 1440
! ./utilities/floppy_split base1_1.tgz base12 1200
  exit 0
--- 122,127 ----
  rm -f $B/var/lib/dpkg/status-old
  (cd $B; tar clf - .)| gzip --best > base1_1.tgz
  rm -f -r $B $P &
! #./utilities/floppy_split base1_1.tgz base14 1440
! #./utilities/floppy_split base1_1.tgz base12 1200
  exit 0
*** scripts/basedisks/PACKAGES.orig	Sat Jun 15 23:54:49 1996
--- scripts/basedisks/PACKAGES	Tue Jul 11 01:05:07 2000
***************
*** 1,5 ****
  base/base
! base/ld.so
  base/libc5
  base/ncurses-base
  base/ncurses3.0
--- 1,5 ----
  base/base
! base/ldso
  base/libc5
  base/ncurses-base
  base/ncurses3.0
***************
*** 7,14 ****
  base/libdb1
  base/libgdbm1
  base/dpkg
- base/dpkg-ftp
- base/lilo
  base/adduser
  base/ae
  base/bash
--- 7,12 ----
***************
*** 23,29 ****
  base/gzip
  base/hostname
  base/kbd
- base/mbr
  base/tar
  base/modules
  base/modconf
--- 21,26 ----
***************
*** 32,40 ****
  base/procps
  base/sed
  base/setserial
! base/sh-utils
  base/sysklogd
- base/syslinux
  base/sysvinit
  base/textutils
  base/timezone
--- 29,36 ----
  base/procps
  base/sed
  base/setserial
! base/shellutils
  base/sysklogd
  base/sysvinit
  base/textutils
  base/timezone
*** scripts/basedisks/PARTIAL_PACKAGE_FILES.orig	Tue Jul 11 00:18:33 2000
--- scripts/basedisks/PARTIAL_PACKAGE_FILES	Tue Jul 11 00:18:59 2000
***************
*** 15,18 ****
  usr/lib/perl*/auto/Socket/autosplit.ix
  usr/lib/perl*/strict.pm
  usr/lib/perl*/vars.pm
! usr/lib/perl*/i486-linux/5.002/Config.pm
--- 15,18 ----
  usr/lib/perl*/auto/Socket/autosplit.ix
  usr/lib/perl*/strict.pm
  usr/lib/perl*/vars.pm
! usr/lib/perl*/m68k-linux/5.002/Config.pm
--- cut here ---


Any suggestions how to merge this together with the i386 versions of
those scripts? Should we introduce scripts/i386/rootdisk and
scripts/m68k/rootdisk, with the prototype stuff being in scripts/all
or alike?

Adapting the script to create the root disk (rootdisk.sh) is harder; the
largest problem is that it makes heavy use of fdisk for determining 
swap, Linux native and other partitions, where we don't yet have an fdisk
for m68k. So what I did here was to manually perform all the steps the script
would usually do: creation of fstab, hosts, init.d/network, setup of keyboard
and timezone etc. 

After installing this modified base system on a partition and booting
from it, almost everything worked - with a few exceptions:
- As soon as init.d/boot calls init.d/network, I got a data read fault
  from somewhere in the 0xfffe.... range. Funny thing is that this was
  my fault - my self-created network file did not have the initial
  line "#!/bin/sh". But should this really cause a kernel error? (although
  it was non-fatal).
- syslogd doesn't yet want to work (1.3-8). It starts, but as soon as it
  wants to write something into a file, it exits. I'll have to check older
  buglogs for this one..
- /tmp and /var/tmp were not set rwxrwxrwt - but that seems to be my
  fault again, because the base_1.1.0-13 (and above) packages DO have 
  correct permissions (I just checked).

Well, overall - things look pretty promising. Ok, one thing annoyed me a bit:
dselect is pretty slow when you go through the list of packages. I suppose
this is not as bad on fast 486 or Pentium machines, but as far as I'm
concerned, I'll stick with dpkg for now..

Frank



Reply to: