HOME ABOUT WEB GITHUB TOP BOTTOM PREV NEXT
OS Week 09 Assignment #3: Linux From Scratch 12.0 Ch. 6-7
Preparation (IMPORTANT!)
- Cross-check/revisit here.
- Check if you need more SWAP SPACE.
- Check if you need to SHRINK and CLEAN your virtual files.
Follow “The Linux From Scratch version 12.0 Book” chapter 6-7
- VirtualBox (AMD64)
- UTM/M1 (ARM64/AARCH64)
- The Linux From Scratch ARM64/AARCH64 Book
- COMPARE
LFS ARM64/AARCH64 is not an official version (KW) and changes frequently. Therefore, it is recommended to use a package similar to the official version of LFS 12.0 (ORI). Because of this, the instructions for the KW version packages often differ from those for the ORI. Since it uses the ORI package, it must sometimes be compiled using the ORI method. Please be careful, especially when working on chapter 8 and explicitly compiling GCC (chapter 8.27).
- Source Code Mirrors: (source mirror1) (source mirror2) (source mirror3)
- Kernotex’s YouTube LFS 12.0 PlayList
Take Note!
- Make sure when to use:
- your own account (e.g. “cbkadal”)
- root account
- lfs account
- Check your “LFS”, “ARCH”, “NPROC”, and “MAKEFLAGS” environment for all accounts (e.g. “cbkadal”, “root”, “lfs”).
echo "LFS=\"$LFS $(df $LFS|tail -1|awk '{print $1,int($2/1000000)"G"}')\" ARCH $(arch) NPROC=$(nproc) MAKEFLAGS=$MAKEFLAGS"
You might want to combine the commands in chapter 7.2-7.4
echo "= (1) ======================================"; sleep 1
echo "LFS=$LFS NPROC=$(nproc) MAKEFLAGS=$MAKEFLAGS"
echo "= (2) ======================================"; sleep 1
chown -Rv root:root $LFS/{usr,lib,var,etc,bin,sbin,tools}
case $(uname -m) in
x86_64) chown -Rv root:root $LFS/lib64 ;;
esac
mkdir -pv $LFS/{dev,proc,sys,run}
echo "= (3) ======================================"; sleep 1
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!:/#
Generate LFS Ch. 6-7 Report
- After finishing chapter 7, move:
AMD64(root)
mv -v $HOME/lfs-temp-tools-12.0.tar.xz /var/tmp/
ARM64(root)
mv -v $HOME/lfs-temp-tools-arm64-r12.0-99.tar.xz /var/tmp/lfs-temp-tools-12.0.tar.xz
AMD64(root) and ARM64(root)
- Cross-check that “lfs-temp-tools-12.0.tar.xz” is in /var/tmp
- The file size should be larger than 800 MB.
- Don’t delete the lfs-temp-tools-12.0.tar.xz file until the end of the term.
- If prompted, you should be able to show that file.
du -s -h /var/tmp/lfs-temp-tools-12.0.tar.xz
(user)
- Last, run:
cd $HOME/mywork/WEEK09/
bash 09-WEEK09.sh
Result/Report
cd $HOME/RESULT/W09/
ls -al