Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env bash
- # powerdown - powersave script
- # please use this with xset dpms, hdparm
- if [[ $EUID != 0 ]]; then
- echo "[powerdown] must be run as root"
- exit 1
- fi
- source /usr/lib/powerdown-functions
- # bus
- for i in /sys/bus/*/devices/*/power/control; do opt "$i" auto; done
- # usb autosuspend
- for i in /sys/bus/usb/devices/*/power/autosuspend; do opt "$i" 10; done
- usb_powersave
- # nmi_watchdog
- opt /proc/sys/kernel/nmi_watchdog 0
- # cpu
- for i in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor; do opt "$i" ondemand; done
- for i in /sys/devices/system/cpu/cpu*/cpufreq/scaling_max_freq; do opt "$i" 2533000; done
- opt /sys/devices/system/cpu/cpufreq/ondemand/sampling_down_factor 10
- opt /sys/devices/system/cpu/cpufreq/ondemand/up_threshold 75
- opt /sys/devices/system/cpu/cpufreq/ondemand/ignore_nice_load 1
- # aspm
- opt /sys/module/pcie_aspm/parameters/policy powersave
- # kernel write mode
- opt /proc/sys/vm/laptop_mode 5
- opt /proc/sys/vm/dirty_ratio 60
- opt /proc/sys/vm/dirty_background_ratio 5
- opt /proc/sys/vm/dirty_expire_centisecs 6000
- opt /proc/sys/vm/dirty_writeback_centisecs 6000
- # disk
- for i in /sys/class/scsi_host/host*/link_power_management_policy; do opt "$i" min_power; done
- #for dev in $(awk '/^\/dev\/sd/ {print $1}' /etc/mtab); do run mount -o remount,noatime "$dev"; done
- #for dev in $(awk '/^\/dev\/sd/ {print $1}' /etc/mtab); do run blockdev --setra 4096 "$dev"; done
- #for dev in $(awk '/^\/dev\/sd/ {print $1}' /etc/mtab); do run hdparm -B 1 -S 120 "$dev"; done
- # sound card
- opt /sys/module/snd_hda_intel/parameters/power_save 1
- opt /sys/module/snd_hda_intel/parameters/power_save_controller Y
- opt /sys/module/snd_ac97_codec/parameters/power_save 1
- # net
- for i in $(iw dev | grep Interface | cut -d ' ' -f 2); do run iw dev "$i" set power_save on; done
- # screen
- for i in /sys/class/backlight/*; do opt "$i/brightness" "$(brightness_scale 2 "$i")"; done
- # webcam
- unload_mod uvcvideo
- #unload_mod videodev
- # bluetooth
- unload_mod btusb
- unload_mod bluetooth
- # open source ATI
- #opt /sys/class/drm/card0/device/power_method profile
- #opt /sys/class/drm/card0/device/power_profile low
- # i915
- opt /sys/module/i915/parameters/i915_enable_rc6 1
- #KDialog deactivate programs (Skype)
- if [ -z "$(pgrep skype)" ]
- then
- echo "Skype not running"
- else
- su - adriano -c "export DISPLAY=:0 && kdialog --title 'Powerdown' --yesno 'Powerdown wants to kill Skype to save battery life.\n Do you want to kill Sk$
- if [ $? = 0 ]; then
- killall skype
- fi
- fi
- exit 0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement