diff options
-rw-r--r-- | mountvirtfs.sh | 32 | ||||
-rw-r--r-- | preparechroot.sh | 36 |
2 files changed, 39 insertions, 29 deletions
diff --git a/mountvirtfs.sh b/mountvirtfs.sh new file mode 100644 index 0000000..7eea548 --- /dev/null +++ b/mountvirtfs.sh @@ -0,0 +1,32 @@ +#!/bin/bash + +printf "%b" "${GRN}Mounting virtual kernel filesystems...${RST}\n" +if ! mountpoint "${LFS}"/dev >/dev/null 2>&1; then + sudo mount -v --bind /dev "${LFS}"/dev +else + printf "%b" " ${YLW}${LFS}/dev${GRN} is already mounted${RST}\n" +fi +if ! mountpoint "${LFS}"/dev/pts >/dev/null 2>&1; then + sudo mount -v --bind /dev/pts "${LFS}"/dev/pts +else + printf "%b" " ${YLW}${LFS}/dev/pts${GRN} is already mounted${RST}\n" +fi +if ! mountpoint "${LFS}"/proc >/dev/null 2>&1; then + sudo mount -v --bind /proc "${LFS}"/proc +else + printf "%b" " ${YLW}${LFS}/proc${GRN} is already mounted${RST}\n" +fi +if ! mountpoint "${LFS}"/sys >/dev/null 2>&1; then + sudo mount -v --bind /sys "${LFS}"/sys +else + printf "%b" " ${YLW}${LFS}/sys${GRN} is already mounted${RST}\n" +fi +if ! mountpoint "${LFS}"/run >/dev/null 2>&1; then + sudo mount -v --bind /run "${LFS}"/run +else + printf "%b" " ${YLW}${LFS}/run${GRN} is already mounted${RST}\n" +fi + +if [ -h "${LFS}"/dev/shm ]; then + sudo mkdir -pv "${LFS}"/"$(readlink "${LFS}"/dev/shm)" +fi diff --git a/preparechroot.sh b/preparechroot.sh index b460175..1d05e72 100644 --- a/preparechroot.sh +++ b/preparechroot.sh @@ -4,6 +4,11 @@ source colors.sh export LFS="$1" +if [ -f chrootprepared ]; then + printf "%b" "${RED}CHROOT ${GRN}already prepared...\n${RST}" + exit 0 +fi + if [ -z "${LFS}" ]; then printf "%b" "${RED}Require first argument as path to LFS build!${RST}\n" exit 1 @@ -33,36 +38,9 @@ if [ "${USER}" == "root" ]; then mknod -m 600 "${LFS}"/dev/console c 5 1 >/dev/null 2>&1 mknod -m 666 "${LFS}"/dev/null c 1 3 >/dev/null 2>&1 - printf "%b" "${GRN}Mounting virtual kernel filesystems...${RST}\n" - if ! mountpoint "${LFS}"/dev >/dev/null 2>&1; then - mount -v --bind /dev "${LFS}"/dev - else - printf "%b" " ${YLW}${LFS}/dev${GRN} is already mounted${RST}\n" - fi - if ! mountpoint "${LFS}"/dev/pts >/dev/null 2>&1; then - mount -v --bind /dev/pts "${LFS}"/dev/pts - else - printf "%b" " ${YLW}${LFS}/dev/pts${GRN} is already mounted${RST}\n" - fi - if ! mountpoint "${LFS}"/proc >/dev/null 2>&1; then - mount -v --bind /proc "${LFS}"/proc - else - printf "%b" " ${YLW}${LFS}/proc${GRN} is already mounted${RST}\n" - fi - if ! mountpoint "${LFS}"/sys >/dev/null 2>&1; then - mount -v --bind /sys "${LFS}"/sys - else - printf "%b" " ${YLW}${LFS}/sys${GRN} is already mounted${RST}\n" - fi - if ! mountpoint "${LFS}"/run >/dev/null 2>&1; then - mount -v --bind /run "${LFS}"/run - else - printf "%b" " ${YLW}${LFS}/run${GRN} is already mounted${RST}\n" - fi + source mountvirtfs.sh - if [ -h "${LFS}"/dev/shm ]; then - mkdir -pv "${LFS}"/"$(readlink "${LFS}"/dev/shm)" - fi + touch chrootprepared else printf "%b" "${RED}preparechroot.sh must be ran as ${YLW}root${RED} user!${RST}\n" |