Fix for Issue #1472 (loadup failure on btrfs): update how cpv scripts handles hardlink versus copy (#1497)
This commit is contained in:
13
scripts/cpv
13
scripts/cpv
@@ -3,13 +3,6 @@
|
||||
# cpv file dest
|
||||
# could extend with -r or copying multiple files
|
||||
|
||||
ln_or_cp () {
|
||||
f=$(df $(dirname $1) | tail -1 | awk '{ print $1 }')
|
||||
d=$(df $(dirname $2) | tail -1 | awk '{ print $1 }')
|
||||
if [ "$f" != "$d" ]; then cmd="cp -p"; else cmd="ln"; fi
|
||||
echo $cmd
|
||||
}
|
||||
|
||||
file="$1"
|
||||
dest="$2"
|
||||
|
||||
@@ -64,8 +57,12 @@ else
|
||||
fi
|
||||
|
||||
# make new version and link it
|
||||
ln $file $dest.~$new~ >/dev/null 2>&1
|
||||
if [ $? -ne 0 ]
|
||||
then
|
||||
cp -p $file $dest.~$new~
|
||||
fi
|
||||
|
||||
$(ln_or_cp $file $dest.~new~) $file $dest.~$new~
|
||||
echo "Added $(basename $dest.~$new~) to $(dirname $dest.~$new~)"
|
||||
rm -f $dest
|
||||
ln $dest.~$new~ $dest
|
||||
|
||||
Reference in New Issue
Block a user