[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Activating swap...



Alain Vaugham a écrit :
| - si tu as l'option "quiet" dans la ligne de commande du noyau, retire | l'option pour voir tous les messages.
Cette option était présente dans /boot/grub/menu.lst. Je l'ai supprimée.
Maintenant ça donne ça ---> http://www.vaugham.eu/2009-04-16_dmesg
- il y a quelque chose de pas très net avec "mttr" mais cela n'a peut-être aucun rapport.
Tu peux essayer d'ajouter l'option "enable_mtrr_cleanup" à la ligne de commande de ton noyau, mais je ne suis pas certain qu'elle resolve le problème. Je ne maitrise pas ce cote obscur.

- le "cannot reserve MMIO region" est encore là.
- le "Error: Driver 'pcspkr'" n'a probablement aucun rapport avec la swap.
Globalement, je suis incapable d'identifier un quelconque message d'erreur qui me mettrait sur une piste. Le /var/log/syslog ressemble beaucoup à la sortie de dmesg. J'en ai gardé une copie aussi.
Je ne vois pas non plus de piste.

| - reformate ta partition de swap avec mkswap
ça, je me le réserve juste avant de mettre vraiment les mains dans le cambouis. Je diagnostique d'abord. Et puis comme c'est un phénomène aléatoire, il va falloir attendre qu'il veuille bien se manifester à nouveau.

Ca peut eventuellement ne pas être totalement aléatoire (si le vrai hasard existait dans nos machine, on n'aurait pas le pool d'entropie)... En fait, c'est aussi le swap qui sert à gérer l'hibernation (mise en veille prolongée). Ton noyau utilise cet espace pour y sauvegarder la totalité de la mémoire de ta machine et l'état des processus avant de couper la lumière. Ensuite, au redémarrage, ton noyau se charge, charge certainement l'initrd (sauf si tu t'es amusé à personnalisé cette etape). L'initrd vérifie s'il y a une image mémoire compressée dans la partition de swap. Si oui, elle la recharge et lui passe la main, sinon, c'est un démarrage normal. Il est possible que ton probleme aléatoire se produise quand ta machine passe par une mise en hibernation. Ce serait une autre piste.

| - essaye de l'activer manuellement (ajoute l'option noauto dans | /etc/fstab pour ne pas l'activer automatiquement au démarrage et utilise | swapon <partition> ou swapon -a) et de regarder les messages dans | /var/log/syslog et avec la commande dmesg
Je n'avais jamais fait ce coup là à une partition :
/dev/hda9       none            swap    sw,noauto              0       0
# reboot
# df -h
Me confirme qu'il n'y a plus de partition swap
 # swapon /dev/hda9
Ne provoque aucune nouvelle entrée dans /var/log/syslog
 # swapon -a
Ne provoque aucune nouvelle entrée dans /var/log/syslog non plus
# df -h
Aucune partition swap n'a été montée.
Le swapon n'a donc rien provoqué.
Une partition de swap n'est pas montée, elle ne contient pas de système de fichier, elle est ajoutée à la mémoire disponible du systeme. Tu peux donc la voir dans /proc/meminfo ou plus simplement avec la commande "free"

Je ne suis pas sûr d'avoir bien géré cette manip-là...
J'aurai dû constater quoi dans les logs?
Et si le système n'a pas eu besoin de swapper, il se serait quand même passé quelque chose?
Oui, la quantité de mémoire dispo n'est pas la même. Voici un exemple sur mon portable :
aspire:~# free
             total       used       free     shared    buffers     cached
Mem:       1022300     753600     268700          0      25480     313916
-/+ buffers/cache:     414204     608096
Swap:            0          0          0
aspire:~# swapon -a
aspire:~# free
             total       used       free     shared    buffers     cached
Mem:       1022300     753852     268448          0      25556     313916
-/+ buffers/cache:     414380     607920
Swap:       499992          0     499992

Mais, j'ai dit au système de ne jamais utiliser l'espace de swap par anticipation, uniquement si c'est vraiment nécessaire, car je n'ai que des disques SSD ou SD (mémoire Flash avec un nombre de cycles d'ecritures limité) sur mon PC. Le Swap ne me sert qu'a l'hibernation et son occupation et toujours proche de 0 (chiffre du milieu en bas).

# swapoff -a
# mkswap -c /dev/hda9
Setting up swapspace version 1, size = 3997446 kB
no label, UUID=494405a9-8237-4920-bedf-4ddee1b2a00b
# swapon -a /dev/hda9
swapon: /dev/hda9: Périphérique ou ressource occupé
Je ne sais pas pourquoi tu as eu cette erreur

| - vérifie que la partition est bien de type swap avec cfdisk
Avec cfdisk, c'est bizarre un type de fichier : Free Space.
C'est quand même normal pour de la swap?
fdisk est plus rassurant (fdisk -l le-bon-disque) mais j'ai un doute avec cette commande (fdisk - l la-swap)
Le man dit qu'il ne faut pas utiliser fdisk, mais cfdisk ou sfdisk.
C'est peut-être là le problème. Le cfdisk, il m'aurait laissé une table pas très propre... ;-)
[...]
Mais je ne suis qu'à moitié convaincu surtout si cette commande est valide :
# fdisk  -l /dev/hda9
Disk /dev/hda9: 3997 MB, 3997453824 bytes
255 heads, 63 sectors/track, 485 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00000000
Disk /dev/hda9 doesn't contain a valid partition table
===> Alors... bingo???

Non, ces commandes ont besoin du disque, pas d'une partition. tu peux aussi utiliser sfdisk pour un accès bien basique, mais bien pratique car facilement scriptable : 'sfdisk -d /dev/hda' (-d pour dump).

Mais il va certainement te confirmer ce que t'a dit fdisk. Je t'avoue que je seche un peu sur ton problème. J'espere que ces indices récoltés permettront à d'autres d'y voir plus clair et de t'aider.

Fanfan


Reply to: