Skip to content

commands took to make a custom rootfs

Zman-1x1 edited this page Jun 7, 2021 · 2 revisions

This Process requires a Linux machine with systemd running and able to chroot

In Your Linux machine

mkdir hippo
tar -xvpzf /path/to/.tar.gz -C hippo
# Mount points 
sudo mount --rbind /dev hippo/dev
sudo mount -t sysfs /sys hippo/sys
sudo mount -t proc /proc hippo/proc
sudo mount --rbind /run hippo/run # Optional bind 
sudo cp /etc/resolv.conf hippo/etc/
sudo chroot hippo

Inside chroot

source ~/.bashrc
source ~/etc/profile
# Update apt indexes
apt update
# Stage 1 : Resolv dialog error
apt install apt-utils readline-common perl dialog -y
# Stage 2 : unminimize ubuntu fs
unminimize
# Stage 3 : install Desktop sup Environment
apt install xfce4 -y # --no-install--recommends is not recommended here
# Stage 4 : Install extra software
apt install xarchiver firefox tigervnc-common tigervnc-standalone-server -y
# Stage 5 : Setup vnc
vncpasswd
# Stage 6 : Start vnc and check if necessary
vncserver :2 # port 1 wont work if you use qemu user space
# Stage 7 : Stop Vnc and pack fs up in tarball
vncserver --kill :2
tar -cvpzf /hippo.tar.gz    \
    --exclude=/dev/*        \
    --exclude=/sys/*        \
    --exclude=/proc/*       \
    --exclude=/run/*        \
    --exclude=/hippo.tar.gz \
    /* --one-file-system