Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

fichier de swap dynamic

11 réponses
Avatar
C. Mourad Jaber
Bonjour,

Je cherche une solution de fichier swap dynamique pour debian...

Ayant un laptop avec un SSD je pense que la réservation d'un espace fixe de swap n'est pas
optimal, surtout quand on a 16G de ram !

Cependant, je ne voudrai pas non plus me couper d'une possibilité de swapper si la mémoire
venait à manquer (j'utiliser des VM et des outils de développement assez lourds (genre
intelliJ) )

J'ai vu 2 solutions :

- swapspace

- swapd

Les 2 semblent assez anciennes (2012/2014) avec peu ou pas de développement depuis...

Est-ce que quelqu'un utilise une solution similaire ?

Quels retours d'expériences (pro/cons) ?

Merci

Mourad

10 réponses

1 2
Avatar
JF Straeten
Lo,
On Thu, Jan 04, 2018 at 03:30:24PM +0100, C. Mourad Jaber wrote:
Je cherche une solution de fichier swap dynamique pour debian...
Ayant un laptop avec un SSD je pense que la réservation d'un espace
fixe de swap n'est pas optimal, surtout quand on a 16G de ram !
Cependant, je ne voudrai pas non plus me couper d'une possibilité de
swapper si la mémoire venait à manquer (j'utiliser des VM et des
outils de développement assez lourds (genre intelliJ) )

[...]
Est-ce que quelqu'un utilise une solution similaire ?

Je fais bêtement ça si c'est nécessaire :
dd if=/dev/zero of=./add.swap bs24M count=1
mkswap add.swap
swapon add.swap
Mais c'est tellement rare (et avec 16G, hein... :-)) que je n'ai
jamais automatisé...
Hih,
--
JFS.
Avatar
Cyrille
Bonjour
voilà la solution que j'ai retenue
========================= ======
N'utiliser le SWAP qu'en cas de saturation de la mémoire vive
Creer avec les droits root ce fichier
cat /etc/sysctl.d/60-swap-SSD.conf
# GESTION DU SWAP AVEC SSD
# SWAP QUE SI MEMOIRE UTILISEE >90%
vm.swappiness
Vérifier sa présence
ls /etc/sysctl.d/
10-console-messages.conf 10-link-restrictions.conf 10-ptrace.conf
99-sysctl.conf 10-ipv6-privacy.conf 10-magic-sysrq.conf
10-zeropage.conf README 10-kernel-hardening.conf
10-network-security.conf 60-swap-SSD.conf
Vérifier sa prise en charge
sudo sysctl | grep swap
vm.swappiness = 10
Attribuer les bonnes options sur le système de fichier
C'est à dire les options noatime et nodiratime sur la racine
Et mettre les fichiers temporaires dans la mémoire vive
cat /etc/fstab
# Ajout de l'option noatime, nodiratime pour le SSD
#
UUIDŽbae76c-e3f3-4ab6-9b6e-8b3531d771ea / ext4
errors=remount-ro,noatime,nodiratime 0 1 #
# /home was on /dev/sda6 during installation
# Ajout de l'option noatime, nodiratime pour le SSD
UUIDò40b890-234c-414b-8cdd-654ee80744fe /home ext4
errors=remount-ro,noatime,nodiratime 0 2 #
# swap was on /dev/sda5 during installation
# Swap configurer avec option vm.swappiness=0
#
UUIDÒ33f1ff-6ebb-4ef2-a59f-ff95a2db7228 none swap
sw 0 0 #
# SSD : Placer le /tmp en memoire
tmpfs /tmp tmpfs
defaults,size=4g 0 0
Rebooter
Vérifier que ça fonctionne
free -m
total utilisé libre partag é
tamp/cache disponible Mem: 7856
506 5981 108 1367 6915 Partition
d'échange: 3814 0 3814
Le Thu, 4 Jan 2018 15:30:24 +0100,
"C. Mourad Jaber" a écrit :
Bonjour,
Je cherche une solution de fichier swap dynamique pour debian...
Ayant un laptop avec un SSD je pense que la réservation d'un espace
fixe de swap n'est pas optimal, surtout quand on a 16G de ram !
Cependant, je ne voudrai pas non plus me couper d'une possibilité de
swapper si la mémoire venait à manquer (j'utiliser des VM et des
outils de développement assez lourds (genre intelliJ) )
J'ai vu 2 solutions :
- swapspace
- swapd
Les 2 semblent assez anciennes (2012/2014) avec peu ou pas de
développement depuis...
Est-ce que quelqu'un utilise une solution similaire ?
Quels retours d'expériences (pro/cons) ?
Merci
Mourad

--
Makhnovtchina, Makhnovtchina
Tes drapeaux sont noirs dans le vent
ils sont noirs de notre peine
ils sont rouges de notre sang...
Avatar
Michel
Le 04/01/2018 à 20:30, Cyrille a écrit :
[ . . . ]
Attribuer les bonnes options sur le système de fichier
C'est à dire les options noatime et nodiratime sur la racine
Et mettre les fichiers temporaires dans la mémoire vive

Sauf erreur de ma part, il me semble que l'option noatime inclut nodirtime.
Michel
Avatar
Haricophile
Le Thu, 04 Jan 2018 20:26:46 +0100,
Gilles Mocellin a écrit :
Je ne le ferais pas sur un portable. Je ne suis pas sur que
l'hibernation fonctionne.

On peut faire de l'hibernation sans swap, mais surtout as-t-on
vraiment besoin d'hibernation a l'époque des disques SSD et des ordis
qui peuvent rester de nombreuses heures en veille simple ?
Avatar
Haricophile
Le Fri, 05 Jan 2018 22:45:27 +0100,
Gaëtan Perrier a écrit :
Ah bon ? Je ne savais pas. Comment ça fonctionne ?

On hiberne dans un fichier comme dans Windows ;)
Il doit y avoir un paquet qui traîne et la doc qui va avec. Je n'ai
jamais essayé parce que en fait je n'ai jamais beaucoup utilisé
l'hibernation. J'ai d'ailleurs une confiance assez limitée : En cas de
problème, on perd le contenu du travail en cours tout aussi bien que s ur
une coupure, voire mieux.
Mais sinon tout le monde n'a pas un ordi dernier cri qui tient
plusieurs en veille. Il se peut aussi que la batterie soit déjà bien
vide au moment de passer en veille, etc.
Le passage en hibernation me semble donc fondamental et peut éviter
une perte de données sur un document que l'on aurait
malencontreusement oublié de sauvegarder

Euh... moi je ne quitte pas mon clavier même pour quelques secondes
sans au moins faire un Ctrl-S (;^_^)
Avatar
Pascal Hambourg
Merci de laisser suffisamment de contexte et de ne pas trop tailler dans
les citations afin que les lecteurs comprennent de quoi il s'agit.
Le 05/01/2018 à 23:03, Haricophile a écrit :
Gaëtan Perrier a écrit :
Le vendredi 05 janvier 2018 à 22:39 +0100, Haricophile a écrit :
On peut faire de l'hibernation sans swap


Ah bon ? Je ne savais pas. Comment ça fonctionne ?

On hiberne dans un fichier comme dans Windows ;)

Dans un fichier de swap. Ça reste un swap.
Ou alors tu parles de tuxonice (ex-Suspend2) qui serait capable
d'hiberner dans un fichier normal ? Mais il nécessite un noyau patché.
Il doit y avoir un paquet qui traîne et la doc qui va avec.

Le seul autre paquet gérant l'hibernation que je connais est uswsusp
avec s2disk, mais si j'ai bien compris sa doc, il doit utiliser un swap,
en partition ou en fichier (mais pas forcément le swap actif
contrairement à l'hibernation native du noyau).
De toute façon, les fichiers de swap, ça pue.
Avatar
Pierre L.
This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--x0FZoUb2ZbqPXw75e8I6IRwWyBNsYFMQw
Content-Type: multipart/mixed; boundary="lIB3WdPAtCfuZRPvf0t6Iyv841yFKRpAv";
protected-headers="v1"
From: "Pierre L."
To:
Message-ID:
Subject: Re: fichier de swap dynamic
References:


In-Reply-To:
--lIB3WdPAtCfuZRPvf0t6Iyv841yFKRpAv
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: fr-FR
Ha bon, pourquoi ?
Le 06/01/2018 à 11:10, Pascal Hambourg a écrit :
De toute façon, les fichiers de swap, ça pue.

--lIB3WdPAtCfuZRPvf0t6Iyv841yFKRpAv--
--x0FZoUb2ZbqPXw75e8I6IRwWyBNsYFMQw
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEqp6CU/crahjY2x3n6briFe8NSUUFAlpg+zEACgkQ6briFe8N
SUUJHQ//U4cvgJFKCopzVeJZ9B4T+mcIkMd8/1M5KbNSbq4t5Ui0RC1fDkou5h78
Is3d8VH+FloAFMtSMCMoSn37TeU6UnXamkq/oY2uUDchDTBYk5TTBY1j4+HfWALT
XCCv27sOOoBGNUDO0Hnwy34qV7sYMddQkHKcLpJRDifv+ZwaSB891xe0OOU7EDmE
G2IVotiTSV4xl9oLu/iMHXeBzwGr12YMWgQneQikGXliftDnAc4ghPLre4uT2piM
249qm1MQnelL6hTvPly4F/k8Bk2qQJIJPb9qfmaNLtCQvzBDQvakhIKtiFRB11rX
RHs11i6iu8D6/XjxlnDplzGgxgwkTUTtwAhq/rRgWZ9evju5lJuM/AmlBViNcmou
dNU+0G+hBew1C1O93BoLjyK4HCqUeN+q6GOlNiwE/E7XzR+/yrajiYaa3+lRQZJU
7dC5H1WmhiLpAca0diHViPQpwypaCYfvvlZBUAHqym+JhdtpsgKpaWLHdOTzjxsT
mSxMdxACe5/4pkbry9VAVer9Yruz/tOJuwIlSyqTPMfGSqbQY4AYBxM+SirIZ0Jl
F1D7AgJsyUQLcYzNKWUT3+fjB++sK3oWkhr6DDr2dQBH7xjOTzrR33ev9kd/yuSV
u1z31k+LbVKRzRc6YRlPOGSaL0tezS/hJoNlSHpXh7IAHG0HfVo =4HdY
-----END PGP SIGNATURE-----
--x0FZoUb2ZbqPXw75e8I6IRwWyBNsYFMQw--
Avatar
Pascal Hambourg
(Remise dans l'ordre de la citation et de la réponse)
Le 18/01/2018 à 20:53, Pierre L. a écrit :
Le 06/01/2018 à 11:10, Pascal Hambourg a écrit :
De toute façon, les fichiers de swap, ça pue.

Ha bon, pourquoi ?

Parce que c'est un sale hack. Un fichier de swap ne doit pas avoir de
trous (sparse file) mais doit être entièrement alloué. Lorsque le noyau
accède à un fichier de swap il court-circuite le système de fichiers.
Cela ne marche que dans l'hypothèse où le système de fichiers ne s'amuse
pas à déplacer les blocs qui contiennent le fichier de swap. Et ça ne
marche pas avec tous les types de systèmes de fichiers, notamment btrfs.
Cf. les diverses restrictions dans les notes de la page de manuel de
swapon(8).
Lorsqu'on utilise un fichier de swap pour l'hibernation, on doit
spécifier non pas le fichier lui-même mais la partition qui le contient
et l'offset du fichier par rapport au début de la partition. Si ça ne
sent pas le hack à plein nez...
Avatar
Haricophile
Le Thu, 18 Jan 2018 22:35:56 +0100,
Pascal Hambourg a écrit :
Lorsqu'on utilise un fichier de swap pour l'hibernation, on doit
spécifier non pas le fichier lui-même mais la partition qui le
contient et l'offset du fichier par rapport au début de la partition.
Si ça ne sent pas le hack à plein nez...

C'est pas le fonctionnement normal d'un fichier swap ça ? Un swap ne
contient pas de système de fichier.
Je ne vois pas où il y a du hack, le hack c'est le disque "virtuel"
avec des systèmes de fichiers modernes et leur adressage indirect qui
s'affranchit de la position physique des données et des tailles de
blocs. Tu devrait regarder comment on adressait les premier disques
durs...
Avatar
Fabien R
On 05/01/2018 22:45, Gaëtan Perrier wrote:
Mais sinon tout le monde n'a pas un ordi dernier cri qui tient plusieurs en
veille. Il se peut aussi que la batterie soit déjà bien vide au moment de
passer en veille, etc.
Le passage en hibernation me semble donc fondamental et peut éviter une perte
de données sur un document que l'on aurait malencontreusement oublié de
sauvegarder

+1
J'utilise le package hibernate (en mode disk ou ram).
Ca se configure facilement et ça marche nickel.
--
Fabien
1 2