修改Ubuntu的登陆信息

栏目: 服务器 · 发布时间: 6年前

内容简介:是这样的,我希望登陆系统的时候能够显示系统的一些基本信息,比如 cpu、内存、负载、内核、IP 等等信息,如图所示其实这个很好实现,写个 shell 脚本就好,在 Ubuntu 上,我一开始以为和 centos 一样修改/etc/motd文件就可以。不过发现 Ubuntu 的开机信息好像是在/var/run/motd.dynamic,而这个文件却修改了无效,再次登录会被还原,于是我找了下发现,这个文件的信息其实是有几个脚本控制的。这几个脚本在

是这样的,我希望登陆系统的时候能够显示系统的一些基本信息,比如 cpu、内存、负载、内核、IP 等等信息,如图所示

修改Ubuntu的登陆信息

默认登陆是类型下面的信息

修改Ubuntu的登陆信息

实现

其实这个很好实现,写个 shell 脚本就好,在 Ubuntu 上,我一开始以为和 centos 一样修改/etc/motd文件就可以。不过发现 Ubuntu 的开机信息好像是在/var/run/motd.dynamic,而这个文件却修改了无效,再次登录会被还原,于是我找了下发现,这个文件的信息其实是有几个脚本控制的。这几个脚本在 /etc/update-motd.d/ 目录下

修改Ubuntu的登陆信息

然而, 你发现你登陆的时候的信息,其实都是这几个文件的脚本输出的,这几个文件其实都是 shell 脚本,我们把几个脚本的内容全部注释掉,然后修改00-hader 文件,添加下面的内容

脚本

#!/bin/bash
uptimeinfo=`uptime | awk -F" " '{print $9,$10,$11}'`
osname=`cat /etc/issue| head -n 1|awk -F " " '{print $1,$2,$3}'`
hostnameinfo=`hostname`
Kernelinfo=`uname -r`
privateip=`/bin/hostname -i|awk '{print $1}'`
publicip=`/bin/hostname -i|awk '{print $2}'`
cpuinfo=`cat /proc/cpuinfo |grep 'model name'| tail -n 1| awk -F" " '{print $4,$5,$6,$7,$8,$9,$10}'`
cpunum=`cat /proc/cpuinfo |grep processor|wc -l`
meminfo=`free -h| awk '{print $2}'| grep -v used|head -n 1`
interface=`ifconfig |head -n 1|awk '{print $1}'`
echo -e "\033[33m        OS: "${osname}
echo -e "        Kernel: "${Kernelinfo}
echo -e  "        CPU: "${cpuinfo}"["${cpunum}"]"
echo -e "        MEM: "${meminfo}
echo -e "  ---------------------------------------------------------------"
echo -e  "        UPTIME:1 min"
echo -e "        LOAD:" ${uptimeinfo}    
echo -e "  ---------------------------------------------------------------"
echo -e "        Hostname:"${hostnameinfo}
echo -e " ---------------------------------------------------------------"
echo -e  "        private  (*active)        IP:"${privateip}
echo -e  "        public   (*active)        IP:"${publicip}
echo -e "  --------------------------------------------------------------- \033[0m"

效果

然后在重新登录就得到了一开始的效果了。

修改Ubuntu的登陆信息

关于终端颜色

其实 Ubuntu 下不加-e 也可以的

echo -e "\033[30m 黑色字 \033[0m"
echo -e "\033[31m 红色字 \033[0m"
echo -e "\033[32m 绿色字 \033[0m"
echo -e "\033[33m 黄色字 \033[0m"
echo -e "\033[34m 蓝色字 \033[0m"
echo -e "\033[35m 紫色字 \033[0m"
echo -e "\033[36m 天蓝字 \033[0m"
echo -e "\033[37m 白色字 \033[0m"

echo -e "\033[40;37m 黑底白字 \033[0m"
echo -e "\033[41;37m 红底白字 \033[0m"
echo -e "\033[42;37m 绿底白字 \033[0m"
echo -e "\033[43;37m 黄底白字 \033[0m"
echo -e "\033[44;37m 蓝底白字 \033[0m"
echo -e "\033[45;37m 紫底白字 \033[0m"
echo -e "\033[46;37m 天蓝底白字 \033[0m"
echo -e "\033[47;30m 白底黑字 \033[0m"

centos 如何修改

1.首先要把/etc/motd文件的权限给改下,我这里就给777了。然后写个脚本,比如就叫 systeminfo吧。放到/usr/local/bin下,赋予可执行权限

#!/bin/bash
uptimeinfo=`uptime | awk -F" " '{print $9,$10,$11}'`
osname=`cat /etc/issue| head -n 1|awk -F " " '{print $1,$2,$3}'`
hostnameinfo=`hostname`
Kernelinfo=`uname -r`
privateip=`/bin/hostname -i|awk '{print $1}'`
publicip=`/bin/hostname -i|awk '{print $2}'`
cpuinfo=`cat /proc/cpuinfo |grep 'model name'| tail -n 1| awk -F" " '{print $4,$5,$6,$7,$8,$9,$10}'`
cpunum=`cat /proc/cpuinfo |grep processor|wc -l`
meminfo=`free -h| awk '{print $2}'| grep -v used|head -n 1`
interface=`ifconfig |head -n 1|awk '{print $1}'`
echo -e "\033[33m        OS: "${osname}
echo -e "        Kernel: "${Kernelinfo}
echo -e  "        CPU: "${cpuinfo}"["${cpunum}"]"
echo -e "        MEM: "${meminfo}
echo -e "  ---------------------------------------------------------------"
echo -e  "        UPTIME:1 min"
echo -e "        LOAD:" ${uptimeinfo}    
echo -e "  ---------------------------------------------------------------"
echo -e "        Hostname:"${hostnameinfo}
echo -e " ---------------------------------------------------------------"
echo -e  "        private  (*active)        IP:"${privateip}
echo -e  "        public   (*active)        IP:"${publicip}
echo -e "  --------------------------------------------------------------- \033[0m"

然后修改/etc/profile文件,在末尾添加

if [ -f /etc/profile ];then
    /usr/local/bin/systeminfo > /etc/motd
fi

然后执行

source /etc/profile

原理是用户登陆后都需要首先找/etc/profile文件的变量,在该文件执行这个命令会把结果写入/etc/motd文件

最终结果

修改Ubuntu的登陆信息

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

RabbitMQ实战

RabbitMQ实战

Alvaro Videla、Jason J. W. Williams / 汪佳南 / 电子工业出版社 / 2015-10 / 75.00元

本书对RabbitMQ做了全面、翔实的讲解,体现了两位专家的真知灼见。本书首先介绍了有关MQ的历史,然后从基本的消息通信原理讲起,带领读者一路探索RabbitMQ的消息通信世界。这当中不仅包含了针对单台RabbitMQ服务器和RabbitMQ集群的讲解,还教导读者如何使用各种工具来进行监控。 本书内容浅显易懂,文笔风趣幽默。书中包含了丰富的、可以运行的示例程序源代码,读者可以自行下载并运行,......一起来看看 《RabbitMQ实战》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具