Keďže server beží často celý deň, aj keď sa naň nik nepripája, oplatí sa kôli úspore prúdu, hlučnosti chladenia, upraviť nastavenia linuxu. Pozrel som sa na úsporný režim disku a nastavenia ovládačov cez powertop.
DISK
Kým je operačný systém na SSD disku, rozmerné dáta sú na klasickom disku. Ten sa oplatí v prípade servera vypínať. Štandardne sa čas spánku nastavuje cez príkaz "hdparm -S", u mňa pri disku WD nefungoval.
Ako alternatívu som našiel (tu) program hd-idle (http://hd-idle.sourceforge.net/). Nastavenie som uložil do súboru /etc/default/hd-idle.
# start hd-idle automatically?
START_HD_IDLE=true
HD_IDLE_OPTS="-i 0 -a /dev/disk/by-uuid/791e25fe-c96e-4f33-ba63-9edd161f03c2 -i 600"
Štandardne teda nastaví idle 0 (nevypínať) a pre zvolené UUID disku 10minút. Presn
POWERTOP
Tento výborný softvér (https://01.org/powertop) od Intelu zobrazuje aké aplikácie či ovládače zariadení prebúdzajú procesor z úsporných režimov a koľko percent času strávil v akom z nich.
Po spustení cez sudo sa tabulátorom preklikám na záložku "device stats", kde vidím ktoré drivery berú 100 percent. V záložke "tunables" možno zapínať jednotlivé úsporné nastavenia a následne sledovať, či v záložke stats znížia vyťaženosť. Tunables možno hocikedy prepínať, pri prepnutí zobrazí powertop ako prepol parameter vyplnením správneho reťazca do cesty vo virtuálnom proc filesystéme.
echo '1' > '/sys/module/snd_hda_intel/parameters/power_save';
echo 'auto' > '/sys/bus/pci/devices/0000:03:00.0/power/control';
echo '1500' > '/proc/sys/vm/dirty_writeback_centisecs';
echo '0' > '/proc/sys/kernel/nmi_watchdog';
echo 'min_power' > '/sys/class/scsi_host/host0/link_power_management_policy';
echo 'min_power' > '/sys/class/scsi_host/host1/link_power_management_policy';
echo 'min_power' > '/sys/class/scsi_host/host2/link_power_management_policy';
echo 'min_power' > '/sys/class/scsi_host/host3/link_power_management_policy';
echo 'min_power' > '/sys/class/scsi_host/host4/link_power_management_policy';
echo 'auto' > '/sys/bus/usb/devices/usb1/power/control';
echo 'auto' > '/sys/bus/usb/devices/usb2/power/control';
echo 'auto' > '/sys/bus/usb/devices/usb4/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:1b.0/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.3/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:14.0/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:1a.0/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:00.0/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:03.0/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:1d.0/power/control';
Pozor, toto je závislé od hardvéru. Tento skript ako som zistil okrem iného zníži teplotu SSD disku, preto som ho zaradil do súboru /etc/rc.local. Takto sa spustí pod rootom po každom štarte.
Ostáva ešte vymyslieť a odladiť automatické vypnutie v noci, ak nieje dlhšie nik pripojený.
Žiadne komentáre:
Zverejnenie komentára