Linux修改本机/etc/hosts的hostName
1、Linux修改本机别名/etc/hosts的hostName后经常不生效解决
Linux修改本机别名/etc/hosts的hostName后经常不生效,
比如我们/etc/hosts的内容如下:
#192.68.1.10 message.xxx.com
192.68.1.11 message.xxx.com
但是ping
message.xxx.com还是指向192.68.1.10。
一般2种解决方案:
1). 重启,这是最直接最可靠稳定的一种方法,如果有些时候不方便重启,则可以使用第二种方法。
2). 修改/etc/sysconfig/network文件,将HOSTNAME修改成对应的别名,如下:
NETWORKING=yesHOSTNAME=host1(本质是/etc/init.d/network)
如果重启服务器后,还是不起作用,应该是本机的dns缓存引起的。
ps -ef|grep nscd
直接关闭Linux nscd 缓存服务:
/etc/init.d/nscd stop
2、Linux的DNS
linux本身是没有dns缓存的,想使用dns缓存的话需要自己安装一个服务程序NSCD(name service cache daemon).
nscd缓存三种服务passwd group hosts,所以它会记录三个库,分别对应源/etc/passwd, /etc/hosts 和 /etc/resolv.conf每个库保存两份缓存,一份是找到记录的,一份是没有找到记录的。每一种缓存都保存有生存时间(TTL).
安装:
yum install nscd
修改配置文件/etc/nscd.conf,开启dns缓存,修改这一行
enable-cache hosts yes。
如果启用了nscd 服务,才有dns 缓存,否则是没有dns缓存的。
开启 、停止、 重启服务
service nscd start | stop | restart
nscd的配置:
通过编辑/etc/nscd.conf文件,在其中增加如下一行可以开启本地DNS cache:
enable-cache hosts yes
阿里云主机上的配置如下:
- [root@iZ2571ykq ~]# cat /etc/nscd.conf
- #logfile /var/log/nscd.log
- threads 6
- max-threads 128
- server-user nscd
- debug-level 5
- paranoia no
- enable-cache passwd no
- enable-cache group no
- enable-cache hosts yes
- positive-time-to-live hosts 5
- negative-time-to-live hosts 20
- suggested-size hosts 211
- check-files hosts yes
- persistent hosts yes
- shared hosts yes
- max-db-size hosts 33554432
相关参数的解释如下:
logfile debug-file-name:指定调试信息写入的文件名。
debug-level value:设置希望的调试级别。
threads number:这是启动的等待请求的线程数。最少将创建5个线程。
server-user user:如果设置了该选项,nscd将作为该用户运行,而不是作为root。如果每个用户都使用一个单独的缓存(-S参数),将忽略该选项
enable-cache service <yes|no>:启用或禁用制定的 服务 缓存。
positive-time-to-live service value:设置 service 在指定缓存中正的项目(成功的请求)的TTL(存活时间)。 Value 以秒为单位。较大的值将增加缓存命中率从而减低平均响应时间,但是将增加缓存的一致性问题。
negative-time-to-live service value:设置 service 在指定缓存中负的项目(失败的请求)的TTL(存活时间)。 Value 以秒为单位。如果存在由不在系统数据库中的uid(用户ID)(例如在以root身份解包linux 内核源代码时)所拥有的文件将明显改善性能;应该维持较小的值以降低缓存一致性问题。
suggested-size service value:这是内部散列表的大小, value 应该保持一个素数以达到优化效果。
check-files service <yes|no>:启用或禁用检查属于指定 服务 的文件的改变。这些文件是 /etc/passwd, /etc/group, 以及/etc/hosts。
nscd的查看和清除
nscd缓存DB文件在/var/db/nscd下。
nscd -g 查看统计信息
清除 nscd缓存:
nscd -i passwd
nscd -i group
nscd -i hosts
当然也先删除缓存库或者停掉nscd服务:
rm -f /var/db/nscd/hosts
service nscd restart
或者是直接停止nscd 服务
service nscd stop。
1、关于/etc/host,主机名和IP配置文件
Linux操作系统下/etc/hosts文件配置方法
Linux 的/etc/hosts是配置ip地址和其对应主机名的文件,这里可以记录本机的或其他主机的ip及其对应主机名。不同的linux版本,这个配置文件也可能不同...
1、关于/etc/host,主机名和IP配置文件
Hosts - The static table lookup for host name(主机名查询静态表)
hosts文件是Linux系统中一个负责IP地址与域名快速解析的文件,以ASCII格式保存在“/etc”目录下,文件名为“hosts”(不同的linux版本,这个配置文件也可能不同。比如Debian的对应文件是/etc/hostname)。hosts文件包含了IP地址和主机名之间的映射,还包括主机名的别名。在没有域名服务器的情况下,系统上的所有网络程序都通过查询该文件来解析对应于某个主机名的IP地址,否则就需要使用DNS服务程序来解决。通常可以将常用的域名和IP地址映射加入到hosts文件中,实现快速方便的访问。
2、配置文件
这个文件可以配置主机ip及对应的主机名,对于服务器类型的linux系统其作用还是不可忽略的。在局域网或是INTERNET上,每台主机都有一个IP地址,它区分开每台主机,并可以根据ip进行通讯。但IP地址不方便记忆,所以又有了域名。在一个局域网中,每台机器都有一个主机名,用于区分主机,便于相互访问。
Linux主机名的相关配置文件就是/etc/hosts;这个文件告诉本主机哪些域名对应那些ip,那些主机名对应哪些ip:
比如文件中有这样的定义
192.168.1.100 linumu100 test100
假设192.168.1.100是一台网站服务器,在网页中输入http://linumu100或http://test100就会打开192.168.1.100的网页。
通常情况下这个文件首先记录了本机的ip和主机名:
127.0.0.1 localhost.localdomain localhost
3、配置文件格式说明
一般/etc/hosts 的内容一般有如下类似内容:
127.0.0.1 localhost.localdomain localhost
192.168.1.100 linmu100.com linmu100
192.168.1.120 ftpserver ftp120
一般情况下hosts文件的每行为一个主机,每行由三部份组成,每个部份由空格隔开。其中#号开头的行做说明,不被系统解释。
hosts文件的格式如下:
IP地址 主机名/域名
第一部份:网络IP地址;
第二部份:主机名或域名;
第三部份:主机名别名;
当然每行也可以是两部份,即主机IP地址和主机名;比如 192.168.1.100 linmu100。
这里可以稍微解释一下主机名(hostname)和域名(Domain)的区别:主机名通常在局域网内使用,通过hosts文件,主机名就被解析到对应ip;域名通常在internet上使用,但如果本机不想使用internet上的域名解析,这时就可以更改hosts文件,加入自己的域名解析。
hosts文件可以帮助解决哪些问题
4.1 远程登录linux主机过慢问题
有时客户端想远程登录一台linux主机,但每次登录输入密码后都会等很长一段时间才会进入,这是因为linux主机在返回信息时需要解析ip,如果在linux主机的hosts文件事先加入客户端的ip地址,这时再从客户端远程登录linux就会变很快。
注:这里所说的远程登录不仅仅是ssh,还可能是mysql远程登录,或是文件共享的查询等。
4.2 双机互连
当两台主机只是双机互连时,这时两台主机都需要设置自己的ip,同时在对方的hosts文件里加入自己的ip和主机名。
5、主机名修改工具hostname;
其实主机名的修改也有专用工具,就是hostname
hostname - show or set the system’s host name
显示主机名:
# hostname
linmu100
此主机的主机名是linmu100,不加参数是用来显示当前主机的主机名;
临时设置主机名:
# hostname test100
# hostname 注:显示主机名
test100
通过hostname 工具来设置主机名只是临时的,下次重启系统时,此主机名将不会存在;
显示主机IP:
# hostname -i
192.168.1.100
Linux修改本机/etc/hosts的hostName的更多相关文章
- Linux修改本机/etc/hosts的hostName后经常不生效
1.Linux修改本机别名/etc/hosts的hostName后经常不生效解决 Linux修改本机别名/etc/hosts的hostName后经常不生效, 比如我们/etc/hosts的内容如下: ...
- Linux - 修改Cent OS系统的的hostname、配置DNS映射
目录 1 修改方式 2 扩展: 配置DNS映射 本篇文章中, 示例设计到的操作系统是CentOS 6.5. 1 修改方式 ① 命令hostname onepiece -- 运行后设置立即生效, 但要在 ...
- LINUX 修改本机yum源为163镜像源
进入yum源配置目录 [root@localhost yum.repos.d]# cd /etc/yum.repos.d/ 备份系统yum源,用于日后恢复. [root@localhost yum.r ...
- linux修改主机名(hostname)转载
Linux修改主机名的方法 用hostname命令可以临时修改机器名,但机器重新启动之后就会恢复原来的值. #hostname //查看机器名#hostname -i //查看本机器名对应的ip ...
- linux修改主机名的方法
linux修改主机名的方法 用hostname命令可以临时修改机器名,但机器重新启动之后就会恢复原来的值. #hostname //查看机器名#hostname -i //查看本机器名对应的ip ...
- Linux修改hostname时/etc/hosts、/etc/sysconfig/network ,hostname,三者的区别和联系
[root@localhost /]# cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.l ...
- linux下/etc/hosts 和hostname文件的区别
很过人一提到更改hostname首先就想到修改/etc/hosts文件,认为hostname的配置文件就是/etc/hosts.其实不是的. hosts文件的作用相当如DNS,提供IP地址到hostn ...
- 深入理解Linux修改hostname
当我觉得对Linux系统下修改hostname已经非常熟悉的时候,今天碰到了几个个问题,这几个问题给我好好上了一课,很多知识点,当你觉得你已经掌握的时候,其实你了解的还只是皮毛.技术活,切勿浅尝则止! ...
- 转: 深入理解Linux修改hostname
from: http://www.cnblogs.com/kerrycode/p/3595724.html 写的相当详细!!! 深入理解Linux修改hostname 2014-03-12 10:17 ...
随机推荐
- FFMPEG结构体分析:AVPacket
注:写了一系列的结构体的分析的文章,在这里列一个列表: FFMPEG结构体分析:AVFrame FFMPEG结构体分析:AVFormatContext FFMPEG结构体分析:AVCodecConte ...
- C++中将构造函数或析构函数定义为private
今天面试被问到了这个单例模式常用到的技术手段,下面进行分析: 很多情况下要求当前的程序中只有一个object.例如一个程序只有一个和数据库的连接,只有一个鼠标的object.通常我们都将构造函数的声明 ...
- SVM实验
说明: 1)α2=0表示第二个样例不在分类面上,在分类面上的点αi均不为零. 2)二次项矩阵,可以通过矩阵相乘相加方法得到,如上例 3)目标函数变为负值,是为了照顾matlab的标准型. 假定应用多项 ...
- 报表打印错误:Forcing NLS_NUMERIC_CHARACTERS to: '.,' for XDO processing
HDSP0004 module: HDSP: 凭证打印 +----------------------------------------------------------------------- ...
- 数据库用户映射到SQL Server登录名
由于不是固定在一如电脑开始,经常需要把数据备份与恢复.或者是帮助客户修改程序,接收到客户备份好的数据,需要在电脑恢复. 这样就需要将数据库用户映射到 SQL Server 登录名.如何映射?可使用下面 ...
- Linux下进程通信方式(简要概述)
http://blog.sina.com.cn/s/blog_65c209580100u0ee.html (1)管道(Pipe):管道可用于具有亲缘关系进程间的通信,允许一个进程和另一个与它有共同祖先 ...
- C++语言之析构函数与构造函数
#include <iostream> using namespace std ; class Dog { //默认情况下定义变量为私有 int a ; public: //两个函数都只能 ...
- OpenCV手写数字字符识别(基于k近邻算法)
摘要 本程序主要参照论文,<基于OpenCV的脱机手写字符识别技术>实现了,对于手写阿拉伯数字的识别工作.识别工作分为三大步骤:预处理,特征提取,分类识别.预处理过程主要找到图像的ROI部 ...
- Unity的资源管理
本篇文章翻译自Unity的官方文档,原文地址:https://docs.unity3d.com/Manual/BehindtheScenes.html Unity自动导入资源的同时为你管理这些资源产生 ...
- Django之ModelForm
简介 Model + Form ==> ModelForm.model和form的结合体,所以有以下功能: 验证 数据库操作 Form回顾 models.py class UserType(mo ...