Comment changer la partition de swap sous Linux? Si j'utilise actuellement / dev / hda3 pour l'échange et que je préfère utiliser / dev / hda4, quelles étapes dois-je suivre?
Comment changer la partition de swap sous Linux? Si j'utilise actuellement / dev / hda3 pour l'échange et que je préfère utiliser / dev / hda4, quelles étapes dois-je suivre?
Réponses:
Si vous avez une quantité décente de RAM et que vos applications ne consomment pas beaucoup de mémoire, vous pouvez envisager d'utiliser un fichier distinct comme échange au lieu de la partition entière. De cette façon, vous pouvez facilement sélectionner la quantité d'espace de swap que vous utilisez, soit en ajoutant plus de fichiers de swap, soit en redimensionnant les fichiers existants.
Disons que votre fichier d'échange résidera dans le répertoire racine en tant que /swapfile
, et aura une taille de 512 Mo. Pour le créer, émettez des commandes en tant que root:
$ dd if=/dev/zero of=/swapfile bs=1M count=512
$ mkswap /swapfile
$ swapon /swapfile
Pour l'utiliser automatiquement après le redémarrage, insérez-le dans /etc/fstab
:
/swapfile none swap defaults 0 0
Ajouter plus de fichiers d'échange est aussi simple que de créer plus de fichiers ( /swapfile1
, /swapfileX
), de les formater en utilisant mkswap
et d'activer en utilisant swapon
. Si vous souhaitez désactiver un fichier d'échange, vous pouvez utiliser la commande swapoff /swapfile
.
Quant aux performances entre le disque et la version du fichier, ce n'est pas si différent. Vous pouvez même utiliser le fichier d'échange comme disque d'hibernation dans les ordinateurs portables (bien que j'utilise toujours une partition séparée pour cela de toute façon).
À la volée:
sudo swapoff /dev/hda3
sudo mkswap /dev/hda4
sudo swapon /dev/hda4
Pour le démarrage, après avoir exécuté le mkswap, modifiez le fichier / etc / fstab et modifiez la ligne / dev / hda3 en conséquence.
Vous devrez formater / dev / hda4 comme swap, ce qui, je pense, supprime simplement les tables du système de fichiers, puis éditez / etc / fstab et pointez swap vers / dev / hda4. Redémarrez ensuite et vous devriez être bon. Il va sans dire que vous perdrez toutes les données sur / dev / hda4. Vous pouvez utiliser gparted comme interface graphique pour le formatage.
La solution de mateusza est correcte, mais l'état peut ne pas être rappelé lors de la récupération de l'hibernation. Quelques opérations supplémentaires sont nécessaires:
# prepare your partitions
swapoff /dev/sda2
mkswap /dev/sda3
swapon /dev/sda3
# find swap uuid
sudo blkid | grep swap
# OR
sudo echo ls -l /dev/disk/by-uuid | grep sda3 | cut -d' ' -f8 >> /etc/fstab
# edit swap entry in /etc/fstab
gksu gedit /etc/fstab
# edit the uuid line in /etc/initramfs-tools/conf.d/resume
gksu gedit /etc/initramfs-tools/conf.d/resume
# In terminal, execute this command
sudo update-initramfs -u
vous pouvez tester votre hibernation ici, si cela ne fonctionne pas:
# check your /etc/default/grub file
gksu gedit /etc/default/grub
# Depending on your version : if a line looks like
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID=<old_swap_partition_uuid>"
# then modify it accordingly; otherwise that's all, you're done
# execute in terminal
sudo update-grub
extrait de askubuntu