Discussion:
Steps to install a PLD core system
Dirk Ullrich
2006-06-27 11:42:26 UTC
Permalink
Hi, PLD users,

I am about to install PLD AC using the PLD rescue CD (version 2.0).

I have tried to use the English install documentation starting at
http://docs.pld-linux.org/instalacjarc_intro.html
but I noted after doing some steps that this HOWTO seems to be
a little bit outdated. Thus I took heart and looked into the Polish
one starting at
http://pl.docs.pld-linux.org/instalacja_chroot_wstep.html
The Polish version seems to be more up-to-date--and luckily
command sequences are the same all over the world :-)

Until now I have install some PLD core RPMs using the following
steps:

1. Boot the PLD rescue CD.
2. Prepare a rootfs partition using ext3 (and swap), mounting it at
"/inst"
3. Customize "/etc/poldek/poldek.conf" to use "/inst/var/cache/poldek"
as package cache dir.
4. Customize "/etc/poldek/pld-source.conf" to use AC's RPMs for
i686--the architecture of the machine I try to install PLD onto.
5. Prepare poldeks cache dir and the rpm database:
mkdir -p /inst/var/cache/poldek
rpm --root /inst --initdb
6. Install core packages according to the Polish documentation
but using "grub" instead of "lilo":
poldek --root /inst -i \
FHS setup dev chkconfig dhcpcd poldek vim geninitrd modutils grub
When being ask to choose one of "pwutils" or "shadow" I have chosen
"shadow".

All these steps are running smoothly--but now I have some questions:
a. When I my 'guessing Polish' is correct later only a kernel RPM and
"udev" will be added, and then you should be able to boot into the
system. I wonder whether some more packages needed.
For instance what about the tools to check the root filesystem (check
will be issued by "/etc/rcd./rc.sysinit")? Are there other packages
needed for a minimal bootable system?
b. I see that "pdksh" was installed as dependency. Well, first I did not
worry about that since I did not explicitly choose a shell. So I've tried
step 6 again but added the "bash" package. But "pdksh" would be
installed again. This looks strange to me, and I've analized the
situation a bit:
Many packages require "/bin/sh", and this feature seems only be
provided by "pdksh". Even "bash" seems to require "/bin/bash", thus
"bash" depends on "pdksh"--sounds a little bit like a joke to me!
(Why, for instance, does "bash" not provide "/bin/sh" itself?) If this is
a feature and not a bug I would be very interested in any reason for
this situation.

Beside these questions I am pleased by PLD even now: The core system
seems to be very small and highly customizable. Features which I've
missed in many Linux distros I've tried.

Dirk
wrobell
2006-06-27 11:58:42 UTC
Permalink
On Tue, 2006-06-27 at 13:42 +0200, Dirk Ullrich wrote:
[...]
Post by Dirk Ullrich
b. I see that "pdksh" was installed as dependency. Well, first I did not
worry about that since I did not explicitly choose a shell. So I've tried
step 6 again but added the "bash" package. But "pdksh" would be
installed again. This looks strange to me, and I've analized the
Many packages require "/bin/sh", and this feature seems only be
provided by "pdksh". Even "bash" seems to require "/bin/bash", thus
"bash" depends on "pdksh"--sounds a little bit like a joke to me!
(Why, for instance, does "bash" not provide "/bin/sh" itself?) If this is
a feature and not a bug I would be very interested in any reason for
this situation.
pdksh is basic PLD shell. we use it for rc-scripts, postin/postun rpm
packages scripts, etc. this is the reason for pdksh providing /bin/sh.
it was decided at very begining because: it is small, fast
and POSIX compiliant.

regards,

wrobell <wrobell at pld-linux.org>
Dirk Ullrich
2006-06-27 12:09:04 UTC
Permalink
Post by wrobell
pdksh is basic PLD shell. we use it for rc-scripts, postin/postun rpm
packages scripts, etc. this is the reason for pdksh providing /bin/sh.
it was decided at very begining because: it is small, fast
and POSIX compiliant.
Okay, but bash can be made POSIX compliant too by using the
"--posix" option. (At least a 3.x bash can AFAIK.) Why not to offer, for
instance, for bash users like me an alternative to use bash instead of
pdksh, and define--for instance-- a sh alias (or mini script) to call
"bash --posix"?

Dirk
wrobell
2006-06-27 12:41:31 UTC
Permalink
Post by Dirk Ullrich
Post by wrobell
pdksh is basic PLD shell. we use it for rc-scripts, postin/postun rpm
packages scripts, etc. this is the reason for pdksh providing /bin/sh.
it was decided at very begining because: it is small, fast
and POSIX compiliant.
Okay, but bash can be made POSIX compliant too by using the
"--posix" option. (At least a 3.x bash can AFAIK.) Why not to offer, for
instance, for bash users like me an alternative to use bash instead of
pdksh, and define--for instance-- a sh alias (or mini script) to call
"bash --posix"?
you can use bash if you want as an user. maybe bash can be used
for system stuff... but we test only with pdksh. and having it
on a system is not big deal as its binary takes only 200KB.

wrobell <wrobell at pld-linux.org>
Dirk Ullrich
2006-06-27 13:23:10 UTC
Permalink
Post by wrobell
you can use bash if you want as an user. maybe bash can be used
for system stuff... but we test only with pdksh. and having it
on a system is not big deal as its binary takes only 200KB.
No big deal--agreed. I've merely asked for curiosity and a kind of
'package minimalism'. And I have wondered whether there are
a priori reasons I'm unaware of to use pdksh for POSIX stuff instead
of bash. Of course, being tested well or not _is_ a reason.

So I have a first little 'personal ToDo' for later:
I will create a tiny "bash-posix" (or so) RPM depending on bash and
providing "/bin/sh" via a "bash --posix" thing. In this way I could try out
to use bash for system stuff.

I hope that my remarks concerning pdksh did not sound to harsh.
I was only surprised. And since English is not my mother tongue I'm
always in danger to unintentionally insult people.

Dirk
wrobell
2006-06-27 13:46:58 UTC
Permalink
Post by Dirk Ullrich
Post by wrobell
you can use bash if you want as an user. maybe bash can be used
for system stuff... but we test only with pdksh. and having it
on a system is not big deal as its binary takes only 200KB.
No big deal--agreed. I've merely asked for curiosity and a kind of
'package minimalism'. And I have wondered whether there are
a priori reasons I'm unaware of to use pdksh for POSIX stuff instead
of bash. Of course, being tested well or not _is_ a reason.
I will create a tiny "bash-posix" (or so) RPM depending on bash and
providing "/bin/sh" via a "bash --posix" thing. In this way I could try out
to use bash for system stuff.
I hope that my remarks concerning pdksh did not sound to harsh.
I was only surprised. And since English is not my mother tongue I'm
always in danger to unintentionally insult people.
don't worry :) it is always good to ask[1] :]

wrobell <wrobell at pld-linux.org>

[1] of course one risks rtfm always... but that's life, isn't it? :]
Łukasz Jernaś
2006-06-27 14:32:30 UTC
Permalink
Post by Dirk Ullrich
Post by wrobell
you can use bash if you want as an user. maybe bash can be used
for system stuff... but we test only with pdksh. and having it
on a system is not big deal as its binary takes only 200KB.
No big deal--agreed. I've merely asked for curiosity and a kind of
'package minimalism'. And I have wondered whether there are
a priori reasons I'm unaware of to use pdksh for POSIX stuff instead
of bash. Of course, being tested well or not _is_ a reason.
AFAIK it was set up because many people like to write (even unintentionally)
only bash compatible, with pdksh they were forced to learn "proper" POSIX
scripting so that every script could also work on systems with different
shells set up whichever vendor they were from...
--
?ukasz [DeeJay1] Jerna?
Dirk Ullrich
2006-06-27 15:12:35 UTC
Permalink
Post by Łukasz Jernaś
AFAIK it was set up because many people like to write (even unintentionally)
only bash compatible, with pdksh they were forced to learn "proper" POSIX
scripting so that every script could also work on systems with different
shells set up whichever vendor they were from...
Okay, I know this problem from doing work for Debian:
When I want to check whether my script is free of bashisms I always try
it with the "dash" which is a Debian clone of "ash" which in turn resembles
much more the good old Bourne Shell than the bash.

Dirk
Marek Guevara Braun
2006-06-27 18:12:24 UTC
Permalink
Post by Dirk Ullrich
a. When I my 'guessing Polish' is correct later only a kernel RPM and
"udev" will be added, and then you should be able to boot into the
system. I wonder whether some more packages needed.
Check /etc/sysconfig/geninitrd /etc/fstab and /etc/mtab (inside of
chroot) - sometimes you have to cheat to make geninitrd (initrd
preparation tool) produce a working initrd image.

Inside /etc/sysconfig/geninitrd you may/have to put some module names
for your disk controller, root filesystem (for ext3 you will need some
more modules in PRE...sth section -- see comments in the file), ...
You may also need to have proper /etc/fstab and forged /etc/mtab (which
should have / filesystem mounted is on the right device) - sometimes
geninitrd cannot guess all options.

If you want / fs on raid/md device better use dev instead of udev for
initrd generation.

And of course check your /boot/grub/menu.lst.
Post by Dirk Ullrich
For instance what about the tools to check the root filesystem (check
will be issued by "/etc/rcd./rc.sysinit")? Are there other packages
needed for a minimal bootable system?
filesystem check is imho optional - it all depends on your /etc/fstab
options (and mkfs options for ext* fs) - for ext3 I think than it should
be installed (you should install it).

Regards,
Marek

Loading...