Linux自定义登录的欢迎页
时间:2019-04-29 03:17:35 来源:igfitidea点击:
如何创建一个简单的自定义登录标题页面,该页面将在用户通过ssh登录时显示。
为脚本添加颜色
在脚本中添加颜色非常简单。在以下示例中,我们将介绍一些可以添加到您的登录脚本中的基本颜色命令。
#!/bin/bash
clear
#Bash Colour Codes
red="3[00;31m"
RED="3[01;31m"
echo -e "${red} I am Dark Red"
echo -e "${RED} I am Bright Red"
green="3[00;32m"
GREEN="3[01;32m"
echo -e "${green} I am Dark Green"
echo -e "${GREEN} I am Bright Green"
brown="3[00;33m"
YELLOW="3[01;33m"
echo -e "${brown} I am Brown"
echo -e "${YELLOW} I am Yellow"
blue="3[00;34m"
BLUE="3[01;34m"
echo -e "${blue} I am Dark Blue"
echo -e "${BLUE} I am Bright Blue"
magenta="3[00;35m"
MAGENTA="3[01;35m"
echo -e "${magenta} I am Dark Magenta"
echo -e "${MAGENTA} I am Bright Magenta"
cyan="3[00;36m"
CYAN="3[01;36m"
echo -e "${cyan} I am Dark Cyan"
echo -e "${CYAN} I am Bright Cyan"
white="3[00;37m"
WHITE="3[01;37m"
echo -e "${white} I am Grey"
echo -e "${WHITE} I am White"
#Sets No Colour
NC="3[00m"
将系统信息添加到登录屏幕
要添加系统信息,例如主机名,日期,时间,CPU,内存,我们可以使用一些基本命令。
CPUMOD=$(cat /proc/cpuinfo | grep -m 1 -w 'model name' | awk -F: '{print }')
ssh登录脚本的位置
ssh登录脚本的位置是/etc/profile.d/。该目录是一个特殊区域,可以放置脚本,当用户登录系统时会调用这些脚本。当用户登录系统时,将执行一个名为/etc/profile的文件,该文件定义了基本的默认设置。我们在此处指定我们的自定义脚本位置(默认情况下为/etc/profile.d)。在此示例中,我们创建了一个脚本:motd.sh。
/etc/profile.d/motd.sh
john@ubuntu01-pc:~$ cat motd.sh
#!/bin/bash
#Colours
red="3[00;31m"
RED="3[01;31m"
green="3[00;32m"
GREEN="3[01;32m"
brown="3[00;33m"
YELLOW="3[01;33m"
blue="3[00;34m"
BLUE="3[01;34m"
purple="3[00;35m"
PURPLE="3[01;35m"
cyan="3[00;36m"
CYAN="3[01;36m"
white="3[00;37m"
WHITE="3[01;37m"
NC="3[00m"
echo -e "${WHITE}******************************************************************************"
echo -e "${WHITE}** **"
echo -e "${WHITE}** Powered By Linux **"
echo -e "${WHITE}** **"
echo -e "${RED}******************************************************************************"
CPUMOD=$(cat /proc/cpuinfo | grep -m 1 -w 'model name' | awk -F: '{print }')
HOSTNAME=$(uname -n)
KERNEL=$(uname -r)
MEMTOTAL=$(cat /proc/meminfo | grep -m 1 -w 'MemTotal' | awk -F: '{print }')
MEMFREE=$(cat /proc/meminfo | grep -m 1 -w 'MemFree' | awk -F: '{print }')
SWAPTOTAL=$(cat /proc/meminfo | grep -m 1 -w 'SwapTotal' | awk -F: '{print }')
SWAPFREE=$(cat /proc/meminfo | grep -m 1 -w 'SwapFree' | awk -F: '{print }')
echo -e ""
echo -e "${WHITE} Welcome ${YELLOW}${USER} ${WHITE} "
echo -e ""
echo -e "${WHITE} Date: "`date`
echo -e ""
echo -e "${WHITE} Hostname: ${HOSTNAME}"
echo -e "${WHITE} CPU Model: ${CPUMOD}"
echo -e ""
echo -e "${WHITE} Total Memory: ${MEMTOTAL}"
echo -e "${WHITE} Free Memory: ${MEMFREE}"
echo -e ""
echo -e "${WHITE} Swap Total: ${SWAPTOTAL}"
echo -e "${WHITE} Swap Free: ${SWAPFREE}"
echo -e ""
echo -e "${RED}******************************************************************************"
# Reset Terminal Colour Back to Normal
echo -e "${NC}"

