Swapfile pe btrfs

Incepand cu versiunea de kernel 5.0 btrfs suporta swapfiles. Ca sa cream un swapfile urmam pasii de mai jos, dar mai intai un mic intro legat de swapfiles:

Swapfile-ul e diferit de partitia de swap in sensul ca swapfile-ul sta pe o partitie normala, formatata, si este un fisier in care se tin datele din memorie. Datele se scriu in interiorul fisierului (ca si cum ai salva un fisier text pe partitie). In teorie acest lucru duce la un overhead (date -> fisier -> filesystem -> HDD/SSD) fata de o partitie de swap dedicata (date -> partitie swap ->HDD/SSD) dar daca ajungi sa ai un sistem care este incetinit ca intra in swap des, atunci ai alta problema.

Revenind la swapfile, hai sa vedem cum facem un swapfile pe btrfs. Rulam ca root urmatoarele comenzi:

touch /swapfile
chattr +C /swapfile 
fallocate -l 16G /swapfile
chown root /swapfile 
chmod 600 /swapfile 
mkswap /swapfile 
swapon /swapfile

Apoi scriem in fstab linia

/swapfile none            swap    sw              0       0

and that’s it.

PS: Toata smecheria consta in chattr +C /swapfile. Fara +C, nu o sa putem folosi swapfile-ul. (A file with the ‘C’ attribute set will not be subject to copy-on-write updates.)

About Author:

I look 12, but I'm a 42-year-old investment banker!

7 thoughts on “Swapfile pe btrfs

      1. 10x, boss… aveam trepidatii la pitpalac ca-i doar
        pentru mumoasele alea din datacenter 😀

          1. Cine-a zis de ‘razboi’ ? C’mon…
            BTW: ce filesys preferi (inclusiv swap) in productie
            pentru raid-uri sw/hw ? 10x

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.