|
From: Kelledin <kel...@sk...> - 2002-08-17 23:56:04
|
On Saturday 17 August 2002 10:56 am, Enrico Kern wrote:
> Hi,
>
> can anyone give me a full summary about the current
> development-Distribution? What does work e.g what stuff do we
> have. Also i think anyone should write a paper and describe
> the setup-procedur.. The only think i see on the ftp are those
> RPMS and the basedir.tgz not more.
basedirs.tar.bz2 is a rudimentary tarball of the system base
directories (/usr, /tmp, /boot, /opt, /home, and so on) as
specified by the FHS. It also has a few rudimentary config
files (like /etc/passwd and /etc/group).
The kernel tarball (linux-2.4.18-1.tar.gz) is the current kernel
I've built everything against. There's no "default kernel
config" yet, so you'd have to customize that kernel for whatever
system you have. I'm assuming that's no problem for any of us.
;)
The RPMs provided are enough to build a usable desktop, primarily=20
KDE based, as well as several other optional apps and services. =20
Every one of the RPMs there should have all dependencies=20
satisfied by other RPMs in the download set. Basically, the=20
RPMs are what I'm using for my own systems here--my desktop has=20
fully up-to-date, Athlon-optimized RPMs, and most of my servers=20
are using older revisions of those RPMs. All the latest=20
revisions appear to be quite stable, but it needs more testing=20
before we can declare it to be fully stable.
The following instructions are a work-in-progress. They could=20
probably stand to be a bit more user-friendly, but they're a=20
start. Suggestions are always welcome.
The things you'd have to do to set up a Linux distro with these=20
files:
1) Compile a new kernel on your base system (your SuSE, or=20
slackware, or redhat system) from the 2.4.18-1 tarball and boot=20
the system from that kernel. Give it all the necessary features=20
you want.
2) Prepare a new partition and mount it as if you were going to=20
install a fresh distro on it. That includes partitioning,=20
mkfs'ing, untarring basedirs.tar.bz2 within the new partition's=20
root (cd /my/new/system/root; tar -xvyfp=20
/path/to/basedirs.tar.bz2), and setting up default mount points=20
in /etc/fstab. SGI XFS, reiserfs, ext2, and ext3 are all=20
currently supported. Currently I'm partial to using XFS as the=20
default filesystem, but it shouldn't matter what you use at this=20
point.
3) cd to /dev in the InceptionOS base directory and run=20
"./MAKEDEV -v generic"
4) Create necessary config files in the new partition,
primarily /etc/passwd, /etc/group, /etc/shadow, /etc/fstab,
/etc/hosts, /etc/resolv.conf, /var/run/utmp, /var/run/btmp,
/var/log/wtmp, and /var/log/lastlog, and /boot/grub/menu.lst
files. The /etc/passwd and /etc/group file in basedirs.tar.bz2
is slightly outdated; I've attached some example files similar to=20
the passwd and group files I'm currently using.
5) Look through the set of RPMs and figure out which ones you
want to install.
6) Install the RPMs. This can be done with commands like "rpm=20
-Uvh --root /my/new/system/root". If you specify all the RPMs=20
on a single rpm -Uvh command line, rpm *should* sort out their=20
dependencies and their necessary install order, and install them=20
all in one shot (assuming all dependencies are satisfied). You=20
may find it easier to install them one by one. It's basically=20
like a LinuxFromScratch install, except you're using RPMs=20
instead of compiling from source. ;)
Most (all?) of the RPMs should take care of making necessary=20
/etc/ld.so.conf entries, but none of them will make /etc/passwd=20
entries. If you're using the /etc/passwd and /etc/group files=20
I've provided, then this should be no problem, as all necessary=20
passwd entries are provided already. perllocal.pod entries=20
(made by installed perl modules) will also be taken care of=20
automatically.
7) chroot to the IOS system root. cd to /dev and run ./MAKEDEV=20
-v generic again (this makes sure the owner/group of devices is=20
in sync with the IOS /etc/passwd and /etc/group files). Note=20
that MAKEDEV may not create all the devices you need; you may=20
need to create extra device inodes for partitions beyond=20
/dev/[hs]d[abcd]8, /dev/{random,urandom}, and others. The file=20
/usr/src/linux/Documentation/devices.txt should tell you the=20
proper inode numbers to pass to mknod. It also won't create=20
ALSA device files/directories; you'll need to get a copy of=20
alsa-driver-0.9.0rc<whatever> source, run ./configure, and then=20
run ./snddevices to get those. The alsa-driver SRPM provides a=20
suitable source tarball.
8) run /usr/sbin/pwconv within your IOS chroot to get an=20
/etc/shadow file. Then set the root password and any other=20
passwords you feel are necessary.
9) Install a kernel on your new system and set up a boot loader=20
(preferably grub) to load the new system. It's advisable to use=20
a separate bootdisk for booting the develepment InceptionOS.
It should be noted that if you're using SGI XFS, you *cannot*=20
install the bootloader's boot record on the superblock of an XFS=20
filesystem. This would not only fail to install, it would chew=20
up an XFS filesystem and force you to run xfs-repair on it=20
(guess who found this out the hard way =3D/).
10) In the SRPMS directory, look for files *cb.src.rpm. These=20
are "custom build" source RPMs--they need to be rebuilt (via=20
"rpm --rebuild") to match whatever funky custom-compiled kernel=20
you have. These SRPMs are not guaranteed to have precompiled=20
counterparts; if they do, you should dispense with those=20
precompiled counterparts and "rpm --rebuild" the SRPMs yourself=20
within the IOS chroot.
11) Boot into your new system and start having fun. :)
--=20
Kelledin
"If a server crashes in a server farm and no one pings it, does=20
it still cost four figures to fix?" |