如何在 GNU/Linux 中设置域名?我正在使用 Crunchbang,我需要为我的 LAN 网络设置域名。
编辑:让我更多地谈谈我的问题:我需要为三到四台带有 GNU/Linux 的 PC 配置 LAN 网络(大学项目):
PC1: acting as server -- hostname = "server" -- GNU/Linux Debian Squeeze
PC2: client 1 -- hostname = "crunchbang" -- GNU/Linux Crunchbang
PC3: client 2 -- hostname = "acer" -- GNU/Linux Debian Squeeze
Crunchbang 是基于 debian 那么“我认为”没有太大区别。
我正在用这个来指导我文档那里说网络中所有主机的域名必须相同。
PC1和PC3中的操作系统是新安装的,Crunchbang是我朋友在笔记本电脑中安装的操作系统。
当我在 PC1 和 PC3 中安装 debian 时,我设置了域名和主机名,但现在只有最后一个存在。
答案1
您确实需要限定“设置域名”的含义 - 可能适用的“域”至少有三种完全不同的解释。
您想要设置系统将用于 SMB 网络的 Windows 域。
我不知道如何做到这一点,但它可能涉及编辑您的 Samba 配置;http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/domain-member.html#ads-member可能是一个开始寻找的好地方
您想要设置默认 DNS 名称(查找)
llua上面的答案设置了主机名的域部分,但是如果你想
ping myhost
在本地DNS域中找到myhost,假设它是accounting.example.com,你需要在/etc/resolv.conf中添加一个搜索行,例如:search accounting.example.com
在某些系统上,/etc/resolv.conf 由 resolvconf 系统管理(这在我的 Ubuntu 系统上是正确的,不确定一般的 Debian 或具体的 Crunchbang) - 如果 /etc/resolv.conf 是 /etc 的符号链接/resolvconf/run/resolv.conf 那么您可能应该编辑 /etc/network/interfaces,其中应包含如下节:
iface eth0 inet static address 192.0.2.3 netmask 255.255.255.0 gateway 192.0.2.1 dns-nameservers 192.0.2.1 198.51.100.1 dns-search accounting.example.com example.com
如果您使用 DHCP 来设置本地网络配置,则 DHCP 守护程序应自动设置本地主机名和 DNS 解析器搜索路径 - 您可能会发现这是比 llua 或我的更好的解决方案,至少如果有本地 DHCP 服务器,并且已正确配置以提供 DNS 搜索信息。
您要设置 NIS (YP) 域名,用于 passwd/group/hosts/etc。在某些设置了 NFS 文件共享的系统上进行查找。
您可以通过编辑 /etc/domainname 和/或立即(但暂时)使用命令来完成此操作
domainname NISNAME
。请注意,NIS 域名不必与 DNS 域名相同(实际上有些人建议不要相同),但至少在某些情况下,NIS 域名将自动设置为主机名的域部分(如果不是这样的话)配置。
答案2
编辑/etc/hostname
<hostname>.<domainname>
然后编辑你的/etc/hosts
127.0.0.1 <hostname>.<domainname> <hostname>
答案3
步骤1:更改主机文件中的新值
[root@erp ~]# cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
192.168.0.1 erp.myappsdba.com erp
[root@erp ~]#
步骤2:更改网络文件中的新值
[root@erp ~]# cat /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=erp.myappsdba.com
GATEWAY=192.168.0.3
步骤 3:更改 sysctl.conf 和 resolv.conf 文件中的新值
[root@erp ~]## cat /etc/sysctl.conf
kernel.hostname=erp.myappsdba.com
kernel.domainname=myappsdba.com
[root@erp etc]# cat /etc/resolv.conf
search myappsdba.com
nameserver 192.168.0.7
nameserver 192.168.0.2
option attemts : 5
option timeout :15
[root@erp etc]#
步骤 4:Ping 主机名或更改后的 IP 地址。
[root@erp etc]# ping myappsdba.com
PING myappsdba.com (192.168.0.1) 56(84) bytes of data.
64 bytes from fortedc.myappsdba.com (192.168.0.1): icmp_seq=1 ttl=128 time=1.06 ms
步骤5:重新启动网络或重新启动系统以使更改生效
[root@erp ~]# init 6
或者
[root@erp ~]# service network restart
答案4
尝试进行更改
1)
/etc/rc.sysinit 或 /etc/sysconfig/network (如果它支持 sysconfig 风格的配置);
2) 以 root 身份运行网络管理并通过 GUI 网络管理进行更改
&
使用 /bin/hostname 命令确认
3) 不管怎样,对 /etc/hostname 的格式进行更改,然后重新启动网络服务应该会有所帮助。