fix: Fallback to truncate if allocate fails
This commit is contained in:
parent
8c775a351d
commit
a758e59d46
1 changed files with 14 additions and 5 deletions
17
run/disk.sh
17
run/disk.sh
|
@ -26,7 +26,9 @@ if [ -f "${DATA}" ]; then
|
|||
if [[ "${ALLOCATE}" == [Nn]* ]]; then
|
||||
|
||||
# Resize file by changing its length
|
||||
truncate -s "${DATA_SIZE}" "${DATA}";
|
||||
if ! truncate -s "${DATA_SIZE}" "${DATA}"; then
|
||||
error "Could not resize the file for the data disk." && exit 85
|
||||
fi
|
||||
|
||||
else
|
||||
|
||||
|
@ -42,7 +44,9 @@ if [ -f "${DATA}" ]; then
|
|||
|
||||
# Resize file by allocating more space
|
||||
if ! fallocate -l "${DATA_SIZE}" "${DATA}"; then
|
||||
error "Could not allocate a file for the data disk." && exit 85
|
||||
if ! truncate -s "${DATA_SIZE}" "${DATA}"; then
|
||||
error "Could not resize the file for the data disk." && exit 85
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ "${ALLOCATE}" == [Zz]* ]]; then
|
||||
|
@ -71,7 +75,10 @@ if [ ! -f "${DATA}" ]; then
|
|||
if [[ "${ALLOCATE}" == [Nn]* ]]; then
|
||||
|
||||
# Create an empty file
|
||||
truncate -s "${DATA_SIZE}" "${DATA}"
|
||||
if ! truncate -s "${DATA_SIZE}" "${DATA}"; then
|
||||
rm -f "${DATA}"
|
||||
error "Could not create a file for the data disk." && exit 87
|
||||
fi
|
||||
|
||||
else
|
||||
|
||||
|
@ -85,8 +92,10 @@ if [ ! -f "${DATA}" ]; then
|
|||
|
||||
# Create an empty file
|
||||
if ! fallocate -l "${DATA_SIZE}" "${DATA}"; then
|
||||
if ! truncate -s "${DATA_SIZE}" "${DATA}"; then
|
||||
rm -f "${DATA}"
|
||||
error "Could not allocate a file for the data disk." && exit 87
|
||||
error "Could not create a file for the data disk." && exit 87
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ "${ALLOCATE}" == [Zz]* ]]; then
|
||||
|
|
Loading…
Reference in a new issue