Удобное и красивое приветствие при подключении по ssh

Подключаясь к своему линуксовому серверу, возникла идея: при подключении  по ssh получать определённую информацию, например внешний ip, версию OS, uptime, среднюю загрузку процессора, количество свободной оперативной памяти, а так же swap, свободное место на диске и свободное место домашней директории.

Поискав в интернете я нашёл эту статью: http://zametkin.tk/2014/07/26/делаем-красивое-приветствие-ssh/ ,  но мне не понравилась идея использовать крон, зачем зря грузить процессор+добавил lsb_release?

Поэтому я сделал так:
В самом конце файла  /home/USER/.profile дописал:

CPUTIME=$(ps -eo pcpu | awk 'NR>1' | awk '{tot=tot+$1} END {print tot}')
CPUCORES=$(cat /proc/cpuinfo | grep -c processor)
echo -e "
System Status
Updated: `date`
\033[36m- Server Name \033[37m= \033[31m`hostname`
\033[36m- Public IP \033[37m= \033[31m`dig +short myip.opendns.com @resolver1.opendns.com`
\033[36m- OS Version \033[37m= \033[31m`echo -n $(lsb_release -d | awk '/^/{print $2,$3,$4}') && echo -n ' ' && cat /etc/debian_version | awk '/^/{print $1}'`
\033[36m- Uptime \033[37m=\033[31m`uptime`
\033[36m- CPU (average) \033[37m= \033[31m`echo $CPUTIME / $CPUCORES | bc`%
\033[36m- Memory free (real) \033[37m= \033[31m`free -m | head -n 2 | tail -n 1 | awk {'print $4'}` Mb
\033[36m- Memory free (cache) \033[37m= \033[31m`free -m | head -n 3 | tail -n 1 | awk {'print $3'}` Mb
\033[36m- Swap in use \033[37m= \033[31m`free -m | tail -n 1 | awk {'print $3'}` Mb
\033[36m- Free Disk Space Root \033[37m= \033[31m`df -h / | awk '{ a = $4 } END { print a }'`
\033[36m- Free Disk Space Home \033[37m= \033[31m`df /home | awk '{ a = $4 } END { print a }'`
\033[37m" > /home/USER/.motd
cat /home/USER/.motd

 /home/USER — путь до домашней папки пользователя, в данном случае пользователь: USER

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *