请教一个 hostname 的问题:怎样在 CentOS 6.8 里更改 hostname? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
ericgui
V2EX    Linux

请教一个 hostname 的问题:怎样在 CentOS 6.8 里更改 hostname?

  •  
  •   ericgui 2016-10-20 16:13:31 +08:00 6609 次点击
    这是一个创建于 3280 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我的 shell 一直显示是 root@localhost
    然后昨天我不知道做了什么,结果我的 shell 就成了 root@bogon
    用命令 hostname ,显示: bogon
    但用 cat /etc/sysconfig/network 看了
    结果是:
    NETWORKING=yes
    HOSTNAME=localhost
    用 cat /etc/hosts
    显示:
    127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1 localhost localhost.localdomain localhost6 localhost4.localdomain6

    我查了半天, google 半天,都是说要改 HOSTNAME
    这 TM 本来 HOSTNAME 就是 localhost ,这个咋办?

    求高人帮助,谢谢!
    20 条回复    2016-10-21 20:09:46 +08:00
    ppwangs
        1
    ppwangs  
       2016-10-20 16:53:09 +08:00
    /etc/hostname
    ppwangs
        2
    ppwangs  
       2016-10-20 16:54:20 +08:00
    $ hostname --help
    Usage: hostname [OPTION...] [NAME]
    Show or set the system's host name.

    -a, --aliases alias names
    -d, --domain DNS domain name
    -f, --fqdn, --long DNS host name or FQDN
    -F, --file=FILE set host name or NIS domain name from FILE
    -i, --ip-addresses addresses for the host name
    -s, --short short host name
    -y, --yp, --nis NIS/YP domain name
    -?, --help give this help list
    --usage give a short usage message
    -V, --version print program version

    Mandatory or optional arguments to long options are also mandatory or optional
    for any corresponding short options.

    Report bugs to <[email protected]>.
    morven
        3
    morven  
       2016-10-20 17:00:36 +08:00 via iPhone
    直接改$PS1 ?
    holyzhou
        4
    holyzhou  
       2016-10-20 17:01:19 +08:00
    我就一句话
    你先重启下试试
    然后要了解到临时生效与永久生效的区别
    再接着 你要多啃啃鸟哥,基础打打牢
    lxf1992521
        5
    lxf1992521  
       2016-10-20 17:07:52 +08:00
    sudo sysctl -w kernel.hostname="test"

    退出 SSH 再进行登录就行了。
    ericgui
        6
    ericgui  
    OP
       2016-10-20 17:48:44 +08:00
    @ppwangs 我这样 centos6 里没这文件
    watara
        7
    watara  
       2016-10-20 18:38:26 +08:00
    /etc/sysconfig/network 里面改下,重启一下就好了吧?实在不行 在命令行里运行写“ hostname XXXX ”,不过肯定需要注销重新登录才能看到结果的
    akwIX
        8
    akwIX  
       2016-10-20 18:39:36 +08:00
    salmon5
        9
    salmon5  
       2016-10-20 20:40:33 +08:00
    1 , vim /etc/sysconfig/network
    2 , hostname xxx
    退出重新登陆。
    ericgui
        10
    ericgui  
    OP
       2016-10-20 21:15:26 +08:00
    @salmon5
    @watara 两位看看我的帖子嘛,我这个文件里,本来 HOSTNAME 就是 localhost ,仍然显示 root@bogon ,所以才实在不知道怎么解决了。。。。。
    chinabingyang
        11
    chinabingyang  
       2016-10-20 21:59:11 +08:00   1
    你好,来自百度的答案,不知是否正确

    我 mac 电脑也曾出现过这种情况

    如何解决这个问题
    修改你的 DNS 为公共 DNS ,例如 114.114.114.114 或者谷歌的 8.8.8.8 。
    然后修改你的主机名:
    sudo hostname localhost

    出现这个问题的原因
    终端在初始化时,需要确定主机的名字,此时终端会向 DNS 服务器反向查询本机 IP 地址,然后把得到的名字作为自己的主机名。如果没有反向解析的结果,就会显示本机设置的主机名。

    那么 bogon 是什么意思呢?一个 DNS 反向解析名为 bogon 的 IP 地址不会显示在 traceroute 中。

    我猜题主可能在一个路由器组织的局域网环境中,并且你的 DNS 地址是你路由器的地址,这样终端反向查询你本机 IP 地址得到的结果是 bogon ,于是你在终端里显示的主机名就变成了 bogon 。

    作者: Helvetica
    salmon5
        12
    salmon5  
       2016-10-20 22:09:42 +08:00
    @ericgui /etc/sysconfig/network 这个只是开机的时候加载一次,加载一次后,就不管用了。
    那么你 hostname xxx 后,主机名就是 xxx 了,和 /etc/sysconfig/network 无关了。
    很简单,你重启下机器就可以啦。
    1120101929
        13
    1120101929  
       2016-10-20 23:17:41 +08:00
    刚刚我也遇到这个问题了。家里使用的是小米路由器,主机名是 MiWifi****。
    按照 @chinabingyang 给的方法解决了。感谢。
    introom
        14
    introom  
       2016-10-21 01:04:34 +08:00 via Android
    补充一下,关于 hostname,有个东西叫 hostnamectl, 基础知识,基础知识啊,一言不合动不动手工修改 hostname 也成,但那不是最佳实践。
    我们做事呢,讲究 best practice, best practice.
    bao3
        15
    bao3  
       2016-10-21 03:20:41 +08:00 via Android
    有几个可能, 1 是你的 shell 修改了 hostname 变量,所以不管改哪个,只要 shell 的配置写了,你也改不了。 2 ,重启后看看有没有恢复,没有的话,就是你的 文件有问题,你可以自己写一个 hostname 文件,使用 hostname 指令读一下看会发生什么。 3 ,你安装你自己不知道的东西,那个东西会随机启动,这个只能自己想一下了。
    shlabc
        16
    shlabc  
       2016-10-21 06:50:04 +08:00
    CentOS5 配置主机名

    #( 1 )修改 /etc/sysconfig/network ,修改 HOSTNAME

    #( 2 )命令行继续修改: hostname newname ,命令执行后退出,重新登陆即刻生效(重启系统后也有效)
    [root@www ~]# logout

    #( 3 )注意同时修改 /etc/hosts 里的相关信息
    ericgui
        17
    ericgui  
    OP
       2016-10-21 15:27:33 +08:00
    @introom hostnamectl command not found 亲,我郁闷啊
    ericgui
        18
    ericgui  
    OP
       2016-10-21 15:32:27 +08:00
    @bao3 哪里可以查看 shell 的变量设置?似乎我要改的是 PS1 ,但不知道应该怎么改
    okudayukiko0
        19
    okudayukiko0  
       2016-10-21 19:02:35 +08:00
    应该是 vim /etc/hostname
    PaleCheung
        20
    PaleCheung  
       2016-10-21 20:09:46 +08:00
    @introom 这个命令 rhel /centos 7 才有。

    一般用来看跑什么虚拟化比较有用。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     974 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 22:31 PVG 06:31 LAX 15:31 JFK 18:31
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86