首页 > 代码库 > Linux /etc/issue 和 /etc/issue.net的作用和区别

Linux /etc/issue 和 /etc/issue.net的作用和区别

1./etc/motd /etc/motd即messageoftoday(布告栏信息),每次用户登录时,/etc/motd文件的内容会显示在用户的终端.系统管理员可以在文件中编辑系统活动消息,例如:管理员通知用户系统何时进行软件或硬件的升级、何时进行系统维护等.如果shell支持中文,还可以使用中文,这样看起来更易于了解.默认情况下/etc/motd文件是空的,可以修改为你想让他显示的信息。

[root@localhost ~]# vi /etc/motd
Hello world!

注:window操作系统也有相关的功能,有的公司员工的工作机是统一管理,用的是windows ,当员工早上来登入工作机可能看到一些如提示信息,/etc/motd实现的作用跟它差不多。

2./etc/issue 

/etc/issue 和/etc/issue.NET都是是Linux终端登录的欢迎语句存储文件,/etc/issue文件的使用方法与/etc/motd文件相差不大,它们的主要区别在于:当一个网络用户或通过串口登录系统上时,/etc/issue的文件内容显示在login提示符之前,而/etc/motd内容显示在用户成功登录系统之后.(我们在用ctrl+alt+f1~f7登录到终端tty1~tty6时,会显示提示符字符串,这些字符串就是写在/etc/issue下,可以用vi /etc/issue打开看)

还有一个/etc/issue.NET文件,它提供给telnet远程登录程序使用的。默认情况下/etc/issue文件和/etc/issue.Net内容一样,如需要,可根据自己需要修改。

 

先看看系统默认的文件内容是什么。

#cat /etc/issue
CentOS release 6.1 (Final)

Kernel \r on an \m(\r  和 \m都是转义字符)

常用的转义字符:

  • \d 本地端时间的日期
  • \l 显示第几个终端机的接口;
  • \m 显示硬件的等级(i386/i486/i586/i686....)
  • \n 显示主机的网络名称
  • \o 显示 domain name
  • \r 操作系统的版本 (类似 uname-r)
  • \t 显示本地端时间的时间
  • \s 操作系统的名称
  • \v 操作系统的版本
/etc/issue.net 和/etc/issue的区别:
/etc/issue 和/etc/issue.net都是登陆系统前显示的欢迎信息
但是/etc/issue是本地终端登录时显示,而/etc/issue.net是远程登陆时显示的。而且/etc/issue.net 不支持转义字符。
远程登陆是否显示欢迎信息还要看ssh的配置文件,/etc/ssh/sshd_config 的 Banner 字段技术分享
 
技术分享
 
注意:欢迎语句最好不要写 welcome 之类的欢迎内容,最好写“非注册用户禁止登陆”之类的警告信息。因为在美国曾有黑客因为入侵的主机写有“欢迎来访”的语句,在庭审的时候被判无罪。
 
其他的一些配置文件
~/.bash_logout     当需要在退出登录后让系统完成一些操作的话可以写在这个文件中(此文件是隐藏文件)
~/.bash_history     命令历史文件,所有使用过的命令都会记录在此文件中。先在内存中缓存,然后写入此文件保存。
 
做一下底下这个练习,看看能不能取得你要的进站画面?
例题:
如果你在 tty3 的进站画面看到如下显示,该如何设定才能得到如下画面?

    CentOS Linux 7 (Core) (terminal: tty3)
    Date: 2015-07-08 17:29:19
    Kernel 3.10.0-229.el7.x86_64 on an x86_64
    Welcome!

注意,tty3 在不同的 tty 有不同显示,日期则是再按下 [enter] 后就会所有不同。
答:
很简单,用 root 的身份,并参考上述的反斜线功能去修改 /etc/issue 成为如下模样即可(共五行):

\S (terminal: \l)
Date: \d \t
Kernel \r on an \m
Welcome!

曾有鸟哥的学生在这个 /etc/issue 内修改资料,光是利用简单的英文字母作出属于他自己的进站画面, 画面裡面有他的中文名字呢!非常厉害!也有学生做成类似很大一个『囧』在进站画面,都非常有趣!

你要注意的是,除了 /etc/issue 之外还有个 /etc/issue.net 呢!这是啥?这个是提供给 telnet 这个远端登入程式用的。 当我们使用 telnet 连接到主机时,主机的登入画面就会显示 /etc/issue.net 而不是 /etc/issue 呢!

至于如果您想要让使用者登入后取得一些讯息,例如您想要让大家都知道的讯息, 那麽可以将讯息加入 /etc/motd 裡面去!例如:当登入后,告诉登入者, 系统将会在某个固定时间进行维护工作,可以这样做 (一定要用 root 的身份才能修改喔!):

[root@study ~]# vim /etc/motd
Hello everyone,
Our server will be maintained at 2015/07/10 0:00 ~ 24:00.
Please don‘t login server at that time. ^_^

那麽当你的使用者(包括所有的一般帐号与 root)登入主机后,就会显示这样的讯息出来:

Last login: Wed Jul  8 23:22:25 2015 from 127.0.0.1
Hello everyone,
Our server will be maintained at 2015/07/10 0:00 ~ 24:00.
Please don‘t login server at that time. ^_^

Linux /etc/issue 和 /etc/issue.net的作用和区别