mirror of
https://github.com/vdsm/virtual-dsm.git
synced 2025-02-24 13:30:02 +08:00
feat: Add flag to disable RAM check (#740)
This commit is contained in:
parent
b588f8c90d
commit
729aed536e
@ -14,16 +14,20 @@ ARGS=$(echo "$ARGS" | sed 's/\t/ /g' | tr -s ' ')
|
|||||||
|
|
||||||
# Check available memory as the very last step
|
# Check available memory as the very last step
|
||||||
|
|
||||||
RAM_AVAIL=$(free -b | grep -m 1 Mem: | awk '{print $7}')
|
if [[ "$RAM_CHECK" != [Nn]* ]]; then
|
||||||
AVAIL_GB=$(( (RAM_AVAIL + 1073741823)/1073741824 ))
|
|
||||||
|
|
||||||
if (( (RAM_WANTED + 500000000) > RAM_AVAIL )); then
|
RAM_AVAIL=$(free -b | grep -m 1 Mem: | awk '{print $7}')
|
||||||
error "Your configured RAM_SIZE of $WANTED_GB GB is higher than the $AVAIL_GB GB of memory available, please set a lower value."
|
AVAIL_GB=$(( RAM_AVAIL/1073741824 ))
|
||||||
|
|
||||||
|
if (( (RAM_WANTED + RAM_SPARE) > RAM_AVAIL )); then
|
||||||
|
error "Your configured RAM_SIZE of $WANTED_GB GB is too high for the $AVAIL_GB GB of memory available, please set a lower value."
|
||||||
exit 17
|
exit 17
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if (( (RAM_WANTED + 1450000000) > RAM_AVAIL )); then
|
if (( (RAM_WANTED + (RAM_SPARE * 3)) > RAM_AVAIL )); then
|
||||||
warn "your configured RAM_SIZE of $WANTED_GB GB is much too close to the $AVAIL_GB GB of memory available, please set a lower value."
|
warn "your configured RAM_SIZE of $WANTED_GB GB is very close to the $AVAIL_GB GB of memory available, please consider a lower value."
|
||||||
|
fi
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
return 0
|
return 0
|
||||||
|
10
src/reset.sh
10
src/reset.sh
@ -23,6 +23,7 @@ echo "❯ For support visit $SUPPORT"
|
|||||||
: "${ARGUMENTS:=""}" # Extra QEMU parameters
|
: "${ARGUMENTS:=""}" # Extra QEMU parameters
|
||||||
: "${CPU_CORES:="1"}" # Amount of CPU cores
|
: "${CPU_CORES:="1"}" # Amount of CPU cores
|
||||||
: "${RAM_SIZE:="1G"}" # Maximum RAM amount
|
: "${RAM_SIZE:="1G"}" # Maximum RAM amount
|
||||||
|
: "${RAM_CHECK:="Y"}" # Check available RAM
|
||||||
: "${DISK_SIZE:="16G"}" # Initial data disk size
|
: "${DISK_SIZE:="16G"}" # Initial data disk size
|
||||||
|
|
||||||
# Helper variables
|
# Helper variables
|
||||||
@ -67,11 +68,12 @@ if [[ "${FS,,}" == "ecryptfs" ]] || [[ "${FS,,}" == "tmpfs" ]]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# Read memory
|
# Read memory
|
||||||
|
RAM_SPARE=500000000
|
||||||
RAM_AVAIL=$(free -b | grep -m 1 Mem: | awk '{print $7}')
|
RAM_AVAIL=$(free -b | grep -m 1 Mem: | awk '{print $7}')
|
||||||
RAM_TOTAL=$(free -b | grep -m 1 Mem: | awk '{print $2}')
|
RAM_TOTAL=$(free -b | grep -m 1 Mem: | awk '{print $2}')
|
||||||
RAM_SIZE=$(echo "${RAM_SIZE^^}" | sed 's/MB/M/g;s/GB/G/g;s/TB/T/g')
|
RAM_SIZE=$(echo "${RAM_SIZE^^}" | sed 's/MB/M/g;s/GB/G/g;s/TB/T/g')
|
||||||
RAM_WANTED=$(numfmt --from=iec "$RAM_SIZE")
|
RAM_WANTED=$(numfmt --from=iec "$RAM_SIZE")
|
||||||
AVAIL_GB=$(( (RAM_AVAIL + 1073741823)/1073741824 ))
|
AVAIL_GB=$(( RAM_AVAIL/1073741824 ))
|
||||||
TOTAL_GB=$(( (RAM_TOTAL + 1073741823)/1073741824 ))
|
TOTAL_GB=$(( (RAM_TOTAL + 1073741823)/1073741824 ))
|
||||||
WANTED_GB=$(( (RAM_WANTED + 1073741823)/1073741824 ))
|
WANTED_GB=$(( (RAM_WANTED + 1073741823)/1073741824 ))
|
||||||
|
|
||||||
@ -86,10 +88,12 @@ echo
|
|||||||
|
|
||||||
# Check memory
|
# Check memory
|
||||||
|
|
||||||
if (( (RAM_WANTED + 500000000) > RAM_AVAIL )); then
|
if [[ "$RAM_CHECK" != [Nn]* ]]; then
|
||||||
error "Your configured RAM_SIZE of $WANTED_GB GB is higher than the $AVAIL_GB GB of memory available, please set a lower value."
|
if (( (RAM_WANTED + RAM_SPARE) > RAM_AVAIL )); then
|
||||||
|
error "Your configured RAM_SIZE of $WANTED_GB GB is too high for the $AVAIL_GB GB of memory available, please set a lower value."
|
||||||
exit 17
|
exit 17
|
||||||
fi
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
# Cleanup files
|
# Cleanup files
|
||||||
rm -f /run/shm/qemu.*
|
rm -f /run/shm/qemu.*
|
||||||
|
Loading…
x
Reference in New Issue
Block a user