]> git.ipfire.org Git - thirdparty/dracut.git/commitdiff
dracut-functions:inst_symlink() create target dir
authorHarald Hoyer <harald@redhat.com>
Thu, 28 Oct 2010 11:35:17 +0000 (13:35 +0200)
committerHarald Hoyer <harald@redhat.com>
Thu, 28 Oct 2010 15:11:34 +0000 (17:11 +0200)
if the target directory of the symlink didn't exist, we failed

dracut-functions

index 8a1f55fc8dfba7dcc4a7dd11fa5e05083159777c..7c41fe75817c4a3d3e4ccda5348edc8bac792442 100755 (executable)
@@ -379,7 +379,8 @@ inst_symlink() {
     [[ -L $target ]] && return 0
     realsrc=$(readlink -f "$src")
     [[ $realsrc = ${realsrc##*/} ]] && realsrc=${src%/*}/$realsrc
-    inst "$realsrc" && ln -s "$realsrc" "$target"
+    inst "$realsrc" && mkdir -p "${target%/*}" && \
+        ln -s "$realsrc" "$target"
 }
 
 # find a udev rule in the usual places.