summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam Thursfield <sam.thursfield@codethink.co.uk>2014-06-10 16:25:04 (GMT)
committerSam Thursfield <sam.thursfield@codethink.co.uk>2014-06-11 16:33:42 (GMT)
commit525ba822dcbaf125e30a58cd0af5747d660ff3fa (patch)
tree8dce61de615479d0c6bc693a339cab38370bf7a3
parent0fbcc80442b42b7a785e4cbb1fabea044094441f (diff)
downloadbaserock-chroot-525ba822dcbaf125e30a58cd0af5747d660ff3fa.tar.gz
Load btrfs kernel module when entering chroot
Otherwise, weird errors occur when deploying to rawdisk: Error creating disk image2014-06-10 16:00:40 [devel-system-x86_64-generic][my-raw-disk-image][rawdisk.write]Failure to create disk image at /src/tmp/testdev.img ERROR: Command failed: mount -o loop /src/tmp/testdev.img /src/tmp/deployments/tmpQ7wXO1/tmp4lVDcu/tmpvHSzDE mount: mounting /dev/loop0 on /src/tmp/deployments/tmpQ7wXO1/tmp4lVDcu/tmpvHSzDE failed: Device or resource busy
-rwxr-xr-xenter-baserock8
1 files changed, 8 insertions, 0 deletions
diff --git a/enter-baserock b/enter-baserock
index 4ce2b52..b4b73ff 100755
--- a/enter-baserock
+++ b/enter-baserock
@@ -39,6 +39,14 @@ fi
cd /
+if ! grep -q btrfs /proc/filesystems; then
+ echo "No btrfs support detected in kernel, attempting to load btrfs module"
+ if ! sudo -p "Password (to run 'modprobe -v btrfs'): " modprobe -v btrfs; then
+ echo "Loading module failed, looks like your kernel doesn't support Btrfs."
+ echo "Deploying systems to Btrfs disk images will not work correctly."
+ fi
+fi
+
if test "x$SSH_AUTH_SOCK" != "x"; then
echo "Forwarding SSH agent into chroot"
TDIR=$(mktemp --tmpdir=/tmp -d)