diff options
author | Helmut Grohne <helmut@subdivi.de> | 2023-01-15 20:56:50 +0100 |
---|---|---|
committer | Helmut Grohne <helmut@subdivi.de> | 2023-01-15 20:56:50 +0100 |
commit | f9d8f3551a47535c1e30afb28c42c8d6034ba59b (patch) | |
tree | 27a4acdf36fab26d2575170534f782fbbbd98fa6 /bin | |
parent | f48cc92c8c187b92e8072a10a256695879e3bd43 (diff) | |
download | debvm-f9d8f3551a47535c1e30afb28c42c8d6034ba59b.tar.gz |
debvm-run: fix for relative symlinks below boot/
Reported-by: Jochen Sprickerhof <git@jochen.sprickerhof.de>
Diffstat (limited to 'bin')
-rwxr-xr-x | bin/debvm-run | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/bin/debvm-run b/bin/debvm-run index 39928d2..ee94003 100755 --- a/bin/debvm-run +++ b/bin/debvm-run @@ -191,16 +191,17 @@ for KERNELLINK in vmlinuz vmlinux boot/vmlinuz boot/vmlinux; do KERNELNAME=$(/sbin/debugfs "$IMAGE" -R "stat $KERNELLINK" | sed 's/Fast link dest: "\(.*\)"/\1/;t;d') test -n "$KERNELNAME" && break done -test -n "$KERNELNAME" || die "failed to discover kernel image" - -if test "${KERNELLINK#boot/}" = "$KERNELLINK"; then - INITRDLINK=initrd.img +if test "${KERNELLINK%/*}" = "$KERNELLINK"; then + BOOTDIR= else - INITRDLINK=boot/initrd.img + BOOTDIR="${KERNELLINK%/*}/" fi -INITRDNAME=$(/sbin/debugfs "$IMAGE" -R "stat $INITRDLINK" | sed 's/Fast link dest: "\(.*\)"/\1/;t;d') +test -n "$KERNELNAME" || die "failed to discover kernel image" +test "${KERNELNAME#/}" = "$KERNELNAME" || KERNELNAME="$BOOTDIR$KERNELNAME" +INITRDNAME=$(/sbin/debugfs "$IMAGE" -R "stat ${BOOTDIR}initrd.img" | sed 's/Fast link dest: "\(.*\)"/\1/;t;d') test -n "$INITRDNAME" || die "failed to discover initrd image" +test "${INITRDNAME#/}" = "$INITRDNAME" || INITRDNAME="$BOOTDIR$INITRDNAME" KERNEL_CMDLINE="root=LABEL=debvm rw" NETDEV="user,id=net0" |