В процессе разбора проблем отправки писем с одного из серверов, обнаружил, что не хочет стартовать демон антивируса кламав, ругаюсь на запуске “не хочу – не буду”
# service clamd start
Starting Clam AntiVirus Daemon: [FAILED]
Полез смотреть в логи, оказалось что не хватает памяти:
Unix socket file /var/run/clamav/clamd.sock
Setting connection queue length to 30
daemonize() failed: Cannot allocate memory
Socket file removed.
При этом свободной оперативки на серваке было порядка 400 мегабайт из доступного гигабайта
# free -m
total used free shared buffers cached
Mem: 1006 564 441 1 8 140
То есть расширяться либо виртуальную машину, либо организовать swap файл.
В CentOS он подключается в несколько команд. Создаем файло в гиг размером с блоками по 4Kb, где 262144 это число блоков:
# dd if=/dev/zero of=/swapfile bs=4096 count=262144
Говорим системе что он теперь своп-файл
# mkswap /swapfile
Прописываем в конфиг архитектуры /etc/fstab инициализацию свопа
/swapfile swap swap defaults 0 0
Затем перегружаем машину.
Если перегрузить невозможно, то можно включить swap в работающей системе
# swapon /swapfile
Однако, после перезагрузки он проинициализируется из fstab.
Проверить работу swap-файла можно из вывода команд free -m и cat /proc/swaps