aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHarald Hoyer <harald@redhat.com>2021-05-12 15:13:52 +0200
committerHarald Hoyer <harald@hoyer.xyz>2021-05-14 08:34:48 +0200
commit66b920c65143f4cac80385a51704ae9483305569 (patch)
tree4da396e5c67aba806673c59cdbfc1adda6d5c78c
parent8b2afb08baea7fc6e15ece94e287dcc4a008bcc4 (diff)
downloaddracut-66b920c65143f4cac80385a51704ae9483305569.tar.gz
fix(iscsi): replace sed call with bash internals
This removes a fork/exec and additionally gives more information in debug logs.
-rwxr-xr-xmodules.d/95iscsi/iscsiroot.sh6
1 files changed, 5 insertions, 1 deletions
diff --git a/modules.d/95iscsi/iscsiroot.sh b/modules.d/95iscsi/iscsiroot.sh
index 63acd858..1a644650 100755
--- a/modules.d/95iscsi/iscsiroot.sh
+++ b/modules.d/95iscsi/iscsiroot.sh
@@ -214,7 +214,11 @@ handle_netroot() {
if strglobin "$iscsi_target_ip" '*:*:*' && ! strglobin "$iscsi_target_ip" '['; then
iscsi_target_ip="[$iscsi_target_ip]"
fi
- targets=$(iscsiadm -m discovery -t st -p "$iscsi_target_ip":${iscsi_target_port:+$iscsi_target_port} | sed 's/^.*iqn/iqn/')
+ targets=$(iscsiadm -m discovery -t st -p "$iscsi_target_ip":${iscsi_target_port:+$iscsi_target_port} | {
+ while read -r _ target _ || [ -n "$target" ]; do
+ echo "$target"
+ done
+ })
[ -z "$targets" ] && echo "Target discovery to $iscsi_target_ip:${iscsi_target_port:+$iscsi_target_port} failed with status $?" && exit 1
found=