web-dev-qa-db-fra.com

Comment limiter l'accès de la partition racine au disque pour permettre au lecteur de passer en mode veille?

Lorsque aucun utilisateur ne se trouve sur mon système, je souhaite que le disque dur soit réduit en état de consommation réduite. Je me rends compte que cela pourrait ne pas être réalisable à 100% pendant 24 heures d'affilée, mais il semble raisonnable que le système reste inactif quelques heures à la fois, lorsqu'il n'est pas utilisé.

Mon système est sans tête et n'utilise qu'un nombre limité de services. Les services principaux sont: exim4, mythtv-backend, nfs, samba, cups, apt-cacher-ng

Supposons que les lecteurs soient déjà activés pour passer en mode veille. En outre, il n'est pas acceptable d'augmenter le délai d'attente de réécriture, car mon système n'est pas sous UPS.

6
cmcginty

hdparm vous permet de définir la durée de spindown pour un lecteur (combien de temps d'inactivité avant que le disque ne passe en mode veille) ou mettez-le en veille ou pour dormir.

# set spindown time for sda drive to 1 min
Sudo hdparm -S 12 /dev/sda 
# set sdb drive to standby mode
Sudo hdparm -y /dev/sdb
# put sdc drive to sleep
Sudo hdparm -Y /dev/sdc
# check drive state (active/standby/sleeping)
Sudo hdpam -C /dev/sdc

/ etc/hdparm.conf contient les commandes hdparm à exécuter automatiquement au démarrage. Voici un extrait du mien:

/dev/sda {
  # apm 127: Highest performance that allows spindown
  apm = 127
  # spindown 120 = 10 min 
  spindown_time = 120
}

Toutes les commandes ne fonctionnent pas sur tous les modèles de disque dur, vous devez expérimenter.

mode portable fonctionne aussi pour les non-ordinateurs portables, il est conçu pour laisser le (s) disque (s) dormir autant que possible. .

PowerTOP est un utilitaire permettant de localiser les activités d'arrière-plan inutiles.

lesswatts.org a un certain nombre de conseils sur l'utilisation du disque dur.

délai d'attente d'écriture : à ma connaissance, il n'est pas possible de laisser le disque principal inactif sans a) augmenter le délai d'attente d'écriture arrière et b) désactivation de la synchronisation syslog.

Une solution de contournement pourrait peut-être consister à utiliser un disque SSD en tant que disque racine, car de toute façon, leur puissance est assez faible.

activité de suivi : Il est possible de déboguer d'où vient l'accès au disque en fonction de la FAQ en mode portable - voir 5 Spinup Débogage.

Citation:

Mon disque tourne tout le temps et je n'ai aucune idée de la cause de ceci. Puis-je résoudre ce problème?

Oui, vous pouvez. Mais d’abord, vérifiez que vous avez modifié votre syslog.conf pour ne pas synchroniser, comme décrit dans la dernière question de la section précédente. Pour déboguer l'activité du disque, vous pouvez faire:

echo 1>/proc/sys/vm/block_dump

(Attention: vous devez désactiver syslogd avant de procéder ainsi , ou vous devez vous assurer que la sortie du noyau n'est pas enregistrée. Si vous l'oubliez, votre système peut entrez dans une boucle de feed-back, où syslogd provoque une activité de disque, cela génère une sortie du noyau, ce qui oblige syslogd à faire plus d'activité de disque, etc.!)

Cela permet le débogage de l’activité fichier/disque dans le noyau. Vous pouvez lire le résultat en utilisant dmesg. Lorsque vous avez terminé, désactivez Block Dump en utilisant

echo 0>/proc/sys/vm/block_dump

désactivation de syslogd sync : le mode portable FAQ et lesswatts.org font référence à /etc/syslog.conf.

Dans Ubuntu récent, ce fichier n’existe pas, cherchez plutôt /etc/rsyslog.d/*.conf.

La syntaxe est la même: ajoutez un tiret à chaque fichier journal, comme suit:

kern.*              -/var/log/kern.log

Cela désactive la synchronisation pour le démon syslog, ce qui signifie que les journaux seront écrits sur le disque à intervalles de dirty_writeback_centisecs (toutes les 5 secondes par défaut) au lieu de chaque nouvelle entrée de journal.

6
j-g-faustus

Si vous avez assez de RAM, vous pouvez déplacer des systèmes de fichiers temporaires en mémoire, en utilisant tmpfs. Éditez/etc/fstab et ajoutez:

tmpfs       /tmp        tmpfs   defaults    0   0
tmpfs       /var/run        tmpfs   defaults    0   0
tmpfs       /var/lock       tmpfs   defaults    0   0
3
João Pinto

Sur mon ordinateur portable, j'ai monté/var/log sur un lecteur tmpfs. Cela vous donne beaucoup moins d'écritures sur le disque, mais bien sûr, tous les messages du journal sont supprimés au redémarrage. Quelque chose que vous ne voudrez peut-être pas lorsque vous exécuterez des services tels que exim.

tmpfs /var/log tmpfs defaults,noatime,mode=1777 0 0

et dans /etc/rc.local

mkdir /var/log/apt

0
towolf

montez-le avec noatime

more RAM aide également (tampons et caches plus grands)

0
jet