ubuntu修改登录信息(本机和SSH登录)
<h2 id="1motd">1.MOTD</h2><h3 id="11-什么是motd">1.1 什么是MOTD</h3>
<ul>
<li>motd是message of the day的缩写,意思是“当天的提示信息”,通常在用户成功登录到Linux后出现,该信息可以从/etc/motd文本文件中找到。</li>
<li>提示:UNIX/Linux系统管理员也通常会把一些重要的信息写到 <code>/etc/motd</code>里面,以方便其他人或自己下次成功登录时需要注意什么和做什么,非常方便。</li>
<li>一般来讲 <code>/etc/motd</code>是一个静态文件,里面仅仅含有安装更新的版本信息。但是ubuntu引入了<strong>update-motd</strong>框架,他可以在登陆时候动态的组装脚本(assembled from a collection of scripts)。</li>
<li>执行<code>/etc/update-motd.d/*</code>下的脚本是使用的<code>pam_motd</code>,而这个信息则会被组合在<code> /run/motd.dynamic</code>中(<font color="red">实际上,我发现update-motd.d中的脚本是被符号链接到motd.dynamic中,进而通过pam执行文件夹才实现动态motd</font>)</li>
</ul>
<h3 id="12-如何修改motd">1.2 如何修改MOTD?</h3>
<ul>
<li>MOTD的fragments必须存放在<code>/etc/update-motd.d</code>文件夹下面,而且必须是一个可执行文件。</li>
<li>这些脚本必须命名为<code>NN-xxxx</code>,其中NN是一个二位数代表他们在MOTD的位置,比如你准备放在最后一个,可以直接填写<code>99-xxx</code></li>
<li>在写完bash后,必须改变为可执行文件<code>sudo chmod +x /etc/update-motd.d/99-custom</code>。</li>
<li>检测是否成功<code>run-parts /etc/update-motd.d/</code></li>
</ul>
<h3 id="13-pamd是什么">1.3 pam.d是什么?</h3>
<p>本来关于MOTD的东西是由<code>/etc/login.defs</code>来管理的,后来由<code>/etc/pam.d/login</code>来管理。如下图所示:<br>
<img src="https://img2018.cnblogs.com/blog/1146801/202002/1146801-20200227133120075-422390202.png"><br>
很容易发现,一般的静态MOTD在<code>/etc/motd</code>中存放,而动态的MOTD在<code>/run/motd.dynamic</code>中存放,那么他们和<code>/etc/update-motd.d</code>是什么关系呢?上面讲update-motd.d中的东西会存放在motd.dynamic中,然后motd.dynamic再通过pam_motd执行。<br>
这里的<code>pam_motd</code>其实就是pam_motd.so用于执行<code>update-motd.d</code>文件夹中可执行文件的。</p>
<p><strong>因此,只需要将<code>/etc/pam.d/login</code>中的<code>pam_motd.so motd=/run/motd.dynamic</code>改为<code>pam_motd.so motd=/etc/update-motd.d</code>即可,或者使用符号链接也可以。(不知道为什么我的阿里服务器没有符号链接)</strong></p>
<h3 id="13-写一个自己的logo-motd">1.3 写一个自己的LOGO MOTD:</h3>
<pre><code class="language-bash">apt-get figlet
figlet Ssozh > /etc/Ssozh.txt
vim 92-ssozh
chmod +x ./92-ssozh
run-parts /etc/update-motd.d/
ln -s/etc/update-motd.d/ /run/motd.dynamic
</code></pre>
<p><strong>注意:figlet的内容不能放在update-motd.d中,会无法找到该文件!</strong><br>
其中<code>92-ssozh</code>中的内容:</p>
<pre><code class="language-bash">#!/bin/sh
# Ssozh banner
cat /etc/Ssozh.txt
</code></pre>
<p>最终效果图:<br>
<img src="https://img2018.cnblogs.com/blog/1146801/202002/1146801-20200227121807585-1487245336.png"></p>
<p>参考博客:<br>
https://linuxconfig.org/how-to-change-welcome-message-motd-on-ubuntu-18-04-server<br>
http://manpages.ubuntu.com/manpages/bionic/man5/update-motd.5.html</p><br><br>
来源:https://www.cnblogs.com/SsoZhNO-1/p/12371435.html
頁:
[1]