CBKADAL
OSP Weekly Assignments
C. BinKadal --- Sendirian, Berhad.


OS Week 10 Assignment #3: Linux From Scratch 12.1 Ch. 8

Preparation (IMPORTANT!)

Check file system /mnt/lfs

df | grep lfs



If there is no “/mnt/lfs”, see here.



Three (3) Accounts

  • your own account, e.g., (user cbkadal)
  • root account (root)
  • lfs account (user lfs)

Check ALL environments for ALL accounts (cbkadal, root, lfs):

echo "LFS=\"$LFS $(df $LFS|tail -1|awk '{print $1,int($2/1000000)"G"}')\" \
      ARCH=$(arch) NPROC=$(nproc) MAKEFLAGS=$MAKEFLAGS"




Follow “The Linux From Scratch version 12.1 Book” chapter 6-7


Take Note!

You might want to combine the commands in chapter 7.2-7.4 (root)

echo "= (1) ======================================"; sleep 1
echo "LFS=$LFS NPROC=$(nproc) MAKEFLAGS=$MAKEFLAGS"
echo "= (2) ======================================"; sleep 1
chown -R root:root $LFS/{usr,lib,var,etc,bin,sbin}
[ -d $LFS/tools/ ] && chown -R root:root $LFS/tools/
case $(uname -m) in
  x86_64) chown -R root:root $LFS/lib64 ;;
esac
mkdir -pv $LFS/{dev,proc,sys,run}
echo "= (3) ======================================"; sleep 1
systemctl daemon-reload
mount -v --bind /dev $LFS/dev
mount -v --bind /dev/pts $LFS/dev/pts
mount -vt  proc proc  $LFS/proc
mount -vt sysfs sysfs $LFS/sys
mount -vt tmpfs tmpfs $LFS/run
echo "= (4) ======================================"; sleep 1
if [ -h $LFS/dev/shm ]; then
  mkdir -pv $LFS/$(readlink $LFS/dev/shm)
else
  mount -t tmpfs -o nosuid,nodev tmpfs $LFS/dev/shm
fi
echo "= (5) ======================================"; sleep 1
df /
echo "= (6) ======================================"; sleep 1
chroot "$LFS" /usr/bin/env -i   \
    HOME=/root                  \
    TERM="$TERM"                \
    PS1='(lfs chroot) \u:\w\$ ' \
    PATH=/usr/bin:/usr/sbin     \
    MAKEFLAGS=-j$(nproc)        \
    /bin/bash --login


The FIRST TIME chroot RESULT

(lfs chroot) I have no name!:/#


AARCH64 (UTM) and ARM64 (VirtualBox)

  • Chapter 8.5. Glibc-2.39 (locale)
    • SKIP “make localedata/install-locales”
    • Or, your file “/lib/locale/locale-archive” size will be humongous.


  • Chapter 8.5. (cont.)
    • Time Zone: Asia/Jakarta
ln -sfv /usr/share/zoneinfo/Asia/Jakarta /etc/localtime


  • Chapter 8.62. Groff-1.23.0
    • Paper Size=”A4”
PAGE=A4 ./configure --prefix=/usr


Last, run (user):

export LFS="/mnt/lfs/"
cd $HOME/mywork/WEEK10/
bash 10_WEEK10.sh


Result/Report

cd $HOME/RESULT/W10/
ls -al



© 2024-2024 --- C. BinKadal --- Revision: 0053---13-Jun-2024.