The commands in the remainder of the book should be run as the
root
user. Check that ${CLFS} is
set in the root
user’s
environment before proceeding.
mkdir -pv ${CLFS}/{bin,boot,dev,{etc/,}opt,home,lib{,32,64},mnt} mkdir -pv ${CLFS}/{proc,media/{floppy,cdrom},run/{shm},sbin,srv,sys} mkdir -pv ${CLFS}/var/{lock,log,mail,spool} mkdir -pv ${CLFS}/var/{opt,cache,lib{,32,64}/{misc,locate},local} install -dv ${CLFS}/root -m 0750 install -dv ${CLFS}{/var,}/tmp -m 1777 ln -sv ../run ${CLFS}/var/run mkdir -pv ${CLFS}/usr/{,local/}{bin,include,lib{,32,64},sbin,src} mkdir -pv ${CLFS}/usr/{,local/}share/{doc,info,locale,man} mkdir -pv ${CLFS}/usr/{,local/}share/{misc,terminfo,zoneinfo} mkdir -pv ${CLFS}/usr/{,local/}share/man/man{1,2,3,4,5,6,7,8} install -dv ${CLFS}/usr/lib/locale ln -sv ../lib/locale ${CLFS}/usr/lib32 ln -sv ../lib/locale ${CLFS}/usr/lib64
These entries are needed for the RaQ2 bootloader. Only use these if you are utilizing the Colo bootloader:
cd /${CLFS}/boot ln -svf . boot
mkdir -pv ${CLFS}/{bin,boot,dev,{etc/,}opt,home,lib/firmware,mnt} mkdir -pv ${CLFS}/{proc,media/{floppy,cdrom},run/{,shm},sbin,srv,sys} mkdir -pv ${CLFS}/var/{lock,log,mail,spool} mkdir -pv ${CLFS}/var/{opt,cache,lib/{misc,locate},local} install -dv -m 0750 ${CLFS}/root install -dv -m 1777 ${CLFS}{/var,}/tmp ln -sv ../run ${CLFS}/var/run mkdir -pv ${CLFS}/usr/{,local/}{bin,include,lib,sbin,src} mkdir -pv ${CLFS}/usr/{,local/}share/{doc,info,locale,man} mkdir -pv ${CLFS}/usr/{,local/}share/{misc,terminfo,zoneinfo} mkdir -pv ${CLFS}/usr/{,local/}share/man/man{1,2,3,4,5,6,7,8}
Directories are, by default, created with permission mode 755, but
this is not desirable for all directories. In the commands above, two
changes are made—one to the home directory of user root
, and another to the directories for
temporary files.
The first mode change ensures that not just anybody can enter the
/root
directory—the same as a
normal user would do with his or her home directory. The second mode
change makes sure that any user can write to the /tmp
and /var/tmp
directories, but cannot remove another user's files from them. The
latter is prohibited by the so-called “sticky bit,” the highest bit (1) in the 1777 bit
mask.