Отсутствие swapinfo
(* BSD), swapon -s
(использование swap) является следующим лучшим решением.
Любое из следующего должно помочь, установив $?
в 0, если настроен один или несколько обменов:
/sbin/swapon -s | grep -q /dev
grep -q /dev /proc/swaps
free | awk '/Swap/{ exit(!$2)}'
awk '/SwapTotal/ {exit (!$2)}' /proc/meminfo
Последние две команды, вероятно, являются наиболее надежными, первые две не будут (как есть) подтверждать существование подкачки, когда используются только файлы подкачки (что несколько необычно, но, возможно, обнаруживается при установке ОС или в бездисковых системах, которые меняются местами) NFS).
Вместо этого вы можете использовать это для обнаружения (или подсчета, использования -c
вместо -q
) перестановок:
grep -qE "(partition|file)" /proc/swaps
(Это также будет считать swap на сетевых блочных устройствах /dev/nbd
блочные устройства swap считаются как swap-устройства "раздела", по крайней мере, до linux-3.13.5.)