Windows下通过通过PuTTY登录VMware里面的Ubuntu,需要先知道Ubuntu的IP地址,如果是使用DHCP的话,IP地址可能会跟上次登录不一样。有没有办法在登录前的提示信息里面将IP地址显示出来呢?答案是肯定的。
登录前的提示信息是从/ertc/issue这个文件来的,默认是显示系统版本、主机名和登录端口。文件内容如下:
Ubuntu 12.04.2 LTS \n \l
显示出来是下面这样:
Ubuntu 12.04.2 LTS ubuntu tty1
我们可以修改这个文件,让它显示其他一些信息,比如内核版本、当前日期时间以及计算机域名等。这些都是非常简单的,只要插入一个对应的转化码就可以了。但是想要显示计算机的IP就没这么容易了。我们必须自己想办法获取IP地址信息,下面这一串命令就可以得到IP地址:
/sbin/ifconfig | grep "inet addr" | grep -v "127.0.0.1" | awk '{ print $2 }' | awk -F: '{ print $2 }'
但是怎么把这里得到的IP地址添加到/etc/issue文件里面呢?
首先将原始的/etc/issue文件复制一份保存起来
$ sudo cp /etc/issue /etc/issue-ori
然后在/etc/network/if-up.d/目录下新建一个脚本文件,内容如下:
#!/bin/sh
if [ "$METHOD" = loopback ]; then
exit 0
fi
if [ "$MODE" != start ]; then
exit 0
fi
cp /etc/issue-ori /etc/issue
/sbin/ifconfig | grep "inet addr" | grep -v "127.0.0.1" | awk '{ print $2 }' | awk -F: '{ print $2 }' >> /etc/issue
echo "" >> /etc/issue
这样就大功告成了,下次启动Ubuntu的时候,IP地址就显示在登录提示信息前面了。有了这个IP地址,就可以通过PuTTY登录了。