• Linux下修改hostname


    我维护两三个机房的数十台机器,开发用机器,运营用机器,自己工作机器也是ubuntu,有时开很多ssh,干的还是同样的事情,很容易搞混。所以需要一目了然的知道某台机器的情况,避免犯晕。这就需要修改主机名。缺省安装系统的主机名都是Localhost,无法区分。

    1.临时修改主机名

    显示主机名:

    zhouhh@zzhh64:~$ hostname
    zhh64

    修改主机名:

    zhouhh@zzhh64:~$ sudo hostname zzofs
    zhouhh@zzhh64:~$ hostname
    zzofs

    看一下$PS1

    zhouhh@zzhh64:~$ echo $PS1
    /[/e]0;/u@/h: /w/a/]${debian_chroot:+($debian_chroot)}/u@/h:/w/$
    @符号后面跟/h即主机名。

    命令行前的提示符主机名怎么没有更新呢?

    重新打开一个终端,就看到更新了。

    zhouhh@zzofs:~$

    2.永久修改主机名

    以上的修改只是临时修改,重启后就恢复原样了。

    redhat/centos上永久修改

    [root@localhost ~]# cat /etc/sysconfig/network
    NETWORKING=yes
    HOSTNAME=localhost.localdomain
    GATEWAY=192.168.10.1

    修改network的HOSTNAME项。点前面是主机名,点后面是域名。没有点就是主机名。

    [root@localhost ~]# vi /etc/sysconfig/network

    NETWORKING=yes
    NETWORKING_IPV6=no
    HOSTNAME=gdbk

    这个是永久修改,重启后生效。目前不知道怎么立即生效。

    想立即生效,可以同时采用第一种方法。

    deb/ubuntu上修改

    hostname
    localhost.localdomain

    sudo vi /etc/hostname

    在/etc/hostname里面直接填上hostname

    zhouhh@localhost:~$ cat /etc/hostname
    zhh64

    重启后,提示符变成了。

    zhouhh@zhh64:~$

    如果不想重启,则用hostname名令。

    3. 其他修改方式

    用sysctl 修改kernel.hostname

    查看:

    zhouhh@zhh64:~$ sysctl kernel.hostname
    kernel.hostname = zhh64

    修改:

    zhouhh@zhh64:~$ sudo sysctl kernel.hostname=zzh
    kernel.hostname = zzh

    重新打开shell就变成如下hostname了zhh

    zhouhh@zzh:~$

    4. hosts文件与主机名修改无关

    我维护两三个机房的数十台机器,开发用机器,运营用机器,自己工作机器也是ubuntu,有时开很多ssh,干的还是同样的事情,很容易搞混。所以需要一目了然的知道某台机器的情况,避免犯晕。这就需要修改主机名。缺省安装系统的主机名都是Localhost,无法区分。

    1.临时修改主机名

    显示主机名:

    zhouhh@zzhh64:~$ hostname
    zhh64

    修改主机名:

    zhouhh@zzhh64:~$ sudo hostname zzofs
    zhouhh@zzhh64:~$ hostname
    zzofs

    看一下$PS1

    zhouhh@zzhh64:~$ echo $PS1
    /[/e]0;/u@/h: /w/a/]${debian_chroot:+($debian_chroot)}/u@/h:/w/$
    @符号后面跟/h即主机名。

    命令行前的提示符主机名怎么没有更新呢?

    重新打开一个终端,就看到更新了。

    zhouhh@zzofs:~$

    2.永久修改主机名

    以上的修改只是临时修改,重启后就恢复原样了。

    redhat/centos上永久修改

    [root@localhost ~]# cat /etc/sysconfig/network
    NETWORKING=yes
    HOSTNAME=localhost.localdomain
    GATEWAY=192.168.10.1

    修改network的HOSTNAME项。点前面是主机名,点后面是域名。没有点就是主机名。

    [root@localhost ~]# vi /etc/sysconfig/network

    NETWORKING=yes
    NETWORKING_IPV6=no
    HOSTNAME=gdbk

    这个是永久修改,重启后生效。目前不知道怎么立即生效。

    想立即生效,可以同时采用第一种方法。

    deb/ubuntu上修改

    hostname
    localhost.localdomain

    sudo vi /etc/hostname

    在/etc/hostname里面直接填上hostname

    zhouhh@localhost:~$ cat /etc/hostname
    zhh64

    重启后,提示符变成了。

    zhouhh@zhh64:~$

    如果不想重启,则用hostname名令。

    3. 其他修改方式

    用sysctl 修改kernel.hostname

    查看:

    zhouhh@zhh64:~$ sysctl kernel.hostname
    kernel.hostname = zhh64

    修改:

    zhouhh@zhh64:~$ sudo sysctl kernel.hostname=zzh
    kernel.hostname = zzh

    重新打开shell就变成如下hostname了zhh

    zhouhh@zzh:~$

    4. hosts文件与主机名修改无关

    一些网络文章中提出修改主机名还需修改Hosts文件,其实hosts文件和主机名修改无关。

    cat /etc/hosts

    127.0.0.1       localhost
    192.168.11.116  zhh64
    192.168.12.14 centdev

    # The following lines are desirable for IPv6 capable hosts
    ::1     localhost ip6-localhost ip6-loopback
    fe00::0 ip6-localnet
    ff00::0 ip6-mcastprefix
    ff02::1 ip6-allnodes
    ff02::2 ip6-allrouters
    ff02::3 ip6-allhosts

    hosts文件是配本地主机名/域名解析的。

    如我本机ip是192.168.11.116名字是zhh64.就可以直接访问主机名。

    zhouhh@zhh64:~$ ping zhh64
    PING zhh64 (192.168.11.116) 56(84) bytes of data.
    64 bytes from zhh64 (192.168.11.116): icmp_seq=1 ttl=64 time=0.077 ms

    zhouhh@zhh64:~$ ping centdev
    PING centdev (192.168.12.14) 56(84) bytes of data.
    64 bytes from centdev (192.168.12.14): icmp_seq=1 ttl=63 time=0.726 ms

    如果是小型局域网,就可以将hosts文件机器配全了,拷贝到每个机器,然后在ssh访问时用主机名直接访问。

    zhouhh@zhh64:~$ ssh centdev
    zhouhh@centdev's password:
    Last login: Wed Feb  3 10:03:09 2010 from 192.168.11.116
    [zhouhh@centdev ~]$
    [zhouhh@centdev ~]$ ifconfig eth0 | grep inet
              inet addr:192.168.12.14  Bcast:192.168.12.255  Mask:255.255.255.0
              inet6 addr: fe80::21e:c9ff:fe57:2575/64 Scope:Link

    4.参考

    http://www.ducea.com/2006/08/07/how-to-change-the-hostname-of-a-linux-system/

    一些网络文章中提出修改主机名还需修改Hosts文件,其实hosts文件和主机名修改无关。

    cat /etc/hosts

    127.0.0.1       localhost
    192.168.11.116  zhh64
    192.168.12.14 centdev

    # The following lines are desirable for IPv6 capable hosts
    ::1     localhost ip6-localhost ip6-loopback
    fe00::0 ip6-localnet
    ff00::0 ip6-mcastprefix
    ff02::1 ip6-allnodes
    ff02::2 ip6-allrouters
    ff02::3 ip6-allhosts

    hosts文件是配本地主机名/域名解析的。

    如我本机ip是192.168.11.116名字是zhh64.就可以直接访问主机名。

    zhouhh@zhh64:~$ ping zhh64
    PING zhh64 (192.168.11.116) 56(84) bytes of data.
    64 bytes from zhh64 (192.168.11.116): icmp_seq=1 ttl=64 time=0.077 ms

    zhouhh@zhh64:~$ ping centdev
    PING centdev (192.168.12.14) 56(84) bytes of data.
    64 bytes from centdev (192.168.12.14): icmp_seq=1 ttl=63 time=0.726 ms

    如果是小型局域网,就可以将hosts文件机器配全了,拷贝到每个机器,然后在ssh访问时用主机名直接访问。

    zhouhh@zhh64:~$ ssh centdev
    zhouhh@centdev's password:
    Last login: Wed Feb  3 10:03:09 2010 from 192.168.11.116
    [zhouhh@centdev ~]$
    [zhouhh@centdev ~]$ ifconfig eth0 | grep inet
              inet addr:192.168.12.14  Bcast:192.168.12.255  Mask:255.255.255.0
              inet6 addr: fe80::21e:c9ff:fe57:2575/64 Scope:Link

    4.参考

    http://www.ducea.com/2006/08/07/how-to-change-the-hostname-of-a-linux-system/

  • 相关阅读:
    Python编程 从入门到实践-2变量上
    NX二次开发-基于Winform界面对话框与NXOPEN C#交互的开发(对话框嵌套)
    NX二次开发-UFUN获取投影曲线里的曲线UF_CURVE_ask_proj_curves
    NX二次开发-UFUN获取投影曲线里的曲线UF_MODL_ask_proj_curves
    NX二次开发-UFUN创建投影曲线UF_MODL_create_proj_curves
    NX二次开发-NXOPEN C#项目如何设断点调试代码
    NX二次开发-外部开发模式exe(不打开NX进行后台操作)以及封装exe传参调用
    NX二次开发-工程图模板,标题栏,页码,日期,比例,单位,部件名,等自动更新【转载】
    QTreeWidget 遍历所有子节点(QTreeWidgetItem)【转载】
    NX二次开发-使用NXOPEN C#手工搭建开发环境配置
  • 原文地址:https://www.cnblogs.com/likai198981/p/3307004.html
Copyright © 2020-2023  润新知