История изменений
Исправление
netwish,
(текущая версия)
:
Можно было бы попробовать swap не напрямую через файл, а через mount loop. У меня так на старом Debian 8 работало. Ядро 3.x.
# Стартовый скрипт
# Его нужно ещё добавить в автостарт systemd.
chmod a+x -- /etc/rc.local
#!/bin/bash
# Файл /etc/rc.local
SIZEMB=1024
IMG=/swap-mount-loop.img
ls -1 -- "${IMG}" > /dev/null 2> /dev/null
if [ $? = 0 ]
then
echo Found loop-image.
# Mount swap through loop
LOOPDEV=$(losetup -f)
losetup "$LOOPDEV" "${IMG}"
swapon "$LOOPDEV"
else
echo Create loop-image.
dd if=/dev/zero "of=${IMG}" bs=1M count=$SIZEMB
# Права на свап-файл
chown 0:0 -- "${IMG}"
chmod ug=rw,o= -- "${IMG}"
# Mount swap through loop
LOOPDEV=$(losetup -f)
losetup "$LOOPDEV" "${IMG}"
# Подготовка файла свапа
mkswap "$LOOPDEV"
swapon "$LOOPDEV"
fi
Исходная версия
netwish,
:
Можно было бы попробовать swap не напрямую через файл, а через mount loop. У меня так на старом Debian 8 работало. Ядро 3.x.
# Стартовый скрипт
# Его нужно ещё добавить в автостарт systemd.
chmod a+x -- /etc/rc.local
#!/bin/bash
# Файл /etc/rc.local
SIZEMB=1024
IMG=/swap-mount-loop.img
ls -1 -- "${IMG}" > /dev/null 2> /dev/null
if [ $? = 0 ]
then
echo Found loop-image.
# Mount swap through loop
LOOPDEV=$(losetup -f)
losetup "$LOOPDEV" "${IMG}"
swapon "$LOOPDEV"
else
echo Create loop-image.
dd if=/dev/zero "of=${IMG}" bs=1M count=$SIZEMB
# Права на свап-файл
chown 0:0 -- "${IMG}"
chmod ug=rw,o= -- "${IMG}"
# Mount swap through loop
LOOPDEV=$(losetup -f)
losetup "$LOOPDEV" "${IMG}"
# Подготовка файла в формата свапа
mkswap "$LOOPDEV"
swapon "$LOOPDEV"
fi