Situation: augmentation de la taille du swap ( /dev/sda3
) supérieure à Ram (8 Go) lorsque HD 128 Go
Motivation: 8 Go de RAM est trop peu; 30 Go d'espace libre sur mon SSD; Je veux transformer 20 Go en swap SSD
Caractéristiques du système
Échange non immuable / modifiable. Je ne trouve aucune preuve pourquoi
/mnt/.swapfile
devrait être immuable, vous n'avez donc pas besoin de modifier les attributs de fichier du fichier d'échangesudo lsattr /mnt/.swapfile -------------e-- /mnt/.swapfile
La commande
sudo fdisk -lu /dev/sda
donneDisk /dev/sda: 113 GiB, 121332826112 bytes, 236978176 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disklabel type: gpt Disk identifier: 082F85CA-EE3E-479C-8244-858B196FA5BA Device Start End Sectors Size Type /dev/sda1 2048 4095 2048 1M BIOS boot /dev/sda2 4096 220323839 220319744 105.1G Linux filesystem /dev/sda3 220323840 236976127 16652288 8G Linux swap
La commande
df -h
donneFilesystem Size Used Avail Use% Mounted on udev 3.9G 0 3.9G 0% /dev tmpfs 793M 9.4M 784M 2% /run /dev/sda2 104G 74G 25G 75% / tmpfs 3.9G 54M 3.9G 2% /dev/shm tmpfs 5.0M 4.0K 5.0M 1% /run/lock tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup tmpfs 793M 64K 793M 1% /run/user/1000
Allouez plus d'espace disque pour Swap in
/dev/sda3
.
Mon flux de travail infructueux pour la tâche lorsque HD et Swap sur la même partition, /dev/sda3
masi@masi:~$ sudo -i
root@masi:~# swapoff /dev/sda3
root@masi:~# swapon
[blank]
root@masi:~# dd if=/dev/zero of=/dev/sda3 bs=20480 count=1M
dd: error writing '/dev/sda3': No space left on device
416308+0 records in
416307+0 records out
8525971456 bytes (8.5 GB, 7.9 GiB) copied, 18.7633 s, 454 MB/s
root@masi:~# mkswap /dev/sda3
Setting up swapspace version 1, size = 8 GiB (8525967360 bytes)
no label, UUID=245cb42c-1d4e-4e21-b544-16b64af962d6
root@masi:~# swapon -p 99 /dev/sda3
root@masi:~# swapon
NAME TYPE SIZE USED PRIO
/dev/sda3 partition 8G 0B 99
root@masi:~# vi /etc/fstab
...
HD et échange sur la même partition - Workflow actuel [Ijaz, cas, FarazX]
Fusion. Utilisez fallocate
au début à la place dd
car pas besoin de mettre des zéros
masi@masi:~$ sudo fallocate -l 20G /mnt/.swapfile
masi@masi:~$ sudo mkswap /mnt/.swapfile
Setting up swapspace version 1, size = 20 GiB (21474832384 bytes)
no label, UUID=45df9e48-1760-47e8-84d7-7a14f56bbd72
masi@masi:~$ sudo swapon /mnt/.swapfile
swapon: /mnt/.swapfile: insecure permissions 0644, 0600 suggested.
masi@masi:~$ sudo chmod 600 /mnt/.swapfile
masi@masi:~$ free -m
total used free shared buff/cache available
Mem: 7925 1494 175 196 6255 5892
Swap: 28610 0 28610
Ajoutez la ligne suivante dans votre /etc/fstab
qui est mieux que d'ajouter la chose à vos runlevels ( /etc/rc.local
), où je mets le fichier d'échange /mnt/.swapfile
pour maintenir la philosophie Linux / Unix et maintenir l'intégrité de mes scripts de sauvegarde système; Si vous passez à un SSD, utilisez l' discard
option pour que les blocs soient coupés à chaque redémarrage, donc passw
# http://unix.stackexchange.com/a/298212/16920
# http://unix.stackexchange.com/a/298543/16920
# If swap is on SSD, trim blocks each time at startup.
/mnt/.swapfile none swap defaults,discard 0 0
# If swap on External HDD, just use sw.
#/media/masi/SamiWeek/.swapfile none swap sw 0 0
Sources
- Comment augmenter l'espace de swap? https://askubuntu.com/a/178726/25388 Discussion générale sur l'augmentation de l'espace de swap pour les débutants.
- Linux Partition HOWTO for HDDs, not SSDs: 4. Partitioning requirements. http://www.tldp.org/HOWTO/Partition/requirements.html Ne mettez donc pas votre swap sur les pistes externes des SSD mais utilisez des
defaults,discard
options pour découper vos blocs comme proposé par @cas.
Système: Linux Ubuntu 16.04
Noyau Linux 64 bits : 4,6
modules Linux: wl
Matériel: Macbook Air 2013-mid
Ram: 8 Go
SSD: 128 Go
la source
fdisk -lu /dev/sda
?chflags
sur BSD et OS X, et nous avons une commande sur linux appeléechattr
, vous pouvez rendre vos fichiers et répertoires de plus en plus sécurisés et immuable en définissant certains attributs, voici un guide sur tecmint.com , j'espère que cela peut vous aider.Réponses:
Vous voulez simplement augmenter la taille du swap sur votre système en utilisant l'espace de
sda2
. Votresda2
Vous pouvez ajouter un espace d'échange supplémentaire à votre système en utilisant un fichier d'échange créé sur
/
celui-ci qui utilisera votresda2
. Faites juste:puis faites:
et vérifiez, vous échangez l'espace augmentera de ce montant en utilisant
free -m
et oui, pour l'activer au démarrage, ajoutez l'entrée dans
/etc/fstab
la source
/etc/fstab
vous pouvez éviter les entrées dansrc.local
. Mettez le fichier d'échange quelque part comme/mnt/.swap
et vous n'aurez plus à vous en soucierGestion de la mémoire
Pour afficher le résumé d'utilisation du swap par votre appareil:
Pour afficher la quantité de mémoire physique et d'échange libre et utilisée:
Pour préallouer de l'espace à / swapfile, vous pouvez utiliser la ligne ci-dessous:
Modifier l'autorisation et créer / activer l'échange
Vous pouvez également améliorer la sécurité de vos fichiers en modifiant vos attributs de fichier à l' aide de
chattr
. Je vous recommande de lire sa page de manuel ou de lire ce guide sur le site Web de Tecmint .Vérifiez qu'il est activé en affichant la sortie de la commande
cat /proc/swaps
, utilisez lafree
commande ouPour lui permettre au démarrage , modifier
/etc/fstab
(informations statiques sur le système de fichiers) pour inclure les éléments suivants où les champs sontfs_spec
,fs_file
,fs_vfstype
,fs_mntops
,fs_freq
etfs_passno
, dont vous pouvez lire parman 5 fstab
:sw
lors de l'échange vers un SSD, mais de manière àdefaults,discard
ce que les blocs de mémoire soient tronqués à chaque démarrage, voir la réponse ici sur la façon de procéder au recouvrement des erreurs et au swapoff en cas d'erreur / d'avertissement? L'discard
option fonctionne définitivement sur les partitions.la source
dd
car vous pourriez le faire mal si vous ne savez pas ce que vous faites,dd
est une commande super puissante. Et l'espace d'échange AFAIK sous Linux est utilisé lorsque la quantité de mémoire physique (RAM) est pleine, et sachez qu'elle n'a pas de point de montage. Je pense donc que peu importe où il se trouve,fstab
exécutantman 5 fstab
. Bonne chance mec.lsattr
, et comme je l'ai mentionné, vous pouvez les définir parchattr
. Par exemple, si vous voulez le rendre immuable, vous pouvez utiliserchattr +i /mnt/.swapfile
, ou dans BSD ou OS X, vous pouvez utiliserchflags uchg yourFile
. Vous disposez de nombreuses options d'attribut, par exemple, lorsqu'un fichier avec uns
ensemble d'attributs est supprimé, ses blocs seront mis à zéro et réécrits sur le disque. Mais je vous recommande de lire sa page de manuel et de surfer sur le net. Ce n'est pas aussi simple qu'il y paraîtchattr
, et vous devez savoir ce que vous allez vraiment faire!Vous vous demandez: « Comment allouer plus d'espace pour permuter et augmenter sa taille plus que Ram? », Ne dit rien sur la modification de la configuration de votre système.
Votre fdisk et votre sortie gratuite nous disent:
La partition de swap n'est pas une partition étendue, ce qui facilite un peu l'augmentation de la taille.
Outils nécessaires:
Recherchez ici un emplacement de la dernière version gratuite de Parted Magic
Instruction pour redimensionner les partitions avec gparted
N'oubliez pas que vous modifiez votre disque et vos partitions à un faible niveau et que toute erreur ou plantage pourrait endommager vos données.
Sauvegardez vos données en premier.
la source
gparted
ici car vous pouvez mettre un tampon sur le même disque que celui où se trouve votre système d'exploitation./dev/sda2
et/dev/sda3
sont des partitions séparées.swapon
ou similaire. Lors du retrait de l'appareil, effectuez une opérationswapoff
similaire. L'état d'échange de l'appareil ne sera pas mémorisé lors du redémarrage du système d'exploitation.