想问问为嘛 CentOS7 上编辑了 hosts 文件后添加了 ip 映射但是不起作用 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
summerlv
V2EX    程序员

想问问为嘛 CentOS7 上编辑了 hosts 文件后添加了 ip 映射但是不起作用

  •  
  •   summerlv 2023-03-10 19:30:36 +08:00 1689 次点击
    这是一个创建于 947 天前的主题,其中的信息可能已经有所发展或是发生改变。
    情况是这样的:
    最近在学习 Hadoop ,然后搭建了三台虚拟机,在每台虚拟机上编辑 hosts 文件会出现以下问题:
    1. vim /etc/hosts 时,会先让输入密码。
    2. 输入 root 用户密码后会左下方会提示[只读]-[已加密] 字样
    3. 将写好的 ip 与主机名映射添加到 hosts 文件后没效果
    比如我添加
    192.168.1.11 hadoop1
    192.168.1.12 hadoop2

    这时候我在 hadoop1 上 ping hadoop2 会提示找不到主机...
    但是我直接 ping 192.168.1.12 是可以 ping 通的。

    求大佬指明下,浏览器也搜了,ChatGPT 也问了,都没解决,只好发帖问问了。
    20 条回复    2023-03-11 08:33:49 +08:00
    summerlv
        1
    summerlv  
    OP
       2023-03-10 19:34:10 +08:00
    4. 输入 root 用户密码后进入 hosts 会看到一些不知道是乱码还是被加密后的一些文本。
    hefish
        2
    hefish  
       2023-03-10 19:34:57 +08:00
    不是三台机器吗?怎么只写了两台的 IP ?
    不是应该 sudo vi /etc/hosts 吗?
    jimmy2010
        3
    jimmy2010  
       2023-03-10 19:36:24 +08:00 via Android
    是 Windows 下编辑后再传上去的吗?
    summerlv
        4
    summerlv  
    OP
       2023-03-10 19:38:32 +08:00
    @hefish
    关于 ip 罗列的问题,这个没关系,我只是简单罗列了下说明下问题而已;

    另外,sudo vi /etc/hosts 也试过,进去添加后也没效果,况且不管是在 root 用户登录的情况下还是普通用户登录的情况下进入 hosts 都需要输入 root 用户的密码。
    summerlv
        5
    summerlv  
    OP
       2023-03-10 19:39:17 +08:00
    @jimmy2010 不是,是直接在 VMware 上装的 centos7 上直接编辑的
    pengtdyd
        6
    pengtdyd  
       2023-03-10 19:39:25 +08:00
    hostname 没改
    summerlv
        7
    summerlv  
    OP
       2023-03-10 19:41:08 +08:00
    @pengtdyd
    改了的,hostname 都是改了的,比如 hadoop1 对应的就是 192.168.1.11 ,hadoop2 对应的就是 192.168.1.12
    pengtdyd
        8
    pengtdyd  
       2023-03-10 19:42:34 +08:00
    hostnamectl 执行这个命令看看
    summerlv
        9
    summerlv  
    OP
       2023-03-10 19:45:44 +08:00
    @pengtdyd 执行情况如下:
    [lv@hadoop102 bin]$ hostnamectl
    Static hostname: hadoop102
    Icon name: computer-vm
    Chassis: vm
    Virtualization: vmware
    Operating System: CentOS Linux 7 (Core)
    CPE OS Name: cpe:/o:centos:centos:7
    Kernel: Linux 3.10.0-1160.el7.x86_64
    Architecture: x86-64
    -------------------------------------------------------------
    [lv@hadoop103 bin]$ hostnamectl
    Static hostname: hadoop103
    Icon name: computer-vm
    Chassis: vm
    Virtualization: vmware
    Operating System: CentOS Linux 7 (Core)
    CPE OS Name: cpe:/o:centos:centos:7
    Kernel: Linux 3.10.0-1160.el7.x86_64
    Architecture: x86-64
    pengtdyd
        10
    pengtdyd  
       2023-03-10 19:50:55 +08:00
    你 Static hostname 是 hadoop102 ,从你的描述来看,你确定你 ping 对了?你从 hadoop102 这个主机 ping hadoop103 试试
    summerlv
        11
    summerlv  
    OP
       2023-03-10 19:55:22 +08:00
    @pengtdyd
    我的问题中描述的 ip 和主机名只是举例使用的,实际情况下,我从 hadoop102 上 ping hadoop103 是 ping 不通的,但是我在 hadoop102 上 ping 192.168.10.103 是可以 ping 通的
    ik
        12
    ik  
       2023-03-10 20:07:01 +08:00 via iPhone
    @summerlv 我咋感觉你这是 hosts 文件没写进去呢
    adoal
        13
    adoal  
       2023-03-10 20:27:04 +08:00
    file /etc/hosts
    cat /etc/hosts
    都显示啥?我感觉像是某次编辑时在 vim 里不小心把文件加密了。
    summerlv
        14
    summerlv  
    OP
       2023-03-10 21:12:35 +08:00
    [lv@hadoop102 bin]$ file /etc/hosts
    /etc/hosts: Vim encrypted file data

    看结果好像是加密了,但是我没做过这样的操作啊?


    [lv@hadoop102 bin]$ cat /etc/hosts
    [|i>6W.^r&$h$v'&]pOaC}8$
    `^*mW)C(^gCG,pj)_ex77qsu-2|Hn Q=.K J,V??NjD! x[lv@hadoop102 bin]$


    是因为 vim 加密了 hosts 文件,然后域名解析就解析不了里面的内容了吗?
    pengtdyd
        15
    pengtdyd  
       2023-03-10 21:31:42 +08:00
    看看 hosts 文件的编码是不是有问题
    wolfmei
        16
    wolfmei  
       2023-03-10 22:18:48 +08:00
    删了直接新建一个
    AngryPanda
        17
    AngryPanda  
       2023-03-11 01:01:14 +08:00 via iPhone
    hosts 文件还可以加密的嘛?
    summerlv
        18
    summerlv  
    OP
       2023-03-11 08:20:52 +08:00
    @pengtdyd 怎么查看编码呢?
    summerlv
        19
    summerlv  
    OP
       2023-03-11 08:32:19 +08:00
    哇塞,我终于解决了!!!
    参考了这篇文章: https://www.lxlinux.net/547.html
    实际情况就是 vim 把文件给加密了的原因导致 hosts 解析不了。
    用 vim 设置不要密码就行了:

    :set key=

    然后保存下,这样就行了。
    summerlv
        20
    summerlv  
    OP
       2023-03-11 08:33:49 +08:00
    @adoal 谢谢大佬的提示。现在在 hadoop102 上 ping hadoop103 可以 ping 通了,哈哈哈
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5521 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 08:29 PVG 16:29 LAX 01:29 JFK 04:29
    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