linux基本配置
1.修改主机名—重启后永久生效
- centos6的做法,
vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=server1.itcast.cn
- centos7做法
#1 无需重启只需新开会话便可变为新的主机名
hostnamectl set-hostname Master
#2 通过修改文件,重启reboot生效
vi /etc/hostname 添加主机名
Slave01
vi /etc/sysconfig/network 添加IP和hostname对应关系
10.238.162.33 Slave01
#3 临时修改主机名
hostname Slave01
资料来源:https://www.jb51.net/article/155394.htm
2.修改ip地址
vi /etc/sysconfig/network-scripts/ifcfg-eth0(不通的系统版本,名称可能会变,例如centos7为ens-33)
找到网卡的配置文件,然后修改下方的参数,不要将文件中的内容全部删除。
修改之后
service network restart
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes #是否开机启用
BOOTPROTO=static #ip地址设置为静态
IPADDR=192.168.0.101
NETMASK=255.255.255.0
GATEWAY=192.168.11.1 #自己对应的网关地址,非必需,如果要访问外网时必填
DNS1=8.8.8.8 # 提前设置好dns,可以避免不能访问域名的问题
注意:克隆的虚拟机,启动网络服务可能会启动失败。
service network restart
会报错:Device eth0 does not seem to be present, delaying initialization
- 现象:虚拟机Vmware上克隆了一个Red Hat Enterprise Linx启动时发现找不到网卡,如下所示,如果你在命令窗口启动网络服务就会遇到”Device eth0 does not seem to be present, delaying initialization“错误
service network restart
Shutting down loopback insterface: [ OK ]
Bringing up loopback insterface: [ OK ]
Bringing up interface eth0: Device eth0 does not seem to be present,delaying initialization. [FAILED]
- 错误原因:
克隆的Linux系统在新的机器上运行,新服务器网卡物理地址已经改变。而/etc/udev/rules.d/70-persistent-net.rules这个文件确定了网卡和MAC地址的信息之间的绑定,克隆后的网卡的MAC已经发生了变化,所以导致系统认为网络设备不存在,网络不能正常启动。另外一个就是/etc/sysconfig/network-scripts/ifcfg-eth0里面MAC地址也是以前的旧信息。
关于/etc/udev/rules.d/70-persistent-net.rules这个文件,系统在启动时会自动监测变化,然后由/lib/udev/write_net_rules写入到/etc/udev/rules.d/70-persistent-net.rules中一个新的配置节,网卡的的序号依次递增(如原来为eth0,则修改第一后生成一个eth1,再次修改后生成一个eth2…),且其ATTR{address}的值为当前网卡对应的mac地址。简而言之,就是eth0为被克隆的上一个机器mac信息,新机器启动后,发现eth0和自己不符,那就再生成eth1为自己的信息。
推荐做法:
首先,vi /etc/sysconfig/network-script/ifcfg-eth0 , 删掉UUID HWADDR ,修改ip地址
然后,rm -rf /etc/udev/rules.d/70-persistent-net.rules 重启后会重新自动生成。
或者,更改该文件中,将eth1的物理地址复制给eht0,删掉eth1的配置。
或者,更改该文件中,删掉eth0,再将eht1改为eth0。
然后 reboot
方案一:
简而言之:
vi /etc/sysconfig/network-script/ifcfg-eth0 , 删掉UUID, 修改或删除HWADDR ,修改ip地址
rm -rf /etc/udev/rules.d/70-persistent-net.rules 重启后会重新自动生成。
https://www.cnblogs.com/kerrycode/p/4345692.html
详细:
1 编辑/etc/sysconfig/network-scripts/ifcfg-eth0配置文件,将ifcfg-eth0的配置文件里里面以前的关于MAC地址这一行删除掉或修改。另外克隆的服务器的IP设置的是静态IP,要么修改为一个其它的IP地址或设置为动态IP,重启网卡服务
2 找到/etc/udev/rules.d/70-persistent-net.rules 删除后重启机器,系统会自动生成一个70-persistent-net.rules文件。
因为这个文件绑定了网卡和MAC地址,换了网卡以后MAC地址变了,所以不能正常启动,也可以直接编辑这个配置文件把里面的网卡和MAC地址修改成对应的,不过这样多麻烦,直接删除重启,它会自动生成个一个新的文件。
- 删除前70-persistent-net.rules的内容
**
- 重新生成的70-persistent-net.rules的内容
重启过后OK,但是我想将测试服务器设置为动态IP,于是在/etc/sysconfig/network-scripts/ifcfg-eth0配置文件里面修改了一番,但是老是获取不到IP地址,将地址改为静态IP地址又没有问题,折腾了好久,最后悲催的发现需要运行dhclient命令才能获取动态IP地址。
方案二:
简而言之:
将 ifcfg-eth0中的
HWADDR 改成rules中的eth1的HWADDR地址。
DEVICE=”eth0” 改成 DEVICE=”eth1” ,
或者直接删掉eth0,再将eht1改为eth0。
https://blog.csdn.net/l1028386804/article/details/80939203
首先,打开/etc/udev/rules.d/70-persistent-net.rules内容如下面例子所示:
# vi /etc/udev/rules.d/70-persistent-net.rules
# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.
# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:8f:89:97", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:50:bd:17", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
记录下,eth1网卡的mac地址00:0c:29:50:bd:17
接下来,打开/etc/sysconfig/network-scripts/ifcfg-eth0
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
将 DEVICE=”eth0” 改成 DEVICE=”eth1” ,
将 HWADDR=”00:0c:29:8f:89:97” 改成上面的mac地址 HWADDR=”00:0c:29:50:bd:17”
最后,重启网络
# service network restart
或者
# /etc/init.d/network restart
方案三:
https://blog.csdn.net/l1028386804/article/details/80939203
简言之,将rules 文件eth1的信息替换到eth0,删除eth1;
添加或更改ifcfg-eth0中的HWADDR为新eth0中的mac地址。
首先,打开/etc/udev/rules.d/70-persistent-net.rules内容如下面例子所示:
# vi /etc/udev/rules.d/70-persistent-net.rules
# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.
# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:8f:89:97", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:50:bd:17", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
这里,我们修改70-persistent-net.rules文件,将eth0的Mac地址修改为eth1的Mac地址,即将00:0c:29:8f:89:97修改为00:0c:29:50:bd:17,同时我们删除如下eth1信息:
# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:50:bd:17", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
修改后的70-persistent-net.rules文件如下:
# vi /etc/udev/rules.d/70-persistent-net.rules
# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.
# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:50:bd:17", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
接下来,打开/etc/sysconfig/network-scripts/ifcfg-eth0
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
将 HWADDR=”00:0c:29:8f:89:97” 改成上面的mac地址 HWADDR=”00:0c:29:50:bd:17”
最后,重启网络
# service network restart
或者
# /etc/init.d/network restart
3.修改ip地址和主机名的映射关系
vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.0.101 server1.itcast.cn
4.关闭防火墙iptables并设置其开机启动/不启动
最精简化安装的centos7,service查看防火墙的命令可能不生效。报错:
Redirecting to /bin/systemctl status iptables.service
Unit iptables.service could not be found.
建议使用systemctl
1:查看防火状态
systemctl status firewalld
service iptables status
2:暂时关闭防火墙
systemctl stop firewalld
service iptables stop
3:永久关闭防火墙
systemctl disable firewalld
chkconfig iptables off
4:重启防火墙
systemctl enable firewalld
service iptables restart
5:永久关闭后重启
//暂时还没有试过
chkconfig iptables on