## page was renamed from emanuc/ProvaSwapfileSuBtrfs
## page was renamed from bozza
#format wiki
#language it
<
>
<>
<>
<>
= Introduzione =
Questa guida contiene le istruzioni per creare e abilitare uno '''[[Hardware/DispositiviPartizioni/SwapDomandeFrequenti#Creazione_automatica_di_un_file_di_swap|swapfile]]''' qualora Ubuntu sia installato su filesystem '''[[Hardware/DispositiviPartizioni/Btrfs|Btrfs]]'''.
Queste indicazioni si rivelano utili per risolvere il bug <>, a causa del quale in un'installazione di Ubuntu su filesystem Btrfs, anche nel caso in cui venga creato regolarmente uno swapfile, quest'ultimo non risulta attivo poiché non opportunamente configurato.
= Prerequisiti =
{{{#!wiki note
Il supporto per swapfile su filesystem Btrfs è disponibile con la versione del kernel 5.0 o superiore.<
>
Si necessita pertanto di Ubuntu 18.04.3 (escluse le point release precedenti) oppure Ubuntu 19.10 o superiori.<
>
Per conoscere quale versione del kernel è in uso consultare [[AmministrazioneSistema/ComandiBase#uname|questa pagina]].
}}}
Verificare che il file di swap __non__ sia attivo digitando nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando: {{{
free
}}}
Se l'output è simile al seguente{{{
total used free shared buff/cache available
Mem: 8068144 2366460 3443144 421680 2258540 5009428
Swap: 0 0 0
}}}
dove tutti i valori della seconda riga sono uguali a '''0''', ciò conferma che lo swapfile __non__ è attivo.<
>
In tal caso seguire le indicazioni dei paragrafi successivi.
= Preparativi =
0. Per individuare la lettera e il numero di partizione del filesystem radice, digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{
mount -t btrfs}}}
L'output sarà simile al seguente:{{{
/dev/sda2 on / type btrfs (rw,noatime,compress=zstd:1,ssd,autodefrag,subvolid=983,subvol=/@)
/dev/sda2 on /home type btrfs (rw,noatime,compress=zstd:1,ssd,autodefrag,subvolid=257,subvol=/@home)
}}}
0. Montare la radice del filesystem:{{{
sudo mount -t btrfs /dev/sda2 /mnt
}}}
0. Creare un subvolume per la swap digitando:{{{
sudo btrfs subvolume create /mnt/@swap
}}}
0. Nel subvolume appena creato settare l'attributo '''NOCOW''' (importante per far funzionare lo swapfile su Btrfs):{{{
sudo chattr +C /mnt/@swap
}}}
= Creazione dello swapfile =
0. Digitare nel [[AmministrazioneSistema/Terminale|terminale]] i seguenti comandi per creare lo swapfile (nell'esempio seguente saranno assegnati 2000 MB al file di swap; è possibile modificare il valore «`2000M`» , nel secondo comando, a seconda delle proprie esigenze):{{{
sudo truncate -s 0 /mnt/@swap/swapfile
}}} {{{
sudo fallocate -l 2000M /mnt/@swap/swapfile
}}} {{{
sudo chmod 600 /mnt/@swap/swapfile
}}} {{{
sudo mkswap /mnt/@swap/swapfile
}}}
{{{#!wiki note
Procedura da Ubuntu 23.04 o btrfs-progs versione 6.1 o superiore
}}}
0. Digitare nel terminale i seguenti comandi per creare lo swapfile (nell'esempio seguente saranno assegnati 2 Giga al file di swap; è possibile modificare il valore «2G» a seconda delle proprie esigenze):{{{
sudo btrfs filesystem mkswapfile -s 2G /mnt/@/swapfile
}}}
0. Adesso possiamo smontare il filesystem:{{{
sudo umount /mnt
}}}
= Modifica del file fstab =
Per attivare lo swapfile appena creato bisogna infine impostarlo come swap all'avvio del sistema.
0. Aprire con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] e con un [[Ufficio/EditorDiTesto|editor di testo]] il file `/etc/fstab`.
0. Aggiungere il mount del subvolume '''@swap''':{{{
UUID=yourUUID /swap btrfs noatime,subvol=@swap
}}}
0. Aggiungere la riga relativa allo swapfile con il nuovo percorso come nel seguente esempio::{{{
/swap/swapfile none swap defaults 0 0 }}}
{{{#!wiki tip
Modificare la voce /swapfile in /swap/swapfile se la riga è già esistente.
}}}
0. Salvare e chiudere il file.
0. Riavviare il sistema affinché le modifiche abbiano effetto.
= Verifica =
0. Digitare nel [[AmministrazioneSistema/Terminale|terminale]] il comando: {{{
free
}}}
0. Se la swap è attiva si avrà un output simile al seguente, dove nella prima colonna della seconda riga è indicato un valore diverso da '''0''':{{{
total used free shared buff/cache available
Mem: 8068144 2366460 3443144 421680 2258540 5009428
Swap: 7520252 0 7520252
}}}
= Eliminazione del vecchio swapfile (facoltativo) =
Una volta accertati che lo swapfile appena creato funzioni regolarmente, è possibile rimuovere quello precedente.
A tal fine:
0. Digitare il comando{{{
ls /
}}}
e accertarsi che nell'output venga elencata la voce `swapfile`.
0. Infine eliminare il file digitando:{{{
sudo rm /swapfile
}}}
= Ulteriori risorse =
* [[https://help.ubuntu.com/community/btrfs|Btrfs su Ubuntu]] (pagina internazionale)
* [[Hardware/DispositiviPartizioni/SwapDomandeFrequenti| Swap: domande frequenti]]
##----
##CategoryAmministrazione CategoryHardware
----
CategoryHomepage CategoryNuoviDocumenti