summaryrefslogtreecommitdiff
path: root/parabolaiso/initcpio/hooks/parabolaiso_pxe_nbd
diff options
context:
space:
mode:
authorDavid P <megver83@parabola.nu>2018-05-16 21:08:49 -0400
committerDavid P <megver83@parabola.nu>2018-05-16 21:27:46 -0400
commit765756ae126d57735c22d59a7c1242f01443921e (patch)
treec5d5f3e7979f5a0098e7294d1e8dbae3aa71c562 /parabolaiso/initcpio/hooks/parabolaiso_pxe_nbd
parentff5f93347993bfdb6c58746baee006dbad7a3dd8 (diff)
modify entire source according to archiso32
and remove unused configs/talkingparabola-X11 Signed-off-by: David P <megver83@parabola.nu>
Diffstat (limited to 'parabolaiso/initcpio/hooks/parabolaiso_pxe_nbd')
-rw-r--r--parabolaiso/initcpio/hooks/parabolaiso_pxe_nbd21
1 files changed, 14 insertions, 7 deletions
diff --git a/parabolaiso/initcpio/hooks/parabolaiso_pxe_nbd b/parabolaiso/initcpio/hooks/parabolaiso_pxe_nbd
index 1bb8cbb..1991f80 100644
--- a/parabolaiso/initcpio/hooks/parabolaiso_pxe_nbd
+++ b/parabolaiso/initcpio/hooks/parabolaiso_pxe_nbd
@@ -1,5 +1,12 @@
# vim: set ft=sh:
+run_earlyhook() {
+ if [[ -n "${ip}" && -n "${parabolaiso_nbd_srv}" ]]; then
+ # Module autoloading like with loop devices does not work, doing manually...
+ modprobe nbd 2> /dev/null
+ fi
+}
+
run_hook() {
if [[ -n "${ip}" && -n "${parabolaiso_nbd_srv}" ]]; then
@@ -13,9 +20,6 @@ run_hook() {
parabolaiso_pxe_nbd_mount_handler () {
newroot="${1}"
- # Module autoloading like with loop devices does not work, doing manually...
- modprobe nbd 2> /dev/null
-
msg ":: Waiting for boot device..."
while ! poll_device /dev/nbd0 30; do
echo "ERROR: boot device didn't show up after 30 seconds..."
@@ -25,16 +29,19 @@ parabolaiso_pxe_nbd_mount_handler () {
done
msg ":: Setup NBD from ${parabolaiso_nbd_srv} at /dev/nbd0"
- nbd-client ${parabolaiso_nbd_srv} -N ${parabolaiso_nbd_name} /dev/nbd0
-
if [[ "${copytoram}" != "n" ]]; then
+ nbd-client ${parabolaiso_nbd_srv} -N ${parabolaiso_nbd_name} /dev/nbd0
copytoram="y"
+ else
+ nbd-client ${parabolaiso_nbd_srv} -N ${parabolaiso_nbd_name} -systemd-mark -persist /dev/nbd0
fi
parabolaisodevice=/dev/nbd0
parabolaiso_mount_handler ${newroot}
- msg ":: Disconnect NBD from ${parabolaiso_nbd_srv} at /dev/nbd0"
- nbd-client -d /dev/nbd0
+ if [[ "${copytoram}" == "y" ]]; then
+ msg ":: Disconnect NBD from ${parabolaiso_nbd_srv} at /dev/nbd0"
+ nbd-client -d /dev/nbd0
+ fi
}