Table of Contents
week - 6
Targets decided for this week are
- Add fedora live CD to BKO
- Improve the user facing page of BKO
- Improve the boot time menu
29 - 30 July
- Started to work on Fedora live CD
- Collected all basic stuff needed
- Live CD
- Initrd and kernel
- Kernel modules for networking
- It has taken unreasonably long time as fedora_11 lives cd was exceptionally slow on qemu for me, I couldn't get needed kernel modules from inside CD.
- I decided to migrate to kvm for better performance. but I was getting error
could not open /dev/kvm: No such file or directory
- After breaking my head around for some time, it seems my brand new laptop does not have support for virtualization
- For time being, I am using virtual-box, it works fast enough, but only problem with virtualBox is, virtual machine does not pick up the IP address using DHCP as it happens with qemu
-net user
option. This means that my all gpxe scripts which do use dhcp by default will not work any more - I have not yet fixed this problem of dhcp support in virtualbox, I have postponed the solution finding for this problem for time being.
1 - 2 July
- Wrote script which can generate new modified initramfs automatically with everything added from original initramfs.
- Now, actual work of understanding /init script and understanding how they use iso image as root starts.
- Done with modifications in /sbin/real-init which will (hopefully) mount the httpfs partition over root.
- Initial runs were not very promising, when tried to boot this modified fedora live cd over BKO using qemu, it dropped me in rescue shell
- There were few error messages in boot sequence
mount: only root can do that
getKernelCmdLine: failed to open /proc/cmdline: No such file or directory
creating initial /dev : only root can do that
3 July
- Pin-pointed the cause
- when I tried command
mount -t proc proc /proc
It gave error sayingmount: only root can do that
- But as this command is executed from within initrd, it is executed as root, so How can I get that error
- With tip from AndyTim, it seemed that the initrd was created by non-root user, so even if those commands are executed by root, they don't have root privilages.
- It is strange in many ways, as initrd by non-root user works fine for ubuntu and other distributions I have tried.
- I suspect that selinux security policies are enforcing these extra rules as fedora is having selinux in enforcing mode.
- Anyways, creating initrd by root user does make sense in some ways. So, I will follow this for all distributions.
- The booting process has progressed, but now it is stuck at some other point. It just hangs without giving me rescue shell
- I don't even know if it has used httpfs, all my
echo
messages are lost in fast scrolling output of qemu, and I am not able to scroll back and see, what was happening. I need to find some way to be able to see previous outputs. of qemu. I miss that feature seriously in qemu.
4 July
- I will need one of the two things to be able to do debugging properly for problem in hand.
- Scrolling support for qemu (so that I can see old outputs and my debug messages )
- dhcp support in virtual box (
I presume that it is having some kind of scrolling supportI tested andALT+PG_UP
does some scrolling up )
- Started my day with trying to find how to scroll in qemu, but nothing promising came out.
- Both of above ways are time consuming, so I have resolved to use one odd method, taking screen-shots and then checking the old messages, only thing I can say about this method is that, it gets my job done.
- Now, coming back to the problem, I will log the progress with Red Hat Here