summaryrefslogtreecommitdiffstats
path: root/builder/dnbd3-rootfs/module-setup.sh
diff options
context:
space:
mode:
authorjandob2016-01-21 15:29:05 +0100
committerjandob2016-01-21 15:29:05 +0100
commitad9d66426c3a00c81da5ab76ba6269948d6609d0 (patch)
treec22fe002d7f590fe957f6d3f12096733a8df0d90 /builder/dnbd3-rootfs/module-setup.sh
parentdebugging (diff)
downloadsystemd-init-ad9d66426c3a00c81da5ab76ba6269948d6609d0.tar.gz
systemd-init-ad9d66426c3a00c81da5ab76ba6269948d6609d0.tar.xz
systemd-init-ad9d66426c3a00c81da5ab76ba6269948d6609d0.zip
add xmount; refactor
Diffstat (limited to 'builder/dnbd3-rootfs/module-setup.sh')
-rwxr-xr-xbuilder/dnbd3-rootfs/module-setup.sh33
1 files changed, 12 insertions, 21 deletions
diff --git a/builder/dnbd3-rootfs/module-setup.sh b/builder/dnbd3-rootfs/module-setup.sh
index b4355012..8b16e71a 100755
--- a/builder/dnbd3-rootfs/module-setup.sh
+++ b/builder/dnbd3-rootfs/module-setup.sh
@@ -44,9 +44,6 @@ check() {
build_compile_systemd_preserve_process_marker \
"$moddir/binaries/systemd-preserve-process-marker/"
fi
- if [[ ! -f "$moddir/binaries/qemu/qemu-nbd" ]]; then
- build_compile_qemu_nbd "$moddir/binaries/qemu/"
- fi
# NOTE: This are workarounds for:
# - distributions where "systemd-udevd" doesn't lives in "/usr/lib" but in
@@ -107,8 +104,10 @@ install() {
inst "$moddir/binaries/dnbd3/build/dnbd3-client" /usr/bin/dnbd3-client
inst "$moddir/binaries/systemd-preserve-process-marker/systemd-preserve-process-marker" \
/usr/bin/systemd-preserve-process-marker
- # TODO: static linked qemu-nbd still needed?
- inst "$moddir/binaries/qemu/qemu-nbd" /usr/bin/qemu-nbd
+ inst "$moddir/scripts/device-add-write-layer.sh" \
+ /usr/bin/device-add-write-layer
+ inst "$moddir/scripts/container-unpack-xmount.sh" \
+ /usr/bin/container-unpack-xmount
# endregion
@@ -118,25 +117,15 @@ install() {
inst_hook cmdline 10 "$moddir/hooks/prepare-kernel-command-line-parameter.sh"
inst_hook cmdline 90 "$moddir/hooks/set-dracut-environment-variables.sh"
- # load nbd.ko, dnbd3.ko
+ # load dnbd3.ko
inst_hook pre-udev 00 "$moddir/hooks/load-custom-kernel-modules.sh"
if dracut_module_included "systemd-initrd"; then
inst "$moddir/hooks/prepare-root-partition.sh" \
- /sbin/dnbd3root
+ /usr/bin/dnbd3root
inst "$moddir/hooks/fetch-config.sh" \
- /sbin/fetch-config
-
- #region generator approach
- ## TODO analyze qemu-nbd pivot-root bug!
- #inst_script "$moddir/services/dnbd3-generator.sh" \
- #$systemdutildir/system-generators/dnbd3-generator
- ## copy generator to new root to prevent stopping of the service after
- ## switch_root
- #inst_hook pre-pivot 95 "$moddir/hooks/copy-dnbd3-generator-into-newroot.sh"
- #endregion
-
- #region service approach
+ /usr/bin/fetch-config
+
inst_simple "${moddir}/services/dnbd3root.service" \
"${systemdsystemunitdir}/dnbd3root.service"
# don't kill at switch_root
@@ -144,7 +133,6 @@ install() {
ln_r "${systemdsystemunitdir}/dnbd3root.service" \
"${systemdsystemunitdir}/initrd-root-fs.target.wants/dnbd3root.service"
inst_hook pre-pivot 95 "$moddir/hooks/copy-dnbd3-generator-into-newroot.sh"
- #endregion
else
# get the openslx config from the servers configured in the kernel command
# line (${SLX_SERVER}/${SLX_SERVER_BASE}/config)
@@ -194,7 +182,10 @@ install() {
mount fdisk mkfs.xfs env busybox ps agetty tree \
insmod blockdev partx dmsetup sed cut awk tr insmod \
blockdev partx dmsetup cat cut awk losetup dd mkfs.ext4 grep \
- basename dirname sort mktemp diff qemu-img genfstab mountpoint
+ basename dirname sort mktemp diff qemu-img genfstab mountpoint xmount
+ for file in "/usr/local/lib/xmount/*"; do
+ inst_simple $file
+ done
# Production:
# inst_multiple insmod blockdev partx dmsetup sed cat cut awk tr touch \
# losetup grep basename dirname mktemp diff sleep wget mount sort \