mirror of
https://github.com/tteck/Proxmox.git
synced 2025-02-15 06:09:15 +01:00
When running certain scripts, sometimes an 'm' character is wrongly output to the terminal. This PR fixes all instances of this happening. I've also made 'RD' (red) consistent with 'GN' (green) by removing the leading 0, and my editor has kindly removed all trailing spaces from files.
99 lines
3 KiB
Bash
99 lines
3 KiB
Bash
#!/usr/bin/env bash
|
|
clear
|
|
set -e
|
|
while true; do
|
|
read -p "View CPU Scaling Governors. Proceed(y/n)?" yn
|
|
case $yn in
|
|
[Yy]* ) break;;
|
|
[Nn]* ) exit;;
|
|
* ) echo "Please answer yes or no.";;
|
|
esac
|
|
done
|
|
clear
|
|
function header_info {
|
|
echo -e "
|
|
_____ _____ _ _
|
|
/ ____| __ \| | | |
|
|
| | | |__) | | | |
|
|
| | | ___/| | | |
|
|
| |____| | | |__| |
|
|
\_____|_| \____/
|
|
Scaling Governors
|
|
"
|
|
}
|
|
show_menu(){
|
|
CL=`echo "\033[0m"`
|
|
GN=`echo "\033[32m"`
|
|
BL=`echo "\033[36m"`
|
|
YW=`echo "\033[33m"`
|
|
fgred=`echo "\033[31m"`
|
|
header_info
|
|
CK=$(uname -r)
|
|
IP=$(hostname -I)
|
|
# MAC=$(cat /sys/class/net/eno1/address)
|
|
ACSG=$(cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors)
|
|
CCSG=$(cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor)
|
|
echo -e "${YW}Proxmox IP ${BL}${IP}${CL}"
|
|
|
|
echo -e "${YW}MAC Address ${BL}${MAC}${CL}"
|
|
|
|
echo -e "${YW}Current Kernel ${BL}${CK}${CL}"
|
|
|
|
echo -e "\n${YW}Available CPU Scaling Governors
|
|
${BL}${ACSG}${CL}"
|
|
|
|
echo -e "\n${YW}Current CPU Scaling Governor
|
|
${BL}${CCSG}${CL}"
|
|
printf "\n ${fgred}Only Select Available CPU Scaling Governors From Above${CL}\n \n"
|
|
printf "${BL}**${YW} 1)${GN} Switch to ${BL}conservative${CL}${GN} CPU Scaling Governor ${CL}\n"
|
|
printf "${BL}**${YW} 2)${GN} Switch to ${BL}ondemand${CL}${GN} CPU Scaling Governor ${CL}\n"
|
|
printf "${BL}**${YW} 3)${GN} Switch to ${BL}userspace${CL}${GN} CPU Scaling Governor ${CL}\n"
|
|
printf "${BL}**${YW} 4)${GN} Switch to ${BL}powersave${CL}${GN} CPU Scaling Governor ${CL}\n"
|
|
printf "${BL}**${YW} 5)${GN} Switch to ${BL}performance${CL}${GN} CPU Scaling Governor ${CL}\n"
|
|
printf "${BL}**${YW} 6)${GN} Switch to ${BL}schedutil${CL}${GN} CPU Scaling Governor ${CL}\n"
|
|
printf "\n ${fgred}NOTE: Settings return to default after reboot${CL}\n"
|
|
printf "\n Please choose an option from the menu and press [ENTER] or ${fgred}x${CL} to exit."
|
|
read opt
|
|
}
|
|
clear
|
|
show_menu
|
|
while [ $opt != '' ]
|
|
do
|
|
if [ $opt = '' ]; then
|
|
exit;
|
|
else
|
|
case $opt in
|
|
1) echo "conservative" | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
|
|
clear
|
|
show_menu
|
|
;;
|
|
2) echo "ondemand" | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
|
|
clear
|
|
show_menu
|
|
;;
|
|
3) echo "userspace" | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
|
|
clear
|
|
show_menu
|
|
;;
|
|
4) echo "powersave" | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
|
|
clear
|
|
show_menu
|
|
;;
|
|
5) echo "performance" | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
|
|
clear
|
|
show_menu
|
|
;;
|
|
6) echo "schedutil" | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
|
|
clear
|
|
show_menu
|
|
;;
|
|
x)exit;
|
|
;;
|
|
\n)exit;
|
|
;;
|
|
*)clear;
|
|
show_menu;
|
|
;;
|
|
esac
|
|
fi
|
|
done
|