Ubuntu 登录提示信息`Message of The Day`(MOTD)定制与开关

news2024/11/7 13:53:56

一、效果

登录Ubuntu的时候,在控制台可能会弹出一系列提示消息,有欢迎消息、系统信息、更新信息等等:

在这里插入图片描述

在这里插入图片描述

这些提示消息被称为Message of The Day,简称MOTD

Ubuntu与其它Linux版本不太一样,它引入了MOTD 的概念。

这些消息还可以定制,在/etc/update-motd.d/目录下可以看到很多两位数字开头的文件:

在这里插入图片描述
可以对这些文件进行修改,也可以添加新的文件,这些文件前面的数字表示优先顺序,越大越靠后。
比如添加一个99-tip文件:

#!/bin/sh
echo "提示信息:"
printf "不要乱操作\n"

并使用chmod +x 99-tip添加上可执行权限,然后使用sudo run-parts /etc/update-motd.d/就可以立即看到效果,不需要重启系统或者重新登录。注意:echo显示会自动添加换行符,printf不会自动添加换行符。

二、开关

如果想要关闭提示如何操作?

Ubuntu下MOTD之前是使用/etc/login.defs来管理的,后来使用pam来管理了,可以看到/etc/login.defs中的注释:

################# OBSOLETED BY PAM ##############
#                                               #
# These options are now handled by PAM. Please  #
# edit the appropriate file in /etc/pam.d/ to   #
# enable the equivelants of them.
#
###############

#MOTD_FILE
#DIALUPS_CHECK_ENAB
#LASTLOG_ENAB
#MAIL_CHECK_ENAB
#OBSCURE_CHECKS_ENAB
#PORTTIME_CHECKS_ENAB
#SU_WHEEL_ONLY
#CRACKLIB_DICTPATH
#PASS_CHANGE_TRIES
#PASS_ALWAYS_WARN
#ENVIRON_FILE
#NOLOGINS_FILE
#ISSUE_FILE
#PASS_MIN_LEN
#PASS_MAX_LEN
#ULIMIT
#ENV_HZ
#CHFN_AUTH
#CHSH_AUTH
#FAIL_DELAY

/etc/pam.d目录下有两个文件与MOTD有关,分别是loginsshd,其中login是控制本机登录的MOTDsshd是控制远程登录的,开关为下面两句:

在这里插入图片描述
1.动态MOTD/run/motd.dynamic中,在系统启动后动态生成,可以使用cat /run/motd.dynamic查看内容。
2.静态的在/etc/motd中,默认情况下可能会没有/etc/motd,可以自己新建一个/etc/motd文件,里面写上纯文本内容,即可显示,不需要像/etc/update-motd.d/中的文件一样需要可执行权限,并使用echo或者printf命令来输出。

/etc/motd示例:

静态提示信息:
谨慎操作

有的Ubuntu版本还可以使用/etc/default/motd-news中的开关来控制:

# Enable/disable the dynamic MOTD news service
# This is a useful way to provide dynamic, informative
# information pertinent to the users and administrators
# of the local system
ENABLED=1

# Configure the source of dynamic MOTD news
# White space separated list of 0 to many news services
# For security reasons, these must be https
# and have a valid certificate
# Canonical runs a service at motd.ubuntu.com, and you
# can easily run one too
URLS="https://motd.ubuntu.com"

# Specify the time in seconds, you're willing to wait for
# dynamic MOTD news
# Note that news messages are fetched in the background by
# a systemd timer, so this should never block boot or login
WAIT=5

其中的ENABLED1则为显示,为0则不显示。

参考:
motd not showing up on Ubuntu 21.10
How To Disable Ads In Terminal Welcome Message In Ubuntu Server
https://manpages.ubuntu.com/manpages/kinetic/man8/pam_motd.8.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/624784.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何使用SonarQube+ SonarScanner分析项目

前言: 六一儿童节要玩程序员的玩具,动手试一试挺有意思的 目录 1. 安装sonarqube 2. 获取Sonarqube令牌 3. 下载安装SonarScanner 5. SonarScanner分析项目 7. 查看分析结果 8.常见问题 版本信息: Sonarqube7.6Sonar-scanner-4.8.0 …

[操作系统]关于进程的管理

首先注明:仍然是复习阶段,所以和课本可能有些许冲突和不同,只是图谱来自于王道考研2022操作系统,旨在快速梳理操作系统的基本知识 1.进程的定义,概念和特征: 多道程序环境下,多个程序并发执行,因此他们将会失去封闭性,不适宜于管理,所以引入了进程这种概念. 进程是程序的一次…

Python自动化测试:pytest实现关键字驱动

在上一篇文章中,我编写了一个非常简单的关键字驱动程序, 不过这个程序只是跑通了功能,还有很多可以优化的地方,这篇文章我想通过 pytest 来简化自动化测试用例的编写,使用的是比较基础的 pytest 功能。 下篇文章我再写…

spark安装部署

spark安装部署 需要指导私信 所有节点安装scala,安装scala需要安装openjdk-8-jre(当前用户如果没有sudo权限可将其加入sudo组里),以ubuntu2204-LTS为例: $ sudo apt update $ sudo apt-get install openjdk-8-jre-headless -y (红…

【03Eclipse 窗口说明】对每个窗口和视图的功能和用途的详细说明导航栏编辑器窗口项目资源管理器

Eclipse 窗口说明 简介 Eclipse 是一款功能强大的集成开发环境(IDE),提供了丰富的窗口和视图来支持开发工作。本教程将详细介绍 Eclipse 主要窗口和常见视图的功能和用途。 主要窗口 1. 导航栏 导航栏位于 Eclipse 窗口的顶部&#xff0…

Java学习路线(22)——测试框架Junit

一、单元测试概念 单元测试就是针对最小的功能单元编写测试代码,Java程序最小的功能单元是方法,因此,单元测试就是针对Java方法的测试,进而检查方法正确性。 二、Junit测试框架 (一)概念: Jun…

认识、使用 yarn

概念 npm 是前端开发过程中常常使用的命令,比如构建 Vue 项目,亦或下载 Vue 项目依赖但是该命令效率低下,且容易出错,有没有更好的解决方案呢?有,Yarn ta是一个快速、可靠且安全的 JS 包管理工具: 快速:Yamn 本地缓…

黑客松指南|如何快速注册参与Sui x KuCoin Labs Hackathon

由Sui和KuCoin Labs联合主办的夏季黑客松,将为开发者、设计师、创业者和区块链爱好者提供一个交流和合作的平台。参与者将有机会利用Sui的先进技术和KuCoin Labs的资源,开发创新的区块链应用和解决方案。 我们鼓励参与者围绕「基础设施和工具」、「NFT、…

如何使用Jemeter对HTTP进行接口压测?没有比这个更详细的教程

目录 前言 1、首先添加一线程组 2、因为是对HTTP接口进行压力测试,所以需要在线程组下添加一HTTP请求(通过鼠标右键->添加->Sampler->HTTP请求 完成) 3、紧接着就是对HTTP请求进行设置了,主要设置服务器名称或IP&#…

10年心路历程:一个女测试工程师功能测试转向自动化测试/开发

十年测试心路历程: 由于历史原因,大部分测试人员,最开始接触都是纯功能界面测试,随着工作年限,会接触到一些常用测试工具,比如抓包,数据库,linux等。 我大学学的计算机专业&#xff…

【力扣刷题 | 第四天】 1.两数之和 454.四数之和

1. 两数之和 - 力扣(LeetCode) 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同…

【QT】解决继承QThread的子线程导致程序无法关闭主线程关闭太快导致子线程中的槽方法未执行

背景 使用串口进行通信 一共有三个线程 主线程负责界面的显示子线程1负责检测当前系统可用的串口子线程2负责差串口通信 子线程实现 在发生问题的最初,因为要一直检测当前系统的可用线程,所以线程1我使用继承自QThread实现的线程,其中重写ru…

github下载的项目如何上传到gitee

1、安装git 省略 2、github下载项目 如何注册、登录省略 3、上传到gitee 注册账号 省略 新建仓库 iot-plat创建过了,用iot-plat1演示 创建完的仓库 此处的https地址要记住,等会要用到 到本地项目目录 项目里面 Git命令操作 空白处右键&#xff…

CSP-S 第一轮笔试重点题

CSP-S提高组笔试题重点题汇总: 今天我给大家分享一些 CSP-S 第一轮笔试中的一些重点题,包含讲解。 第一题: 1.十进制小数13.375对应的二进制数是()。 A.1101.011 B.1011.011 C.1101.101 D.1010.01 解析&#x…

一起学SF框架系列5.3-模块Beans-bean与Spring容器的交互方式

正常情况下,应用中的bean同spring容器关系如下图: 尽管应用bean是Spring容器创建并建立依赖关系,应用只需使用bean即可,因此对bean来说Spring容器就是无感知的(无侵入编程)。但是还是存在需求需要应用bea…

OkHttp 框架设计剖析(含面试题)

作者:Calculus_小王 概述 OKHttp是一个基于HTTP协议的网络请求框架,它支持HTTP/2协议,连接复用和连接池,缓存策略等功能。它的核心设计是拦截器(Interceptor),它将请求的复杂逻辑切分成多个独立…

详解Java内部类、匿名内部类

内部类 内部类:类的第五个成员 1.定义:Java中允许将一个类A声明在另一个类B中,则类A就是内部类,类B称为外部类. 2.内部类的分类: 成员内部类(静态、非静态 ) vs 局部内部类(方法内、代码块内、…

全网最强总结,Selenium自动化测试异常+处理总结,吐血整理...

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 当测试工程师执行…

LVS负载均衡群集部署——DR模式

LVS负载均衡群集部署——DR模式 一、LVS-DR集群概述1、LVS-DR 工作原理2、LVS-DR数据包流量分析(同一局域网)3、LVS-DR中的ARP问题4、LVS-DR处理问题后的流量分析5、LVS-DR 特性 二、构建LVS-DR集群1、构建LVS-DR集群的步骤(理论)…

网工内推 | 网安专场,CISP认证优先,带薪年假,六险一金

01 MATRIX TECH 🔷招聘岗位:安全工程师 🔷职责描述: 1、负责信息安全防护系统的日常管理 、监测和优化提升等安全运营工作,包括终端安全、防护、漏洞检测、补丁、入侵检测、拒绝服务攻击防护、源代码安全检查等&#…