Total Pageviews

Friday, December 30, 2011

Finished Compiling!

I have finally finished compiling all of the sources. I also compiled the kernel, and installed GRUB and am now ready to boot for the first time. MBR has been installed, and fstab adjusted. I built the system on an external drive and therefore was being recognized as sdb. When it is installed in the laptop, it will be recognized as sda. 

Monday, December 26, 2011

Continued Compiling

I continued compiling today. I am finally getting to the end of Chapter 6. Today I compiled and installed:

diffutils-3.2
gawk-4.0.0
findutils-4.4.2
flex-2.5.35
gettext-0.18.1.1
groff-1.21
GRUB-1.99
gzip-1.4
iproute2-2.6.39
kbd-1.1.15.2
less-444
libpipline-1.2.0
make-3.82
xz-5.0.3
man-db-2.6.0.2
module-init-tools-3.16
patch-2.6.1
psmisc-22.14
shadow-4.1.4.3
sysklogd-1.5
sysvinit-2.88dsf
tar-1.26
texinfo-4.13a

Now, it has taken me a long time to get to this point. All due to the fact I let it sit for so long. It is important to note that if you shutdown the system, it is important to create the environment again, namely:


mount -v --bind /dev $LFS/dev
mount -vt devpts devpts $LFS/dev/pts
mount -vt tmpfs shm $LFS/dev/shm
mount -vt proc proc $LFS/proc
mount -vt sysfs sysfs $LFS/sys

And:

chroot "$LFS" /tools/bin/env -i     HOME=/root TERM="$TERM" PS1='\u:\w\$ '     PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin     /tools/bin/bash --login +h

Otherwise the built binaries won't get installed in the proper locations.

Sunday, December 25, 2011

Lazy Christmas Day

Since I had a lot of free time on Christmas, I decided to pick up on LFS. Having previously downloaded everything, it makes compiling quite easy. I was able to compile and install:

readline
bash
libtool
gdbm
inetutils
perl
autoconf
automake

Actually most time the time today was spent waiting for the tests to complete. In other words, the configure and makes went rather quickly, but the tests that were run prior to the install, took quite a bit of time. I had to patch two pieces of source code, both readline and bash. The patching takes place as follows. After I chrooted the environment, the old /home/lfs becomes "/". Then I stored all the patches in the patches directory, and all of the tar files in the tar-files directory. To patch readline, I moved bash-4.2.tar.gz, and then unzipped and untarred it:

mv tar-files/bash-4.2.tar.gz /
tar zxvf bash-4.2.tar.gz

cd bash-4.2
mv ../patches/ bash-4.2-fixes-3.patch /
patch -Np1 -i ../bash-4.2-fixes-3.patch

Then after patching, I configured  and compiled:

./configure --prefix=/usr --bindir=/bin     --htmldir=/usr/share/doc/bash-4.2 --without-bash-malloc     --with-installed-readline

make

Once you get the knack of building, everything is pretty much straight forward. There is the untarring of the sources, patching if required, configuration, compiling, testing, and finally installing.








Monday, December 12, 2011

A New Disk

I am building my system on an old HP Pavilion. I originally purchased a 160 GB drive, loaded Fedora on it, and then started the build. I decided some time later, that I wanted a dedicated drive for my  Linux From Scratch install. So I bought a 2nd, 160 GB drive.

I then went into gparted and laid out the disk as I wanted. I made a 9.5 root filesystem,  a 4+ gig swap partition, a 50 gig /usr partition, and a 35 gig home partition. I made filesystems on all the partitions except for the swap partition.

I then mounted the '/' partition and copied all of my work to it. In other words, the new disk came up as /dev/sdf. The first partition was mounted as:

mount /dev/sdf1 /mnt


I then copied everything from my /home/LFS to the /mnt, and the umounted it:

umount /mnt

Finally I mounted the new filesystem over the topof the old work:

mount /dev/sdf1 /home/LFS

It could have been mounted elsewhere, but I chose that point because it agrees with the LFS account I had set up.