Comment ajouter un échange après l'installation du système?


153

Je n'ai pas créé de partition de swap lors de l'installation d'Ubuntu. Plus tard, j'ai libéré de l'espace et créé une partition de swap. Maintenant, après chaque démarrage, j'ouvre manuellement gpartedpour cliquer avec le bouton droit de la souris sur la partition de swap pour activer l'option 'swapon'.

Comment puis-je activer automatiquement la partition de swap au démarrage?

De plus, si je n'ai pas créé la partition de swap, quelles sont mes autres options?


Réponses:


132

Vous devez modifier /etc/fstabet ajouter la nouvelle partition de swap.

sudo nano /etc/fstab

Vous devez ajouter une ligne qui ressemble à

UUID=735b3be3-779c-4d21-a944-b033225f3ab4 none   swap    sw      0       0

et vous obtenez l'UUID en utilisant la commande

sudo blkid /dev/sda3

(remplacez /dev/sda3par le nom de périphérique approprié).

Apparenté, relié, connexe:


Vous avez besoin d’aide pour / etc / fstan lorsque vous obtenez une sortie: - bash: / etc / fstab: autorisation refusée
Ashu_FalcoN

Utilisez sudo gedit / etc / fstab

3
Pour trouver le nom de périphérique approprié: sudo fdisk -l(à partir de: askubuntu.com/questions/182446/… ), puis recherchez Type: échange Linux.
NumesSanguis

1
sudo blkid /dev/sda4n'imprime rien pour moi (sda4 est une partition nouvellement créée avec le code 82h, fdisk indique qu'il s'agit d'une partition "Linux swap / Solaris").
Egor Skriptunoff 25/02/2017

1
@ elvis.dukaj il est tout à fait possible d'utiliser également le nom de l'appareil. Ils expriment essentiellement deux choses différentes. L'un dit d'utiliser le volume avec exactement cet UUID (quelque chose qui changera avec une autre mkswapexécution) et l'autre d'utiliser la partition principale numéro 3 du disque /dev/sda. Certains préfèrent les UUID car même si l'attribution des noms de périphérique change, les UUID restent les mêmes. C'est pourquoi la différence est importante. Mais si vous êtes sûr de ne pas repartitionner le lecteur, son utilisation /dev/sda3doit également être sûre.
0xC0000022L

106

Pour créer une partition de swap après l'installation, créez une partition vide. Il ne devrait pas y avoir de trous. Vous pouvez ensuite formater cette partition avec:

sudo mkswap /dev/sdX

remplacer /dev/sdXpar votre partition. Montez cette partition comme permutation avec

sudo swapon -U UUID

où UUID est celui de votre /dev/sdXcomme lu à partir de ceci:

blkid /dev/sdX

Liez votre nouvel échange en /etc/fstabajoutant cette ligne:

UUID=xxx    none    swap    sw      0   0

Si vous souhaitez utiliser votre échange pour l'hibernation, vous devez mettre à jour l'UUID /etc/initramfs-tools/conf.d/resumeavec ce contenu RESUME=UUID=xxx. N'oublie pas de $ sudo update-initramfs -u.

Pour terminer, il est également possible de créer un fichier d'échange si vous n'avez pas de partition de rechange. Cette réponse vous donne une idée de la manière de créer un fichier d'échange et de l'activer au démarrage.


À l'heure actuelle, j'ai un disque SSD avec deux partitions, mais j'aimerais en créer une troisième. Si ma partition principale ext4 contient le système d’exploitation et mes fichiers, puis-je l’utiliser pour retirer 2 Go de celle-ci dans une nouvelle partition? Cette partition principale dispose de suffisamment d’espace libre, ce qui ne devrait pas poser de problème.
dustin

2
Regardez gpartedpour redimensionner votre partition.
NumesSanguis

54

Si vous ne voulez pas ou si vous ne savez pas comment créer une partition de swap, vous pouvez créer un fichier de swap qui fonctionnera de la même manière qu'une partition. Voici les étapes (en utilisant terminal):

  1. Créez un fichier vide (1K * 4M = 4 GiB).

    sudo mkdir -v /var/cache/swap
    cd /var/cache/swap
    sudo dd if=/dev/zero of=swapfile bs=1K count=4M
    sudo chmod 600 swapfile
    
  2. Convertir le fichier nouvellement créé dans un fichier d'espace d'échange.

    sudo mkswap swapfile
    
  3. Activer le fichier pour la pagination et la permutation.

    sudo swapon swapfile
    

    Vérifiez par: swapon -sou top:

    top -bn1 | grep -i swap
    

    Doit afficher une ligne comme: KiB Swap: 4194300 total, 4194300 free

    Pour désactiver, utilisez la sudo swapoff swapfilecommande.

  4. Ajoutez-le dans le fstabfichier pour le rendre persistant au prochain démarrage du système.

    echo "/var/cache/swap/swapfile none swap sw 0 0" | sudo tee -a /etc/fstab
    
  5. Re-testez le fichier d'échange au démarrage en:

    sudo swapoff swapfile
    sudo swapon -va
    

    Remarque: Les commandes ci-dessus vérifient à nouveau la syntaxe du fstabfichier, sinon votre Linux ne pourrait pas démarrer correctement.


13
Merci pour la seule réponse qui utilise un fichier d'échange et non une partition d'échange. Dans ce cas, je ne pouvais pas créer de partition. Les commandes ont bien fonctionné.
Sarel Botha

2
Pour ceux qui ont besoin d’espace de swap de taille supérieure, augmentez le nombre = 4M, à XM, pour l’espace de swap X GiB. Au cas où quelqu'un l'aurait manqué.
saurabheights

Je ne suis pas sûr de l'étape 5. Pourquoi devrais-je désactiver l'échange pour effectuer un test?
Raffi Khatchadourian le

@RaffiKhatchadourian Une nouvelle vérification à la fin permet de vérifier la syntaxe du fstabfichier (par rapport à des fautes de frappe), sinon Linux pourrait ne pas démarrer correctement, ce qui causerait des problèmes de démarrage majeurs, en particulier sur les serveurs distants.
Kenorb

1
Ah je comprends maintenant. Vous devez le faire avant de redémarrer. Je me suis fait avoir par le démarrage.
Raffi Khatchadourian

13

Il existe un moyen graphique de faire cela en utilisant gparted.

Run Gparted avec:

sudo gparted

Si vous ne l'avez pas installé, vous pouvez l'installer en utilisant

sudo apt-get install gparted

Une fois que gparted est en cours d'exécution:

  1. Allouez la partition comme vous le feriez en cliquant avec le bouton droit de la souris sur un bloc non alloué et en cliquant sur new
  2. Formatez la partition en tant que linux-swap
  3. Cliquez avec le bouton droit sur la partition et cliquez surswapon

Une fois que vous avez terminé, une icône de clé devrait apparaître à côté du nom de votre partition.


de loin la réponse la plus simple
Shobi

1
Pour le rendre permanent, vous devez toujours éditer le fichier fstab comme dans la réponse de @ user4124
Madura Pradeep

1
La question dit déjà qu'ils le font.
Chai T. Rex

1
Cela ne répond pas du tout à la question.
Mook765

@ mook765, la question est "Comment ajouter un échange après l'installation du système?". Cela répond parfaitement à cette question.
Tayler

3

depuis linux.com, créez simplement un fichier d'échange, car il est plus flexible et vous pouvez ajuster de manière dynamique le nombre et la taille des stockages d'échange dont vous disposez. Cela vous permet également d'éloigner la partition d'échange de votre disque système, accélérant ainsi le système. De même, si vous utilisez plusieurs espaces de swap, ajustez leur priorité d'utilisation sur la même valeur. Par conséquent, le round-robin est utilisé pour les écrire, ce qui vous permet d'améliorer encore la vitesse.

ps je voudrais utiliser UUID au lieu de nom de périphérique, car il est facilement possible de changer l'ordre des périphériques si par accident vous laissez le stockage USB dans le port USB et retirez et rebranchez simplement les câbles sata - vous n'avez pas à vous soucier du lecteur connecté où.


Cette réponse a été la plus utile, car elle ne nécessite pas de re-partitionner le lecteur. Dommage, Ubuntu ne crée pas d’échange par défaut lorsque vous l’installez sur une nouvelle machine!
Ernie

2

Vous devez avoir un système de fichiers d'échange défini dans / etc / fstab. Il devrait contenir une ligne semblable à

UUID=67682d1b-a1d8-4377-a3dd-67340c141619 none            swap    sw              0       0

Bien sûr, vous devez substituer la valeur de UUID par l'identifiant de votre appareil.


comment puis-je l'avoir?

3
Vous pouvez utiliser le nom de périphérique à la place, comme / dev / sda1 (sans l’UUID).
Adam Byrtek

2

(remplacez le "x" dans sdax par le numéro de partition swap, par exemple: sda5)

remplacez "xxx" par le numéro UUID, par exemple: 67682d1b-a1d8-4377-a3dd-67340c141619)


su (donnez le mot de passe pour obtenir la permission root)

blkid / dev / sdax (get UUID) mkswap / dev / sdax (partition d'échange de format) swapon -U xxx

nano / etc / fstab (edit fstab) UUID = xxx aucun échange sw 0 0 (entrez et enregistrez ce texte pour rendre l'échange permanent) (puis fermez fsantab)


nano /etc/initramfs-tools/conf.d/resume (créez un fichier "resume" et enregistrez ce texte pour l'utiliser en mode veille prolongée / resume) RESUME = UUID = xxx (ctrl + x pour fermer nano) -> (y pour enregistrer)

redémarrer la machine

connectez-vous et maintenant vous pouvez tester hibernate / resume


2

Ceci est un didacticiel complet sur la création d’un lecteur Ram pour Ubuntu. Malheureusement .. les captures d'écran n'apparaissent pas ici par copier-coller .. Je les ajouterai plus tard, mais elles ne sont pas nécessaires.

La première chose à faire est de créer de l’espace pour votre disque dur. J'ai un système à double démarrage avec seulement un disque dur de 32 Go. Mon Ubuntu est en fait installé sur une carte SD (oui, une installation réelle et pas une chose Live Casper). Mon échange était également sur le SD et pourrait s'user rapidement. J'ai cherché comment changer le swap et trouvé cet article et n'ai pas aimé les réponses, j'ai donc fait un tutoriel pendant que je faisais le changement.

Si vous souhaitez simplement augmenter ou diminuer votre partition Swap, il vous suffit d'augmenter ou de diminuer la partition via votre gestionnaire de partition préféré. Ubuntu sait déjà où aller et sa taille est indépendante. Si vous souhaitez modifier l'emplacement ou effectuer un nouvel échange, lisez la suite. La première chose à faire est de réduire votre disque dur pour permettre l’échange. Si vous réduisez un disque avec le système Windows, alors vous feriez mieux d'utiliser Windows pour réduire le disque (il connaît son propre matériel). Si vous êtes sur un ubuntu pur, essayez de redimensionner à l'aide d'un USB Ubuntu en direct.

Instructions de redimensionnement de Windows:

  1. Sauvegardez votre système et défragmentez votre lecteur.
  2. Clic droit sur la barre de démarrage.
  3. Sélectionnez Gestion de disque
  4. Clic droit sur le lecteur correct
  5. Sélectionnez Réduire.
  6. Tapez le montant correct.

Si vous êtes dans Ubuntu. Assurez-vous d'utiliser les outils Ubuntu. Pour terminer l'allocation, j'utiliserai un Live USB amorçable d'Ubuntu qui inclut GParted. Une clé USB Live est le meilleur moyen d’utiliser Gparted pour quelque raison que ce soit, et vous devriez avoir une clé USB lors de votre première installation ou en créer une pour la garder à portée de main.

Taper en 2000 n’était pas autorisé car il n’y avait pas assez de place pour le faire, même si j’avais «défragmenté» le lecteur (je ne crois pas que Windows l’a réellement défragmenté). Avec quelques expériences, on m'a permis 1000. Ensuite, j'ai essayé à nouveau 1000 et cela a fonctionné. Je devrais remercier plus mon professeur de mathématiques de l’école primaire pour cela que les programmeurs de MS Windows. Cela m'a laissé avec 1,95 Go, ce qui est assez proche pour mes mathématiques à l'école primaire.

Formater la partition

Maintenant, je suis prêt à utiliser gparted pour formater cet espace en tant que lecteur d'échange correct. Si vous êtes sous Windows et que vous permutez entre Ubuntu et Windows, ASSUREZ-VOUS DE TENIR LA TOUCHE SHIFT lorsque vous cliquez sur "Alimentation" et "Arrêter". Ceci est très important, en particulier lorsque vous manipulez les détails du lecteur "C" dans un autre système d'exploitation. Si vous effectuez un double démarrage, vous devez déjà savoir que Windows effectue une fausse fermeture dans des circonstances normales. Certaines personnes ont désactivé "Fast Boot". Je n'ai pas ce choix sur mon système (Windows 10) et dois utiliser la touche Majuscule grâce à mon ami Google. Si vous démarrez avec une clé USB en direct et que vous ne pouvez pas monter le lecteur "C" (en cliquant dessus), vous ne vous êtes pas arrêté complètement. Rechargez des fenêtres et fermez-le à nouveau à l’aide de la touche Maj.

Vous êtes maintenant en mode Live Ubuntu et lisez ci-dessous:

Si vous êtes un Ubuntu pur et n’avez pas diminué sous Windows. Vous utiliserez l'option Redimensionner dans gParted. Si vous avez déjà réduit votre lecteur, ne faites pas l'étape de redimensionnement. Vous pouvez taper GParted dans la barre de tiret et obtenir l’application assez rapidement. Faites un clic droit sur le lecteur que vous souhaitez redimensionner.

Nous allons maintenant formater l’espace non alloué en tant que lecteur partitionné:

Avant:

Je ne savais pas quoi faire, alors j'ai regardé mon précédent Ram Drive sur la SD. Il est formaté en tant que Linux Swap. J'ai donc formaté ma nouvelle allocation que j'ai récemment réduite en tant que échange Linux également.
J'ai dit OK à la partition primaire et à la notice d'avertissement et cela a fonctionné!

Formater la partition

Après le format et la nouvelle partition

Il est une coïncidence que la vieille partition de swap sur l' sda appelé mmblk1p5et nouveau est aussi p5avec mmblk0en face. Le vôtre pourrait être p6 ou p7. Ne t'inquiète pas.

Le mmblk0est le disque physique et p est la partition sur ce disque physique. Et mmblk01est un autre disque physique, etc. (Ceci est mon SD) Avant que je ne travaille plus, j’ouvrais Windows à nouveau pour m'assurer que Windows toujours démarré. Vous n'avez pas besoin de faire cette étape si vous êtes paresseux ou sur une machine Ubuntu pure. Si Windows ne fonctionnait pas correctement, j'effacerais probablement Windows lors d'une nouvelle installation d'Ubuntu sur ce disque (avec un échange également). Si je cassais mon système, je n'aurais plus besoin de suivre cette procédure car je peux allouer le swap à la nouvelle installation. Tout s'est bien passé et Windows a démarré. Vous pouvez maintenant voir la nouvelle partition dans le gestionnaire de disque Windows: (Cliquez avec le bouton droit de la souris sur la barre de démarrage pour obtenir la gestion de disque)

Maintenant, attachez le swap à la routine de démarrage

Les réponses précédentes à cette question comportaient en fait des commandes swapon / off qui ne sont pas nécessaires et peuvent être complexes. Tout ce que vous avez à faire est de trouver le bon fichier et de diriger l'échange vers la nouvelle partition. Encore une fois, si vous ne faites que redimensionner la partition, vous n’avez rien à faire. Il est déjà configuré pour trouver la partition. La taille se fait automatiquement.

Si vous avez changé la partition ou effectuez un tout premier échange, lisez ci-dessous:

Laissez-moi vous dire que c'est la première fois que je fais ça. Je ne suis pas un geek UNIX et je préfère les outils graphiques. J'apprends et je croise les doigts pendant que je fais ce tutoriel. Tout s'est bien passé jusqu'à présent. À la racine de votre système se trouve un répertoire appelé etc. À l'intérieur de ce répertoire se trouve un fichier appelé fstab(aucune extension). Vous devrez éditer ce fichier avec les droits de super utilisateur "su". Avant de faire cela, nous avons besoin de l’UUID de la nouvelle partition de swap que vous avez créée avec le Live USB. Tapez sudo su Vous êtes maintenant en mode super utilisateur. Vous pouvez faire n'importe quoi (y compris effacer votre propre existence).

Tapez blkidet recherchez l'uuid de la nouvelle partition de swap. J'ai vu le mien ci-dessous et l'ai souligné:

Ne faites pas attention aux PartUID.

Maintenant, les autres personnes vont dire taper:

sudo gedit /etc/fstab

Cependant, j'ai essayé cela et il n'a pas trouvé le bon fichier (commentaires s'il vous plaît).

Je viens donc de taper gedit et de l'ouvrir de la façon la plus facile avec une interface graphique (Success!). Depuis que j'étais déjà en mode super utilisateur (sudo su), je suis autorisé par root à faire TOUT dans Gedit, y compris l'enregistrement du fichier après l'avoir modifié. Merveilleux! Avant de changer quoi que ce soit ou corrompu, enregistrez le fstab de sauvegarde appelé ... fstab.bak.

Faites la sauvegarde en utilisant l’interface utilisateur whimpy, choisissez l’enregistrement «Enregistrer sous» et ajoutez «bak» au fichier fstab.bak. Vérifiez qu'il est là avec une extension .bak. Les Geeks vous diront d’utiliser la commande terminal cp, mais nous, novices, ne pouvons pas trouver le fichier dans le terminal pour aller aussi loin. Comme tout traitement de texte, après la commande "Enregistrer sous", votre fichier actuel est maintenant le fstab.bak. Ouvrez le fichier réel que vous aviez auparavant, puis fermez le fichier de sauvegarde. Vérifiez que vous éditez le réel fstabsans extension. Si vous modifiez le fichier de sauvegarde, rien ne se passera lors du redémarrage. De plus, votre copie de sauvegarde ne sera pas une sauvegarde réelle de l'original.

Mon fstabfichier d' origine ressemble à ceci:

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/mmcblk1p6 during installation
UUID=a611601a-6ea8-4e34-9859-42a2470cac29 /               ext4    errors=remount-ro 0       1
# /boot/efi was on /dev/mmcblk0p1 during installation
UUID=00F2-C0CE  /boot/efi       vfat    umask=0077      0       1
# swap was on /dev/mmcblk1p5 during installation
UUID=8fb20159-62e4-41a3-8550-791c7a66c328 none            swap    sw              0       0

La dernière ligne (que j’ai faite en rouge pour vous) contient les informations de swap d’origine utilisées probablement au démarrage. À partir de la commande blkid précédente, je pouvais voir mon nouveau UUID de lecteur. Copiez cette phrase en mettant en surbrillance le texte dans le terminal, puis en cliquant avec le bouton droit de la souris et en choisissant Copier. Collez cette phrase dans un autre éditeur distinct sans sudroits en tant que bloc-notes (vous pouvez utiliser Libre Office et les geeks, nano). Cette étape vous permet d'obtenir facilement le bon texte sans les guillemets, ce qui vous permet de coller facilement dans le fstabfichier. Vous voulez changer ce fichier le moins possible.

New UUID
UUID="709ea197-e6fb-428b-9c1f-4b258452b10c"

Ainsi, mon nouvel UUID est répertorié en rouge ci-dessus. Tout ce que j'ai à faire est de changer l'uuid pour l'échange. Si vous n'avez pas de lecteur d'échange, copiez ma ligne dans le fichier fstab ci-dessus, puis ajoutez l'uuid approprié à partir de la commande blkid précédente. (choisissez le bon uuid s'il vous plait!)
S'il s'agit de votre première ligne Swap, assurez-vous de bien inclure la ligne complète avec les éléments supplémentaires

none            swap    sw              0       0

Ne vous préoccupez pas de l'espacement exact.

Mon nouveau fichier ressemble à ceci: Remarque J'ai ajouté un commentaire au-dessus de ma modification. Le #caractère signifie qu'il s'agit d'un commentaire.

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/mmcblk1p6 during installation
UUID=a611601a-6ea8-4e34-9859-42a2470cac29 /               ext4    errors=remount-ro 0       1
# /boot/efi was on /dev/mmcblk0p1 during installation
UUID=00F2-C0CE  /boot/efi       vfat    umask=0077      0       1
# swap was on /dev/mmcblk1p5 during installation  NOW changed to mmcblk0p5
UUID= 709ea197-e6fb-428b-9c1f-4b258452b10c  none            swap    sw              0       0

Ne collez pas les guillemets. Ne pas avoir d'espaces après le =signe.

Enregistrez votre fichier.

Ouvrez-le à nouveau, juste pour vous assurer que vos modifications ont été enregistrées. Fermez gedit et terminal avec des sudroits dangereux que les geeks vous réprimanderont (parce que c'est un travail facile avec ... et facile de détruire des choses aussi).

Rebotte et et croise les doigts!

J'ai redémarré puis j'ai vérifié si mon échange fonctionnait correctement en consultant l'application de performance du système. J'ai toujours eu un lecteur d'échange! Mais était-ce le nouveau ou l'ancien? Je ne pouvais pas vérifier que mon nouveau disque était bien chargé car le nouveau est de la même taille que l'ancien. Par conséquent, j’ai tapé: swapon(NE PAS Taper autre chose que swapon et il ne listera que le swap pour vous: safe). Maintenant, je vois mon nouveau lecteur mmblk0p5qui correspond au travail UUID sur lequel j'ai effectué fstab. Mon disque principal de 32 Go a pris effet:


Ceci conclut ce tutoriel d’un utilisateur novice qui n’a jamais fait cela auparavant. La moitié de la raison pour laquelle j'ai fait ce tutoriel était pour que les Geeks qui nous aident (et merci) puissent voir comment aider les utilisateurs novices. Je soupçonnais que les réponses précédentes étaient trompeuses et j'ai décidé de faire un tutoriel tout en faisant mon travail ... En devinant les autres réponses qui étaient utiles, j'ai conclu que tout ce que j'avais à faire était de modifier le fstabfichier et de redémarrer. Tout a bien fonctionné et j'ai toujours Windows 10 et je n'ai pas encore vidé mon système. Si quelqu'un sait comment partager un pagefile.sysfichier d'échange Windows sous Linux, je serais intéressé, car 2 Go est pris pour cela sous Windows et l'espace disque est très cher sur ma machine de 32 Go.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.