Ядро 5.0, btrfs и swap [РЕШЕНО]

На вики:
Swap files in Btrfs are supported since Linux 5.0.

Собственно:
$: uname -a
Linux deos 5.0.2-arch1-1-ARCH #1 SMP PREEMPT Thu Mar 14 18:47:49 UTC 2019 x86_64 GNU/Linux
$: sudo touch /swapfile
$: sudo chattr +C  /swapfile
$: sudo fallocate -l 1G /swapfile
$: sudo chmod 600 /swapfile
$: sudo mkswap /swapfile
Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes)
без метки, UUID=c6119e86-0757-43b0-a76d-a1dcdaf35151
$: sudo swapon /swapfile
swapon: /swapfile: swapon failed: Недопустимый аргумент
ЧЯДНТ?
Извини, выпил чуть, но не лучше ли zram приколоть?
он же и zswap насколько помнитьььься
alien175
ЧЯДНТ?
Требования все выполнены? Посмотри SWAPFILE SUPPORT
Ошибки не исчезают с опытом - они просто умнеют
Хотя, как пишут, основное, что должно быть выполнено
Файл подкачки должен быть полностью выделен как NOCOW без сжатия на одном устройстве.
И если с этим все нормально, то меня настораживает только одно - это использование fallocate, который хоть и рекомендован в документации, но не все так просто с этой утилитой. Проблема в том, что fallocate не выделяет реального пространства, а swapon требует реального пространства. Потому он и работает так быстро, практически мгновенно, как и truncate. Известны зытыки при использовании данной утилиты.
Попрообуй старый медленный способ, который выделяет/создает реальное пространство, типа - dd if=/dev/zero of=/swapfile bs=1M count=1000
PS - вот только сомнения, что правильно записать MB=1000*1000 или M=1024*1024 ??? - не очень знаком с SSD практически
Ошибки не исчезают с опытом - они просто умнеют
оказывается,
chattr +C
недостаточно, нужно еще сделать
chattr -c
alien175
недостаточно, нужно еще сделать
Так об этом и пишут
Файл подкачки должен быть полностью выделен как NOCOW без сжатия на одном устройстве
думал, что у тебя без сжатия, а потому и нет опции , а потому и начал грешить на fallocate
Ошибки не исчезают с опытом - они просто умнеют
A я думал, +С отключает COW, соответственно и сжатие.
 
Зарегистрироваться или войдите чтобы оставить сообщение.