15

Что не так с этой последовательностью операций, выполняемой в системе Debian Squeeze с файловой системой Btrfs?

$ dd if=/dev/zero of=swapfile2 bs=1024 count=524288
$ sudo mkswap swapfile2
$ sudo chown root:root swapfile2
$ sudo chmod 0600 swapfile2  
$ sudo swapon -v -f swapfile2
swapon on swapfile2
swapon: /home/mathieu/swapfile2: found swap signature: version 1, page-size 4, same byte order
swapon: /home/mathieu/swapfile2: pagesize=4096, swapsize=536870912, devsize=536870912
swapon: swapfile2: swapon failed: Invalid argument

Моя файловая система:

$ mount
/dev/mapper/voxbox-root on / type btrfs (rw)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
/dev/mapper/voxbox-boot on /boot type ext2 (rw)
fusectl on /sys/fs/fuse/connections type fusectl (rw)

4 ответа4

14

Этот отчет об ошибке приводит к этому обсуждению

Поэтому "Неверный аргумент" следует читать как "Ваша файловая система не поддерживает файл подкачки"

как отправлено малатом

2

Если вы хотите поменять файл, просто используйте btrfs-swapon

0

Сатья ответ, кажется, содержит мертвые ссылки.

Я нашел это часто задаваемые вопросы Btrfs:

Поддерживает ли btrfs файлы подкачки?

В настоящее время нет. Простое создание файла NOCOW не помогает, поддержка файла подкачки опирается на одну функцию, которую btrfs намеренно не реализует из-за возможных повреждений. Реализация подкачки использовалась для того, чтобы полагаться на некоторые предположения, которые могут не сохраняться в btrfs, например номера блоков в файле подкачки, в то время как btrfs имеет другое сопоставление номеров блоков в случае нескольких устройств. Существует новый API, который можно использовать для переноса свопа на btrfs; для более подробной информации взгляните на идеи проекта # Поддержка файла подкачки.

Обходной путь, хотя и с низкой производительностью, заключается в монтировании файла подкачки через петлевое устройство.

Источник: https://btrfs.wiki.kernel.org/index.php/FAQ#Does_btrfs_support_swap_files.3F.

-2

Invalid argument говорит о том, что в аргументах команды swapon что-то не так.

Прежде всего, прочитайте man swapon .

Попробуйте sudo swapon swapfile2 . В моем случае это работает.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .