• hostname -f与uname -n的返回值可能不同


    博客主页:https://tomcat.blog.csdn.net
    博主昵称:农民工老王
    主要领域:Java、Linux、K8S
    期待大家的关注💖点赞👍收藏⭐留言💬
    家乡

    在工作中,由于使用的软件的运行要求,我遇到的Linux系统大部分会将主机名设置为一个像test.laowang.cn这样的全限定域名。在接触Linux之初,我就通过网络了解到,获取全限定域名的命令是hostname -f ,并在写脚本时,频繁使用这一命令。随后,我接手了其他同事写的shell脚本,读到uname -n 这一命令。这个命令是我第一次看到,在网上查看了其大概作用后,再将这个命令在电脑上运行了一下,发现得到的也是全限定域名。然后,我就以为hostname -funame -n的返回值,是一样的,都是Linux系统的全限定域名。

    返回值一样的情况

    一般情况下,如果在/etc/hostname/etc/hosts中写入了一样的主机名,那么hostname -funame -n的返回值是相同的,如下图所示:

    在这里插入图片描述

    返回值不同的情况

    后来才发现,这两个命令的返回值很有可能不一样。如果将/etc/hostname中的值设为不被点号分割的单个单词。同时,在/etc/hosts中,为本机ip设置两个机器名,且只有较短的那个与/etc/hostname的值保持一致,就可以让hostname -funame -n的返回值不同。如下图所示:
    在这里插入图片描述

    比较hostname和uname命令

    通过查看两个命令的帮助,我可以看出hostname主要是查看或设置主机名 -f 参数表示全限定域名,-s 参数表示短名。而uname命令的英文全称为“Unix name”,用于显示系统相关信息,比如主机名、内核版本号、硬件架构等,-n 表示输出本机网络节点的名字。

    目前的各种操作表明,hostname -funame -n的返回值可能不同,hostname -suname -n的返回值一般相同。但我也不能断定hostname -suname -n是两个等价的命令,所以我们在编程时,最好不要在一个程序中,交替使用两个命令来获取主机名。

    在这里插入图片描述
    在这里插入图片描述


    如需转载,请注明本文的出处:农民工老王的CSDN博客https://blog.csdn.net/monarch91 。

  • 相关阅读:
    高防服务器和普通服务器之间的区别有哪些
    大数据之Kafka
    dfs+剪枝,LeetCode 39. 组合总和
    font标签、特殊字符、标题标签h1-h6
    Kafka为什么性能这么快?4大核心原因详解
    在CDH的hue上的oozie出现,提交 Coordinator My Schedule 时出错
    分布式多级缓存
    手把手教你解决ArrayIndexOutOfBoundsException数组越界异常
    PowerDesigner逆向工程将MySQL数据库转成pdm
    .Net Core工作流WorkFlowCore
  • 原文地址:https://blog.csdn.net/monarch91/article/details/125185856