Итак как правильно создать свап файл. С командами аккуратно. Опечатки не допускаются. Их надо не печатать, а копировать и вставлять.
1. Сначала удаляем имеющийся свап файл.
sudo swapoff -a
sudo rm /swapfile
2. Монтируем корень раздела в /mnt
sudo mount /dev/nvme0n1p2 /mnt
Командой ls /mnt смотрим, что смонтировали правильно. Должно показать @ и @home
3. Создаем новый подтом @swap
sudo btrfs sub create /mnt/@swap
4. Отмонтируем корень. Закрываем терминал, чтобы не ругнулось и открываем заново.
sudo umount /mnt
5. Создаем в корне директорию /swap, куда будем подтом монтировать.
sudo mkdir /swap
6. Монтируем туда новый подтом.
sudo mount -o subvol=@swap /dev/nvme0n1p2 /swap
7. Создаем swapfile.
sudo touch /swap/swapfile
sudo chmod go-r /swap/swapfile
sudo chattr +C /swap/swapfile
sudo fallocate /swap/swapfile -l2g
sudo mkswap /swap/swapfile
sudo swapon /swap/swapfile
Это создаст свапфайл размером 2 гига. В принципе должно хватить, особенно если будет zswap использоваться.
Теперь свап будет доступен. Осталось прописать в fstab, чтобы после перезагрузки эта конфигурация осталась.
Редактируем /etc/fstab с помощью sudo nano /etc/fstab и добавляем в конец файла строки.
UUID=XXXXXXXXXXXXXXXX /swap btrfs subvol=@swap,noatime 0 0
/swap/swapfile none swap sw 0 0
В качестве XXXXXX подставляете тот же uuid, который там есть для / и /home.
Еще удаляем строчку со старым свапфайлом, начинающуюся с /swapfile.
Перезагружаетесь и убеждаетесь, что свап работает.
Пользователь добавил сообщение 22 Июля 2020, 17:51:57:
Теперь про lzo, тут всё еще проще. Редактируем в fstab строки монтирования / и /home
Они выглядят так
UUID=XXXXXXXXXXXXXXXXXX / btrfs defaults,subvol=@ 0 0
UUID=XXXXXXXXXXXXXXXXXX /home btrfs defaults,subvol=@home 0 0
Ну это примерно, параметры могут быть другими. Делаем, чтобы было так:
UUID=XXXXXXXXXXXXXXXXXX / btrfs compress=lzo,noatime,subvol=@ 0 0
UUID=XXXXXXXXXXXXXXXXXX /home btrfs compress=lzo,noatime,subvol=@home 0 0
Теперь все новые файлы будут сжиматься с lzo. Осталось сжать существующие файлы. Это делается так.
sudo btrfs fi defrag -rv -clzo /
sudo btrfs fi defrag -rv -clzo /home
Пользователь добавил сообщение 22 Июля 2020, 18:03:28:
Потом научу как zswap сделать и пользоваться снапшотами.