Outils pour utilisateurs

Outils du site


linux:memory (lu 88697 fois)

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
linux:memory [12-06-2019 13:06] – [Qui utilise le swap] edmc73linux:memory [23-10-2025 21:23] (Version actuelle) – [Créer une swap dans un fichier] edmc73
Ligne 38: Ligne 38:
 ==== Créer une swap dans un fichier ==== ==== Créer une swap dans un fichier ====
  
-Rajouter de la swap grâce à un fichier de swap. Nous allons créer un fichier de 2Go +Rajouter de la swap grâce à un fichier de swap. Nous allons créer un fichier de 200Go 
-  dd if=/dev/zero of=/file.swap bs=1G count=2+  dd if=/dev/zero of=file.swap bs=1G count=200
 Nous formatons ce fichier avec le système swap Nous formatons ce fichier avec le système swap
-  mkswap -c /file.swap +  mkswap -c file.swap  
 + 
 +<code> 
 +mkswap: avertissement : la vérification des blocs défectueux du fichier d’espace d’échange n’est pas prise en charge : file.swap 
 +mkswap: file.swap : droits 0644 non sûrs, 0600 conseillées. 
 +Configure l'espace d'échange (swap) en version 1, taille = 200 GiB (214748360704 octets) 
 +pas d'étiquette, UUID=0261ab32-d95c-4040-9c7a-5a9ac4920b7a 
 +</code> 
 +Si vous voulez retrouver l'UUID, utilisez la commande suivante 
 +  swaplabel file.swap 
 + 
 Il est nécessaire de mettre les droits adéquates Il est nécessaire de mettre les droits adéquates
-  chmod -v 600 /file.swap+  chmod -v 600 file.swap
 On ajoute ce fichier à la swap de façon instantanée On ajoute ce fichier à la swap de façon instantanée
-  swapon /file.swap+  swapon file.swap
  
 Pour supprimer ce fichier de la swap Pour supprimer ce fichier de la swap
-  swapoff /file.swap+  swapoff file.swap 
 + 
 +Ajouter dans /etc/fstab 
 +  /var/cache/swap/file.swap none swap sw 0 0 
 + 
 +(A noter que mettre le UUID dans le fstab ne fonctionne pas car ce n'est pas une partition)
  
 ==== Créer une swap en RAM ==== ==== Créer une swap en RAM ====
Ligne 89: Ligne 105:
 Une variante qui permet de récupérer l'Uid et de le résoudre pour avoir le nom de l'utilisateur Une variante qui permet de récupérer l'Uid et de le résoudre pour avoir le nom de l'utilisateur
   for file in /proc/*/status ; do awk '/^(VmSwap|Uid|Pid|Name)/{if($1=="Uid:"){ system("echo -n $(id -nu " $2")"); printf "\t";} else printf $2 "" $3 "\t"}END{ print ""}' $file; done | sort -t$'\t' -k4 -h   for file in /proc/*/status ; do awk '/^(VmSwap|Uid|Pid|Name)/{if($1=="Uid:"){ system("echo -n $(id -nu " $2")"); printf "\t";} else printf $2 "" $3 "\t"}END{ print ""}' $file; done | sort -t$'\t' -k4 -h
 +
 +===== Quels fichiers en RAM Cache =====
 +
 +Utilisez ce script => https://github.com/hoytech/vmtouch
 +
 +**vmtouch** permet d'afficher si un fichier ou plusieurs sont stocké en ram. Il permet aussi de forcer un fichier à se mettre en ram plus tout un tas d'options => https://github.com/hoytech/vmtouch/blob/master/vmtouch.pod
 +
 +
 +Exemple, ici on voit que le fichier n'est pas en cache
 +
 +<code>
 +[root@xt ~]# vmtouch -v /usr/local/var/orca/procallator.cfg
 +/usr/local/var/orca/procallator.cfg
 +[     ] 0/5
 +
 +           Files: 1
 +     Directories: 0
 +  Resident Pages: 0/5  0/20K  0%
 +         Elapsed: 0.000215 seconds
 +</code>
 +
 +Maintenant, on peut le forcer à se mettre en cache
 +<code>
 +[root@xt ~]# vmtouch -vt /usr/local/var/orca/procallator.cfg
 +/usr/local/var/orca/procallator.cfg
 +[OOOOO] 5/5
 +
 +           Files: 1
 +     Directories: 0
 +   Touched Pages: 5 (20K)
 +         Elapsed: 0.005313 seconds
 +</code>
 +
 +On vérifie
 +<code>
 +[root@xt ~]# vmtouch -v /usr/local/var/orca/procallator.cfg
 +/usr/local/var/orca/procallator.cfg
 +[OOOOO] 5/5
 +
 +           Files: 1
 +     Directories: 0
 +  Resident Pages: 5/5  20K/20K  100%
 +         Elapsed: 0.000241 seconds
 +</code>
 +
 +Commande pour afficher la liste des fichiers d'un répertoire qui sont en RAM
 +  vmtouch -v * | grep -B 1 "^.\[.*[^ 0]/"
 +Ou au contraire qui ne sont pas en RAM
 +  vmtouch -v * | grep -B 1 "^.\[.* 0/"
 +
  
  
linux/memory.1560344769.txt.gz · Dernière modification : de edmc73