Difference between revisions of "IoTGateway/BSP/Linux/Quark/BuildingDebianJessieRootfs"
From ESS-WIKI
Line 24: | Line 24: | ||
SID=jessie | SID=jessie | ||
IMAGE=./image-$SID-quark.ext3 | IMAGE=./image-$SID-quark.ext3 | ||
− | + | IMAGE_BSP=./image-full-quark.ext3 | |
ROOTFS=~/rootfs | ROOTFS=~/rootfs | ||
+ | ROOTFS_BSP=~/rootfs_bsp | ||
dd if=/dev/zero of=$IMAGE bs=1M count=1800 | dd if=/dev/zero of=$IMAGE bs=1M count=1800 | ||
− | + | sudo mkfs.ext3 -F $IMAGE | |
− | + | mkdir -p $ROOTFS $ROOTFS_BSP | |
− | + | sudo mount -o loop,ro $IMAGE_BSP $ROOTFS_BSP | |
− | + | ||
sudo mount -o loop $IMAGE $ROOTFS | sudo mount -o loop $IMAGE $ROOTFS | ||
− | + | tar cf - -C $ROOTFS_BSP lib/{firmware,modules} | sudo tar xvf - -C $ROOTFS | |
− | + | sudo umount $ROOTFS_BSP | |
− | + | ||
sudo debootstrap --arch=i386 --foreign $SID $ROOTFS | sudo debootstrap --arch=i386 --foreign $SID $ROOTFS | ||
sudo cp /etc/resolv.conf $ROOTFS/etc | sudo cp /etc/resolv.conf $ROOTFS/etc |
Revision as of 04:05, 2 November 2017
Contents
Host OS Required
Ubuntu 14.04 LTS amd64
- All procedures are verified in Ubuntu 14.04 LTS amd64.
Prerequisites
image-full-quark.ext3
- extract from prebuilt image pack or build a new one
Building Procedures
first stage
SID=jessie IMAGE=./image-$SID-quark.ext3 IMAGE_BSP=./image-full-quark.ext3 ROOTFS=~/rootfs ROOTFS_BSP=~/rootfs_bsp dd if=/dev/zero of=$IMAGE bs=1M count=1800 sudo mkfs.ext3 -F $IMAGE mkdir -p $ROOTFS $ROOTFS_BSP sudo mount -o loop,ro $IMAGE_BSP $ROOTFS_BSP sudo mount -o loop $IMAGE $ROOTFS tar cf - -C $ROOTFS_BSP lib/{firmware,modules} | sudo tar xvf - -C $ROOTFS sudo umount $ROOTFS_BSP sudo debootstrap --arch=i386 --foreign $SID $ROOTFS sudo cp /etc/resolv.conf $ROOTFS/etc
second stage
HOME=/root sudo chroot $ROOTFS /bin/bash --login -i SID=jessie export LANG=C /debootstrap/debootstrap --second-stage cat <<EOT > /etc/apt/sources.list deb http://ftp.uk.debian.org/debian $SID main contrib non-free deb-src http://ftp.uk.debian.org/debian $SID main contrib non-free deb http://ftp.uk.debian.org/debian $SID-updates main contrib non-free deb-src http://ftp.uk.debian.org/debian $SID-updates main contrib non-free deb http://security.debian.org/debian-security $SID/updates main contrib non-free deb-src http://security.debian.org/debian-security $SID/updates main contrib non-free EOT apt-get update apt-get install locales dialog dpkg-reconfigure locales dpkg-reconfigure tzdata apt-get install ntpdate sed -i "s/^root:[^:]\+:/root::/" /etc/shadow echo "quark" > /etc/hostname cat >> /etc/network/interfaces << EOT auto eth0 iface eth0 inet dhcp EOT sed -i "s/# \"\\\e\[1~\"/\"\\\e\[1~\"/" /etc/inputrc; \ sed -i "s/# \"\\\e\[4~\"/\"\\\e\[4~\"/" /etc/inputrc; \ sed -i "s/# \"\\\e\[3~\"/\"\\\e\[3~\"/" /etc/inputrc; \ sed -i "s/# \"\\\e\[5~\"\: history/\"\\\e\[A\": history/" /etc/inputrc; \ sed -i "s/# \"\\\e\[6~\"\: history/\"\\\e\[B\": history/" /etc/inputrc sed -i '/^# .*dircolors/s/^# //; /^# .*LS_OPTIONS/s/^# //;' /root/.bashrc sed -i "s/\xf0\x0f\xb1\x8b/\x90\x0f\xb1\x8b/g" /lib/i386-linux-gnu/libpthread-2.19.so sed -i '/\[Service\]/a Environment="TERM=xterm"' "/lib/systemd/system/serial-getty@.service" logout
post-config
sudo rm $ROOTFS/etc/resolv.conf sudo umount $ROOTFS