Инструменты пользователя

Инструменты сайта


// Сколько памяти? Solaris way.

Сегодня потребовалось узнать сколько памяти в Салярке всего, сколько свободно и сколько занято… Ага и команды free нету. Но есть kstat, как подсказал скрипт проверки памяти из Nagios, а дальше написал «свой» free:

#!/bin/sh
 
### Mem/swap using in Solaris
 
if [ x"$1" != x"---run_in_bash" ]; then
     bash $0 ---run_in_bash $@
     exit $?
fi
 
shift
 
page_size=`kstat -p unix:0:seg_cache:slab_size | awk '{print $2}'`
 
# RAM
mem_total=`kstat -p unix:0:system_pages:pagestotal | awk '{print $2}'`
mem_total=`expr $mem_total * $page_size / 1024`
 
mem_used=`kstat -p unix:0:system_pages:pageslocked | awk '{print $2}'`
mem_used=`expr $mem_used * $page_size / 1024`
 
mem_free=`kstat -p unix:0:system_pages:pagesfree | awk '{print $2}'`
mem_free=`expr $mem_free * $page_size / 1024`
 
# SWAP
swap_total=`kstat -p unix:0:vminfo:swap_avail | awk '{print $2}'`
swap_total=`expr $swap_total / 1024 / 1024`
 
swap_used=`kstat -p unix:0:vminfo:swap_alloc | awk '{print $2}'`
swap_used=`expr $swap_used / 1024 / 1024`
 
swap_free=`kstat -p unix:0:vminfo:swap_free | awk '{print $2}'`
swap_free=`expr $swap_free / 1024 / 1024`
 
#echo -e "ttotalttusedttfree"
#echo -e "mem:t$mem_totaltt$mem_usedtt$mem_free"
#echo -e "swap:t$swap_totaltt$swap_usedtt$swap_free"
 
# для более красивого вывода
printf "      %14s %14s %14sn" "total" "used" "free"
printf " mem: %14d %14d %14dn" $mem_total $mem_used $mem_free
printf "swap: %14d %14d %14dn" $swap_total $swap_used $swap_free

В качестве источника информации: https://project.openfiler.com/tracker/browser/openfiler/branches/2.x-rpath/var/www/phpsysinfo/includes/os/class.SunOS.inc.php?rev=1161

Комментарии

Старые комментарии

-page_size=`kstat -p unix:0:seg_cache:slab_size | awk '{print $2}'`

+page_size=`/usr/bin/pagesize`

1 |
div
| 2008-12-05 15:09 | reply