<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.openvz.org/index.php?action=history&amp;feed=atom&amp;title=User%3AKako%2Fcheck_vpsconf_ressources.sh</id>
	<title>User:Kako/check vpsconf ressources.sh - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.openvz.org/index.php?action=history&amp;feed=atom&amp;title=User%3AKako%2Fcheck_vpsconf_ressources.sh"/>
	<link rel="alternate" type="text/html" href="https://wiki.openvz.org/index.php?title=User:Kako/check_vpsconf_ressources.sh&amp;action=history"/>
	<updated>2026-06-14T03:15:42Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.31.1</generator>
	<entry>
		<id>https://wiki.openvz.org/index.php?title=User:Kako/check_vpsconf_ressources.sh&amp;diff=7472&amp;oldid=prev</id>
		<title>Kako: checking now mem by using vzmemcheck</title>
		<link rel="alternate" type="text/html" href="https://wiki.openvz.org/index.php?title=User:Kako/check_vpsconf_ressources.sh&amp;diff=7472&amp;oldid=prev"/>
		<updated>2009-08-12T14:06:33Z</updated>

		<summary type="html">&lt;p&gt;checking now mem by using vzmemcheck&lt;/p&gt;
&lt;a href=&quot;https://wiki.openvz.org/index.php?title=User:Kako/check_vpsconf_ressources.sh&amp;amp;diff=7472&amp;amp;oldid=7470&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Kako</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.openvz.org/index.php?title=User:Kako/check_vpsconf_ressources.sh&amp;diff=7470&amp;oldid=prev</id>
		<title>Kako: First Version: $Id: check_vpsconf_ressources.sh,v 1.1 2009/08/12 10:54:49 thomas_c Exp $</title>
		<link rel="alternate" type="text/html" href="https://wiki.openvz.org/index.php?title=User:Kako/check_vpsconf_ressources.sh&amp;diff=7470&amp;oldid=prev"/>
		<updated>2009-08-12T11:02:54Z</updated>

		<summary type="html">&lt;p&gt;First Version: $Id: check_vpsconf_ressources.sh,v 1.1 2009/08/12 10:54:49 thomas_c Exp $&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
#&lt;br /&gt;
# This script should check all formulas writen down in &lt;br /&gt;
# http://wiki.openvz.org/UBC_systemwide_configuration&lt;br /&gt;
# The result is &lt;br /&gt;
# - human-readble&lt;br /&gt;
# - machine-readable (result-code)&lt;br /&gt;
#&lt;br /&gt;
# Conding infos:&lt;br /&gt;
# On the wiki-pages of openvz &amp;quot;soft limit/barier&amp;quot; and &amp;quot;hard limit/limit&amp;quot; are used often as sinonyms.&lt;br /&gt;
#   I used &amp;quot;soft&amp;quot; for &amp;quot;barier&amp;quot; and &amp;quot;hard&amp;quot; for &amp;quot;limit&amp;quot;&lt;br /&gt;
# Variable names are defined in dependence of their units &lt;br /&gt;
#   *_b =&amp;gt; bytes&lt;br /&gt;
#   *_kb =&amp;gt; kilobytes&lt;br /&gt;
#   *_mb =&amp;gt; megabytes&lt;br /&gt;
# Calculation is done with KB, but displayed are MB, because the numbers are smallers&lt;br /&gt;
#&lt;br /&gt;
# @author	Claudio Thomas, 2009&lt;br /&gt;
# @version	$Id: check_vpsconf_ressources.sh,v 1.1 2009/08/12 10:54:49 thomas_c Exp $&lt;br /&gt;
# @license	LGPL&lt;br /&gt;
# @see		http://wiki.openvz.org/UBC_systemwide_configuration&lt;br /&gt;
# @uses		egrep, grep, expr, bc, df, tr, cut (in other words, it should run on every linux server :-)&lt;br /&gt;
# @return 	0 - all OK, 1 - at least one warning&lt;br /&gt;
# ------------------------------------------------------------------&lt;br /&gt;
# Project/User specific values&lt;br /&gt;
VZVPS_PATH='/vz';			# Directory where die VPS files are hold (to find out amount of free disk space)&lt;br /&gt;
&lt;br /&gt;
# OpenVZ Values&lt;br /&gt;
VZCONF_PATH='/etc/vz/conf';	# Directory where the VPS-configurations can be found&lt;br /&gt;
MAX_VAL='2147483647';		# Maximal/highest number in /proc/user_beancounters&lt;br /&gt;
&lt;br /&gt;
# internal vars&lt;br /&gt;
w=0;&lt;br /&gt;
# ------------------------------------------------------------------&lt;br /&gt;
# Functions&lt;br /&gt;
# ------------------------------------------------------------------&lt;br /&gt;
function ok() {&lt;br /&gt;
	echo &amp;quot;\033[0;32mOK $1\033[0m&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
function warn() {&lt;br /&gt;
	echo &amp;quot;\033[1;33mWARN $1\033[0m&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
function err() {&lt;br /&gt;
	echo &amp;quot;\033[0;31mERR $1\033[0m&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
function incWarnings() {&lt;br /&gt;
	w=`expr $w + 1`;&lt;br /&gt;
}&lt;br /&gt;
function checkDisk() {&lt;br /&gt;
	# DISKSPACE&lt;br /&gt;
	diskspaces=`egrep ^DISKSPACE $VZCONF_PATH/*.conf | cut -d '&amp;quot;' -f 2`&lt;br /&gt;
	diskspace_real=`df -k $VZVPS_PATH | grep $VZVPS_PATH | tr -s &amp;quot; &amp;quot; |cut -d ' ' -f 2`&lt;br /&gt;
	sum_soft=0;&lt;br /&gt;
	sum_hard=0;&lt;br /&gt;
	for limit in $diskspaces; do&lt;br /&gt;
		soft=`echo $limit | cut -d ':' -f 1`;&lt;br /&gt;
		hard=`echo $limit | cut -d ':' -f 2`;&lt;br /&gt;
		sum_soft=`expr $sum_soft + $soft`;&lt;br /&gt;
		sum_hard=`expr $sum_hard + $hard`;&lt;br /&gt;
	done;&lt;br /&gt;
	echo -n &amp;quot;DISKPACE:  &amp;quot;; # Angabe in KBytes&lt;br /&gt;
	echo -en &amp;quot;\tSOFT: `expr $sum_soft / 1024` MB&amp;quot;;&lt;br /&gt;
	echo -en &amp;quot;\tHARD: `expr $sum_hard / 1024` MB&amp;quot;;&lt;br /&gt;
	echo -en &amp;quot;\tMAX : `expr $diskspace_real / 1024` MB&amp;quot;;&lt;br /&gt;
	if [ &amp;quot;$sum_hard&amp;quot; -lt &amp;quot;$diskspace_real&amp;quot; ]; then echo -e &amp;quot;\t-- `ok`&amp;quot;; else echo -e &amp;quot;\t-- `warn '!!!'`&amp;quot;; incWarnings; fi &lt;br /&gt;
	&lt;br /&gt;
	# DISKINODES&lt;br /&gt;
	diskinodes=`egrep ^DISKINODES $VZCONF_PATH/*.conf | cut -d '&amp;quot;' -f 2`&lt;br /&gt;
	diskinode_real=`df -ki $VZVPS_PATH | grep $VZVPS_PATH | tr -s &amp;quot; &amp;quot; |cut -d ' ' -f 2`&lt;br /&gt;
	sum_soft=0;&lt;br /&gt;
	sum_hard=0;&lt;br /&gt;
	for limit in $diskinodes; do&lt;br /&gt;
		soft=`echo $limit | cut -d ':' -f 1`;&lt;br /&gt;
		hard=`echo $limit | cut -d ':' -f 2`;&lt;br /&gt;
		sum_soft=`expr $sum_soft + $soft`;&lt;br /&gt;
		sum_hard=`expr $sum_hard + $hard`;&lt;br /&gt;
	done;&lt;br /&gt;
	echo -n &amp;quot;DISKINODES: &amp;quot;; # Angabe in KBytes&lt;br /&gt;
	echo -en &amp;quot;\tSOFT: `expr $sum_soft / 1024` MB&amp;quot;;&lt;br /&gt;
	echo -en &amp;quot;\tHARD: `expr $sum_hard / 1024` MB&amp;quot;;&lt;br /&gt;
	echo -en &amp;quot;\tMAX : `expr $diskinode_real / 1024` MB&amp;quot;;&lt;br /&gt;
	if [ &amp;quot;$sum_hard&amp;quot; -lt &amp;quot;$diskinode_real&amp;quot; ]; then echo -e &amp;quot;\t-- `ok`&amp;quot;; else echo -e &amp;quot;\t-- `warn '!!!'`&amp;quot;; incWarnings; fi &lt;br /&gt;
}&lt;br /&gt;
function checkMem() {&lt;br /&gt;
	mem_real_kb=`cat /proc/meminfo | grep 'MemTotal' | tr -s ' ' | cut -d ' ' -f 2`&lt;br /&gt;
	lowmem_real_kb=`cat /proc/meminfo | grep 'LowTotal' | tr -s ' ' | cut -d ' ' -f 2`&lt;br /&gt;
	mem_real_mb=`expr $mem_real_kb / 1024` &lt;br /&gt;
	lowmem_real_mb=`expr $lowmem_real_kb / 1024`&lt;br /&gt;
	 &lt;br /&gt;
	echo -e &amp;quot;TOTAL MEM:\t$mem_real_mb MB&amp;quot;;&lt;br /&gt;
	#------------------&lt;br /&gt;
	# ---- LOW RAM ----&lt;br /&gt;
	# @see: http://wiki.openvz.org/UBC_systemwide_configuration#.E2.80.9CLow_memory.E2.80.9D&lt;br /&gt;
	RAM_kb=`echo &amp;quot;scale=4;0.4 * $lowmem_real_kb&amp;quot; | bc` &lt;br /&gt;
	RAM_mb=`echo &amp;quot;scale=4;$RAM_kb / 1024&amp;quot; | bc` &lt;br /&gt;
	echo -e &amp;quot;LOW MEM:\t$lowmem_real_mb MB (40% -&amp;gt; $RAM_mb MB)&amp;quot;;&lt;br /&gt;
	&lt;br /&gt;
	# ALLSOCKETBUF LIMIT = tcprcvbuf+tcpsndbuf+dgramrcvbuf+othersockbuf&lt;br /&gt;
	tcprcvbuf_b=`egrep ^TCPRCVBUF $VZCONF_PATH/*.conf | cut -d '&amp;quot;' -f 2`&lt;br /&gt;
	tcpsndbuf_b=`egrep ^TCPSNDBUF $VZCONF_PATH/*.conf | cut -d '&amp;quot;' -f 2`&lt;br /&gt;
	dgramrcvbuf_b=`egrep ^DGRAMRCVBUF $VZCONF_PATH/*.conf | cut -d '&amp;quot;' -f 2`&lt;br /&gt;
	othersockbuf_b=`egrep ^OTHERSOCKBUF $VZCONF_PATH/*.conf | cut -d '&amp;quot;' -f 2`&lt;br /&gt;
	sum_soft_b=0;&lt;br /&gt;
	sum_hard_b=0;&lt;br /&gt;
	for limit in $tcprcvbuf_b; do &lt;br /&gt;
		soft_b=`echo $limit | cut -d ':' -f 1`;&lt;br /&gt;
		hard_b=`echo $limit | cut -d ':' -f 2`;&lt;br /&gt;
		sum_soft_b=`expr $sum_soft_b + $soft_b`;&lt;br /&gt;
		sum_hard_b=`expr $sum_hard_b + $hard_b`;&lt;br /&gt;
	done;&lt;br /&gt;
	for limit in $tcpsndbuf_b; do&lt;br /&gt;
		soft_b=`echo $limit | cut -d ':' -f 1`;&lt;br /&gt;
		hard_b=`echo $limit | cut -d ':' -f 2`;&lt;br /&gt;
		sum_soft_b=`expr $sum_soft_b + $soft_b`;&lt;br /&gt;
		sum_hard_b=`expr $sum_hard_b + $hard_b`;&lt;br /&gt;
	done;&lt;br /&gt;
	for limit in $dgramrcvbuf_b; do&lt;br /&gt;
		soft_b=`echo $limit | cut -d ':' -f 1`;&lt;br /&gt;
		hard_b=`echo $limit | cut -d ':' -f 2`;&lt;br /&gt;
		sum_soft_b=`expr $sum_soft_b + $soft_b`;&lt;br /&gt;
		sum_hard_b=`expr $sum_hard_b + $hard_b`;&lt;br /&gt;
	done;&lt;br /&gt;
	for limit in $othersockbuf_b; do&lt;br /&gt;
		soft_b=`echo $limit | cut -d ':' -f 1`;&lt;br /&gt;
		hard_b=`echo $limit | cut -d ':' -f 2`;&lt;br /&gt;
		sum_soft_b=`expr $sum_soft_b + $soft_b`;&lt;br /&gt;
		sum_hard_b=`expr $sum_hard_b + $hard_b`;&lt;br /&gt;
	done;	&lt;br /&gt;
	# ALLSOCKETBUF current = tcprcvbuf+tcpsndbuf+dgramrcvbuf+othersockbuf&lt;br /&gt;
	tcprcvbuf_b=`grep tcprcvbuf /proc/user_beancounters | grep -v $MAX_VAL | tr -s ' ' | cut -d ' ' -f 3`&lt;br /&gt;
	tcpsndbuf_b=`grep tcpsndbuf /proc/user_beancounters | grep -v $MAX_VAL | tr -s ' ' | cut -d ' ' -f 3`&lt;br /&gt;
	dgramrcvbuf_b=`grep dgramrcvbuf /proc/user_beancounters | grep -v $MAX_VAL | tr -s ' ' | cut -d ' ' -f 3`&lt;br /&gt;
	othersockbuf_b=`grep othersockbuf /proc/user_beancounters | grep -v $MAX_VAL | tr -s ' ' | cut -d ' ' -f 3`&lt;br /&gt;
	sum_cur_b=0;&lt;br /&gt;
	for current in $tcprcvbuf_b; do &lt;br /&gt;
		sum_cur_b=`expr $sum_cur_b + $current`;&lt;br /&gt;
	done;&lt;br /&gt;
	for current in $tcpsndbuf_b; do&lt;br /&gt;
		sum_cur_b=`expr $sum_cur_b + $current`;&lt;br /&gt;
	done;&lt;br /&gt;
	for current in $dgramrcvbuf_b; do&lt;br /&gt;
		sum_cur_b=`expr $sum_cur_b + $current`;&lt;br /&gt;
	done;&lt;br /&gt;
	for current in $othersockbuf_b; do&lt;br /&gt;
		sum_cur_b=`expr $sum_cur_b + $current`;&lt;br /&gt;
	done;	&lt;br /&gt;
	# normalize (Values were in Byte, so convert to KB)&lt;br /&gt;
	sum_soft_kb=`expr $sum_soft_b / 1024`;&lt;br /&gt;
	sum_hard_kb=`expr $sum_hard_b / 1024`;&lt;br /&gt;
	sum_cur_kb=`expr $sum_cur_b / 1024`;&lt;br /&gt;
	ALLSOCKETBUF_soft_kb=$sum_soft_kb;&lt;br /&gt;
	ALLSOCKETBUF_hard_kb=$sum_hard_kb;&lt;br /&gt;
	ALLSOCKETBUF_cur_kb=$sum_cur_kb;&lt;br /&gt;
	ALLSOCKETBUF_soft_mb=`echo &amp;quot;scale=2;$ALLSOCKETBUF_soft_kb / 1024&amp;quot; | bc`&lt;br /&gt;
	ALLSOCKETBUF_hard_mb=`echo &amp;quot;scale=2;$ALLSOCKETBUF_hard_kb / 1024&amp;quot; | bc`&lt;br /&gt;
	ALLSOCKETBUF_cur_mb=`echo &amp;quot;scale=2;$ALLSOCKETBUF_cur_kb / 1024&amp;quot; | bc`&lt;br /&gt;
	echo -n &amp;quot;-ALLSOCKETBUF: &amp;quot;; &lt;br /&gt;
	echo -en &amp;quot;\tSOFT: $ALLSOCKETBUF_soft_mb MB&amp;quot;;&lt;br /&gt;
	echo -en &amp;quot;\tHARD: $ALLSOCKETBUF_hard_mb MB&amp;quot;;&lt;br /&gt;
	echo -e &amp;quot;\tCurrent: $ALLSOCKETBUF_cur_mb MB&amp;quot;;&lt;br /&gt;
	&lt;br /&gt;
	# KMEMSIZE LIMIT&lt;br /&gt;
	kmemsize_b=`egrep ^KMEMSIZE $VZCONF_PATH/*.conf | cut -d '&amp;quot;' -f 2`&lt;br /&gt;
	sum_soft_b=0;&lt;br /&gt;
	sum_hard_b=0;&lt;br /&gt;
	for limit in $kmemsize_b; do&lt;br /&gt;
		soft_b=`echo $limit | cut -d ':' -f 1`;&lt;br /&gt;
		hard_b=`echo $limit | cut -d ':' -f 2`;&lt;br /&gt;
		sum_soft_b=`expr $sum_soft_b + $soft_b`;&lt;br /&gt;
		sum_hard_b=`expr $sum_hard_b + $hard_b`;&lt;br /&gt;
	done;&lt;br /&gt;
	# KMEMSIZE current&lt;br /&gt;
	kmemsize_b=`grep kmemsize /proc/user_beancounters | grep -v '0:' | tr -s ' ' | cut -d ' ' -f 4`&lt;br /&gt;
	sum_cur_b=0;&lt;br /&gt;
	for current in $kmemsize_b; do&lt;br /&gt;
		sum_cur_b=`expr $sum_cur_b + $current`;&lt;br /&gt;
	done;&lt;br /&gt;
	# normalize (Values were in Byte, so convert to KB)&lt;br /&gt;
	sum_soft_kb=`expr $sum_soft_b / 1024`;&lt;br /&gt;
	sum_hard_kb=`expr $sum_hard_b / 1024`;&lt;br /&gt;
	sum_cur_kb=`expr $sum_cur_b / 1024`;&lt;br /&gt;
	KMEMSIZE_soft_kb=$sum_soft_kb;&lt;br /&gt;
	KMEMSIZE_hard_kb=$sum_hard_kb;&lt;br /&gt;
	KMEMSIZE_cur_kb=$sum_cur_kb;&lt;br /&gt;
	KMEMSIZE_soft_mb=`echo &amp;quot;scale=2;$KMEMSIZE_soft_kb / 1024&amp;quot; | bc`&lt;br /&gt;
	KMEMSIZE_hard_mb=`echo &amp;quot;scale=2;$KMEMSIZE_hard_kb / 1024&amp;quot; | bc`&lt;br /&gt;
	KMEMSIZE_cur_mb=`echo &amp;quot;scale=2;$KMEMSIZE_cur_kb / 1024&amp;quot; | bc`&lt;br /&gt;
	echo -n &amp;quot;-KMEMSIZE: &amp;quot;; &lt;br /&gt;
	echo -en &amp;quot;\tSOFT: $KMEMSIZE_soft_mb MB&amp;quot;;&lt;br /&gt;
	echo -en &amp;quot;\tHARD: $KMEMSIZE_hard_mb MB&amp;quot;;&lt;br /&gt;
	echo -e &amp;quot;\tCurrent: $KMEMSIZE_cur_mb MB&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	level=`echo &amp;quot;scale=4;( $KMEMSIZE_cur_kb + $ALLSOCKETBUF_cur_kb ) / $RAM_kb&amp;quot; | bc`&lt;br /&gt;
	echo -en &amp;quot;  LowMem Utilization: ($KMEMSIZE_cur_mb + $ALLSOCKETBUF_cur_mb) / $RAM_mb  \t\t=&amp;gt; $level Level&amp;quot;;&lt;br /&gt;
	st=`echo &amp;quot;$level &amp;lt; 1&amp;quot; | bc`;&lt;br /&gt;
	if [ $st -eq 1 ]; then echo -e &amp;quot;\t-- `ok`&amp;quot;; else echo -e &amp;quot;\t-- `warn '!!!'`&amp;quot;; incWarnings; fi 	&lt;br /&gt;
	level=`echo &amp;quot;scale=4;( $KMEMSIZE_hard_kb + $ALLSOCKETBUF_hard_kb ) / $RAM_kb&amp;quot; | bc`&lt;br /&gt;
	echo -en &amp;quot;  LowMem Commitment:  ($KMEMSIZE_hard_mb + $ALLSOCKETBUF_hard_mb) / $RAM_mb\t\t=&amp;gt; $level Level&amp;quot;;&lt;br /&gt;
	st=`echo &amp;quot;$level &amp;lt; 1&amp;quot; | bc`;&lt;br /&gt;
	if [ $st -eq 1 ]; then echo -e &amp;quot;\t-- `ok`&amp;quot;; else echo -e &amp;quot;\t-- `warn '!!!'`&amp;quot;; incWarnings; fi &lt;br /&gt;
&lt;br /&gt;
	#------------------&lt;br /&gt;
	#---- TOTAL RAM ----&lt;br /&gt;
	# @see: http://wiki.openvz.org/UBC_systemwide_configuration#Total_RAM&lt;br /&gt;
	physpages_b=`grep physpages /proc/user_beancounters | grep -v '$MAX_VAL $MAX_VAL' | tr -s ' ' | cut -d ' ' -f 3`&lt;br /&gt;
	sum_cur=0;&lt;br /&gt;
	for current in $physpages_b; do&lt;br /&gt;
		sum_cur_b=`expr $sum_cur_b + $current`;&lt;br /&gt;
	done;&lt;br /&gt;
	# normalize (Values were in Byte, so convert to KB)&lt;br /&gt;
	sum_cur_kb=`expr $sum_cur_b / 1024`;&lt;br /&gt;
	PHYSPAGES_cur_kb=$sum_cur_kb;&lt;br /&gt;
	PHYSPAGES_cur_mb=`echo &amp;quot;scale=2;$PHYSPAGES_cur_kb / 1024&amp;quot; | bc`&lt;br /&gt;
	amount_kb=`expr $PHYSPAGES_cur_kb + $KMEMSIZE_cur_kb + $ALLSOCKETBUF_cur_kb`&lt;br /&gt;
	amount_mb=`expr $amount_kb / 1024`;&lt;br /&gt;
	level=`echo &amp;quot;scale=4;$amount_kb / $mem_real_kb&amp;quot; | bc`&lt;br /&gt;
	echo -en &amp;quot;  TotMem Utilization: ($PHYSPAGES_cur_mb + $KMEMSIZE_cur_mb + $ALLSOCKETBUF_cur_mb) / $mem_real_mb\t=&amp;gt; $amount_mb MB / $mem_real_mb MB ($level Level)&amp;quot;;&lt;br /&gt;
	st=`echo &amp;quot;$level &amp;lt; 1&amp;quot; | bc`;&lt;br /&gt;
	if [ $st -eq 1 ]; then echo -e &amp;quot;\t-- `ok`&amp;quot;; else echo -e &amp;quot;\t-- `warn`&amp;quot;; incWarnings; fi&lt;br /&gt;
	&lt;br /&gt;
	#------------------&lt;br /&gt;
	#---- RAM+SWAP ----&lt;br /&gt;
	# @see: http://wiki.openvz.org/UBC_systemwide_configuration#Memory_and_swap_space&lt;br /&gt;
	swapmem_real_kb=`cat /proc/meminfo | grep 'SwapTotal' | tr -s ' ' | cut -d ' ' -f 2`&lt;br /&gt;
	swapmem_real_mb=`expr $swapmem_real_kb / 1024` &lt;br /&gt;
	echo &amp;quot;&amp;quot;;&lt;br /&gt;
	echo -en &amp;quot;Swap MEM:\t$swapmem_real_mb MB&amp;quot;;&lt;br /&gt;
	mem4_kb=`expr 4 \* $mem_real_kb`&lt;br /&gt;
	if [ &amp;quot;$swapmem_real_kb&amp;quot; -lt &amp;quot;$mem4_kb&amp;quot; ]; then &lt;br /&gt;
		if [ &amp;quot;$mem_real_kb&amp;quot; -lt &amp;quot;$swapmem_real_kb&amp;quot; ]; then echo -e &amp;quot;\t-- `ok`&amp;quot;;&lt;br /&gt;
	else echo -e &amp;quot;\t-- `warn '!!! Swap should be &amp;gt; Total Mem'`&amp;quot;; incWarnings; fi&lt;br /&gt;
	else echo -e &amp;quot;\t-- `warn '!!! Swap should be &amp;lt; 4*Total Mem'`&amp;quot;; incWarnings; fi 	&lt;br /&gt;
	&lt;br /&gt;
	# OOMGUARPAGES LIMIT&lt;br /&gt;
	oomguarpages_b=`egrep ^OOMGUARPAGES $VZCONF_PATH/*.conf | cut -d '&amp;quot;' -f 2`&lt;br /&gt;
	sum_soft_b=0;&lt;br /&gt;
	sum_hard_b=0;&lt;br /&gt;
	for limit in $oomguarpages_b; do&lt;br /&gt;
		soft_b=`echo $limit | cut -d ':' -f 1`;&lt;br /&gt;
		hard_b=`echo $limit | cut -d ':' -f 2`;&lt;br /&gt;
		sum_soft_b=`expr $sum_soft_b + $soft_b`;&lt;br /&gt;
		sum_hard_b=`expr $sum_hard_b + $hard_b`;&lt;br /&gt;
	done;	&lt;br /&gt;
	oomguarpages_b=`grep oomguarpages /proc/user_beancounters | grep -v '2147483647 2147483647' | tr -s ' ' | cut -d ' ' -f 3`;&lt;br /&gt;
 	sum_cur_b=0;&lt;br /&gt;
	for current in $oomguarpages_b; do &lt;br /&gt;
		sum_cur_b=`expr $sum_cur_b + $current`;&lt;br /&gt;
	done;&lt;br /&gt;
	# normalize (Values were in Byte, so convert to KB)&lt;br /&gt;
	sum_cur_kb=`expr $sum_cur_b / 1024`;&lt;br /&gt;
	OOMGUARPAGES_soft_kb=$sum_soft_kb;&lt;br /&gt;
	OOMGUARPAGES_hard_kb=$sum_hard_kb;&lt;br /&gt;
	OOMGUARPAGES_cur_kb=$sum_cur_kb;&lt;br /&gt;
	OOMGUARPAGES_soft_mb=`echo &amp;quot;scale=2;$OOMGUARPAGES_soft_kb / 1024&amp;quot; | bc`&lt;br /&gt;
	OOMGUARPAGES_hard_mb=`echo &amp;quot;scale=2;$OOMGUARPAGES_hard_kb / 1024&amp;quot; | bc`&lt;br /&gt;
	OOMGUARPAGES_cur_mb=`echo &amp;quot;scale=2;$OOMGUARPAGES_cur_kb / 1024&amp;quot; | bc`&lt;br /&gt;
	echo -n &amp;quot;-OOMGUARPAGES: &amp;quot;; &lt;br /&gt;
	echo -en &amp;quot;\tSOFT: $OOMGUARPAGES_soft_mb MB&amp;quot;;&lt;br /&gt;
	echo -en &amp;quot;\tHARD: $OOMGUARPAGES_hard_mb MB&amp;quot;;&lt;br /&gt;
	echo -e &amp;quot;\tCurrent: $OOMGUARPAGES_cur_mb MB&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	level=`echo &amp;quot;scale=4;( $OOMGUARPAGES_cur_kb + $KMEMSIZE_cur_kb + $ALLSOCKETBUF_cur_kb ) / ( $RAM_kb + swapmem_real_kb )&amp;quot; | bc`&lt;br /&gt;
	echo -en &amp;quot;  Swap Utilization: ($OOMGUARPAGES_cur_mb + $KMEMSIZE_cur_mb + $ALLSOCKETBUF_cur_mb) / ($RAM_mb + $swapmem_real_mb) \t\t=&amp;gt; $level Level&amp;quot;;&lt;br /&gt;
	st=`echo &amp;quot;$level &amp;lt; 1&amp;quot; | bc`;&lt;br /&gt;
	if [ $st -eq 1 ]; then echo -e &amp;quot;\t-- `ok`&amp;quot;; else echo -e &amp;quot;\t-- `warn '!!!'`&amp;quot;; incWarnings; fi 	&lt;br /&gt;
	level=`echo &amp;quot;scale=4;( $OOMGUARPAGES_hard_kb + $KMEMSIZE_hard_kb + $ALLSOCKETBUF_hard_kb ) / ( $RAM_kb + swapmem_real_kb )&amp;quot; | bc`&lt;br /&gt;
	echo -en &amp;quot;  Swap Commitment:  ($OOMGUARPAGES_hard_mb + $KMEMSIZE_hard_mb + $ALLSOCKETBUF_hard_mb) / ($RAM_mb + $swapmem_real_mb) \t\t=&amp;gt; $level Level&amp;quot;;&lt;br /&gt;
	st=`echo &amp;quot;$level &amp;lt; 1&amp;quot; | bc`;&lt;br /&gt;
	if [ $st -eq 1 ]; then echo -e &amp;quot;\t-- `ok`&amp;quot;; else echo -e &amp;quot;\t-- `warn '!!!'`&amp;quot;; incWarnings; fi &lt;br /&gt;
&lt;br /&gt;
	#--------------------------&lt;br /&gt;
	#---- Allocated Memory ----&lt;br /&gt;
	# @see: http://wiki.openvz.org/UBC_systemwide_configuration#Allocated_memory&lt;br /&gt;
	# PRIVVMPAGES LIMIT&lt;br /&gt;
	privvmpages_b=`egrep ^PRIVVMPAGES $VZCONF_PATH/*.conf | cut -d '&amp;quot;' -f 2`&lt;br /&gt;
	sum_soft_b=0;&lt;br /&gt;
	sum_hard_b=0;&lt;br /&gt;
	for limit in $privvmpages_b; do&lt;br /&gt;
		soft_b=`echo $limit | cut -d ':' -f 1`;&lt;br /&gt;
		hard_b=`echo $limit | cut -d ':' -f 2`;&lt;br /&gt;
		sum_soft_b=`expr $sum_soft_b + $soft_b`;&lt;br /&gt;
		sum_hard_b=`expr $sum_hard_b + $hard_b`;&lt;br /&gt;
	done;	&lt;br /&gt;
	privvmpages_b=`grep privvmpages /proc/user_beancounters | grep -v '2147483647 2147483647' | tr -s ' ' | cut -d ' ' -f 3`;&lt;br /&gt;
 	sum_cur_b=0;&lt;br /&gt;
	for current in $privvmpages_b; do &lt;br /&gt;
		sum_cur_b=`expr $sum_cur_b + $current`;&lt;br /&gt;
	done;&lt;br /&gt;
	# normalize (Values were in Byte, so convert to KB)&lt;br /&gt;
	sum_cur_kb=`expr $sum_cur_b / 1024`;&lt;br /&gt;
	PRIVVMPAGES_soft_kb=$sum_soft_kb;&lt;br /&gt;
	PRIVVMPAGES_hard_kb=$sum_hard_kb;&lt;br /&gt;
	PRIVVMPAGES_cur_kb=$sum_cur_kb;&lt;br /&gt;
	PRIVVMPAGES_soft_mb=`echo &amp;quot;scale=2;$PRIVVMPAGES_soft_kb / 1024&amp;quot; | bc`&lt;br /&gt;
	PRIVVMPAGES_hard_mb=`echo &amp;quot;scale=2;$PRIVVMPAGES_hard_kb / 1024&amp;quot; | bc`&lt;br /&gt;
	PRIVVMPAGES_cur_mb=`echo &amp;quot;scale=2;$PRIVVMPAGES_cur_kb / 1024&amp;quot; | bc`&lt;br /&gt;
	echo -n &amp;quot;-PRIVVMPAGES: &amp;quot;; &lt;br /&gt;
	echo -en &amp;quot;\tSOFT: $PRIVVMPAGES_soft_mb MB&amp;quot;;&lt;br /&gt;
	echo -en &amp;quot;\tHARD: $PRIVVMPAGES_hard_mb MB&amp;quot;;&lt;br /&gt;
	echo -e &amp;quot;\tCurrent: $PRIVVMPAGES_cur_mb MB&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	# VMGUARPAGES LIMIT&lt;br /&gt;
	vmguarpages_b=`egrep ^VMGUARPAGES $VZCONF_PATH/*.conf | cut -d '&amp;quot;' -f 2`&lt;br /&gt;
	sum_soft_b=0;&lt;br /&gt;
	sum_hard_b=0;&lt;br /&gt;
	for limit in $vmguarpages_b; do&lt;br /&gt;
		soft_b=`echo $limit | cut -d ':' -f 1`;&lt;br /&gt;
		hard_b=`echo $limit | cut -d ':' -f 2`;&lt;br /&gt;
		sum_soft_b=`expr $sum_soft_b + $soft_b`;&lt;br /&gt;
		sum_hard_b=`expr $sum_hard_b + $hard_b`;&lt;br /&gt;
	done;	&lt;br /&gt;
	vmguarpages_b=`grep vmguarpages /proc/user_beancounters | grep -v '2147483647 2147483647' | tr -s ' ' | cut -d ' ' -f 3`;&lt;br /&gt;
 	sum_cur_b=0;&lt;br /&gt;
	for current in $vmguarpages_b; do &lt;br /&gt;
		sum_cur_b=`expr $sum_cur_b + $current`;&lt;br /&gt;
	done;&lt;br /&gt;
	# normalize (Values were in Byte, so convert to KB)&lt;br /&gt;
	sum_cur_kb=`expr $sum_cur_b / 1024`;&lt;br /&gt;
	VMGUARPAGES_soft_kb=$sum_soft_kb;&lt;br /&gt;
	VMGUARPAGES_hard_kb=$sum_hard_kb;&lt;br /&gt;
	VMGUARPAGES_cur_kb=$sum_cur_kb;&lt;br /&gt;
	VMGUARPAGES_soft_mb=`echo &amp;quot;scale=2;$VMGUARPAGES_soft_kb / 1024&amp;quot; | bc`&lt;br /&gt;
	VMGUARPAGES_hard_mb=`echo &amp;quot;scale=2;$VMGUARPAGES_hard_kb / 1024&amp;quot; | bc`&lt;br /&gt;
	VMGUARPAGES_cur_mb=`echo &amp;quot;scale=2;$VMGUARPAGES_cur_kb / 1024&amp;quot; | bc`&lt;br /&gt;
	echo -n &amp;quot;-VMGUARPAGES: &amp;quot;; &lt;br /&gt;
	echo -en &amp;quot;\tSOFT: $VMGUARPAGES_soft_mb MB&amp;quot;;&lt;br /&gt;
	echo -en &amp;quot;\tHARD: $VMGUARPAGES_hard_mb MB&amp;quot;;&lt;br /&gt;
	echo -e &amp;quot;\tCurrent: $VMGUARPAGES_cur_mb MB&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	level=`echo &amp;quot;scale=4;( ($PRIVVMPAGES_cur_kb*4096) + $KMEMSIZE_cur_kb + $ALLSOCKETBUF_cur_kb ) / ( $RAM_kb + swapmem_real_kb )&amp;quot; | bc`&lt;br /&gt;
	echo -en &amp;quot;  Alloc Utilization: (($PRIVVMPAGES_cur_mb*4096) + $KMEMSIZE_cur_mb + $ALLSOCKETBUF_cur_mb) / ($RAM_mb + $swapmem_real_mb) \t\t=&amp;gt; $level Level&amp;quot;;&lt;br /&gt;
	st=`echo &amp;quot;$level &amp;lt; 1&amp;quot; | bc`;&lt;br /&gt;
	if [ $st -eq 1 ]; then echo -e &amp;quot;\t-- `ok`&amp;quot;; else echo -e &amp;quot;\t-- `warn '!!!'`&amp;quot;; incWarnings; fi 	&lt;br /&gt;
	level=`echo &amp;quot;scale=4;( $VMGUARPAGES_soft_kb + $KMEMSIZE_hard_kb + $ALLSOCKETBUF_hard_kb ) / ( $RAM_kb + swapmem_real_kb )&amp;quot; | bc`&lt;br /&gt;
	echo -en &amp;quot;  Alloc Commitment:  (($VMGUARPAGES_soft_kb*4096) + $KMEMSIZE_hard_mb + $ALLSOCKETBUF_hard_mb) / ($RAM_mb + $swapmem_real_mb) \t\t=&amp;gt; $level Level&amp;quot;;&lt;br /&gt;
	st=`echo &amp;quot;$level &amp;lt; 1&amp;quot; | bc`;&lt;br /&gt;
	if [ $st -eq 1 ]; then echo -e &amp;quot;\t-- `ok`&amp;quot;; else echo -e &amp;quot;\t-- `warn '!!!'`&amp;quot;; incWarnings; fi &lt;br /&gt;
	level=`echo &amp;quot;scale=4;( $PRIVVMPAGES_hard_kb + $KMEMSIZE_hard_kb + $ALLSOCKETBUF_hard_kb ) / ( $RAM_kb + swapmem_real_kb )&amp;quot; | bc`&lt;br /&gt;
	echo -en &amp;quot;  Alloc limit:  (($PRIVVMPAGES_hard_mb*4096) + $KMEMSIZE_hard_mb + $ALLSOCKETBUF_hard_mb) / ($RAM_mb + $swapmem_real_mb) \t\t=&amp;gt; $level Level&amp;quot;;&lt;br /&gt;
	st=`echo &amp;quot;$level &amp;lt; 1&amp;quot; | bc`;&lt;br /&gt;
	if [ $st -eq 1 ]; then echo -e &amp;quot;\t-- `ok`&amp;quot;; else echo -e &amp;quot;\t-- `warn '!!!'`&amp;quot;; incWarnings; fi &lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
	&lt;br /&gt;
# ------------------------------------------------------------------&lt;br /&gt;
# MAIN&lt;br /&gt;
# ------------------------------------------------------------------&lt;br /&gt;
echo &amp;quot;INFO: See near informations to calculation and values at&amp;quot;;&lt;br /&gt;
echo &amp;quot;      http://wiki.openvz.org/UBC_systemwide_configuration&amp;quot;;&lt;br /&gt;
echo &amp;quot;&amp;quot;;&lt;br /&gt;
echo &amp;quot;Harddisk check:&amp;quot;;&lt;br /&gt;
echo &amp;quot;----------------------------------------------&amp;quot;;&lt;br /&gt;
checkDisk;&lt;br /&gt;
echo &amp;quot;&amp;quot;;&lt;br /&gt;
echo &amp;quot;Memory check: (level &amp;lt; 1 OK)&amp;quot;;&lt;br /&gt;
echo &amp;quot;----------------------------------------------&amp;quot;;&lt;br /&gt;
checkMem;&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
echo &amp;quot;&amp;quot;;&lt;br /&gt;
if [ &amp;quot;$w&amp;quot; -gt &amp;quot;0&amp;quot; ]; then &lt;br /&gt;
	echo -e &amp;quot;`warn`: $w warnings were diplayed. Check the output.&amp;quot;;&lt;br /&gt;
	exit 1; &lt;br /&gt;
fi&lt;br /&gt;
echo -e &amp;quot;`ok`: All paremeters seems to have good values.&amp;quot;;&lt;br /&gt;
exit 0; &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kako</name></author>
		
	</entry>
</feed>