Optimize dataset promotion in BEADM ACTIVATE command.
This commit is contained in:
parent
d111b1452d
commit
f141d11080
9
beadm
9
beadm
|
|
@ -418,16 +418,19 @@ EOF
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
# execute ZFS LIST only once
|
||||||
|
ZFS_LIST=$( zfs list -H -o name -r ${POOL}/ROOT )
|
||||||
# disable automatic mount on all inactive boot environments
|
# disable automatic mount on all inactive boot environments
|
||||||
zfs list -H -o name -r ${POOL}/ROOT \
|
echo "${ZFS_LIST}" \
|
||||||
| grep -v "^${POOL}/ROOT/${2}" \
|
| grep -v "^${POOL}/ROOT/${2}" \
|
||||||
| while read NAME
|
| while read NAME
|
||||||
do
|
do
|
||||||
zfs set canmount=noauto ${NAME}
|
zfs set canmount=noauto ${NAME}
|
||||||
done
|
done
|
||||||
# enable automatic mount for active boot environment and promote it
|
# enable automatic mount for active boot environment and promote it
|
||||||
zfs list -H -o name,origin -r ${POOL}/ROOT/${2} \
|
echo "${ZFS_LIST}" \
|
||||||
| while read NAME ORIGIN
|
| grep "^${POOL}/ROOT/${2}" \
|
||||||
|
| while read NAME
|
||||||
do
|
do
|
||||||
zfs set canmount=on ${NAME}
|
zfs set canmount=on ${NAME}
|
||||||
while __be_clone ${NAME}
|
while __be_clone ${NAME}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue