mirror of
				https://github.com/vdsm/virtual-dsm.git
				synced 2025-11-04 17:04:52 +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 + (RAM_SPARE * 3)) > RAM_AVAIL )); then
 | 
				
			||||||
 | 
					    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
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if (( (RAM_WANTED + 1450000000) > 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."
 | 
					 | 
				
			||||||
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,9 +88,11 @@ 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
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user