本地Linux CentOS7服务器安装笔记
发布时间:2023-05-27, 15:22:42 分类:Linux | 编辑 off 网址 | 辅助
图集1/10
正文 807字数 70,480阅读
centos7 设置唯一IP Name or service not know
[root@www ~]# ping www.baidu.com
ping: www.baidu.com: Name or service not known
记住NAT设置中的子网IP、子网掩码、网关IP三项,
接下来配置文件主要是这三项。
编辑Linux中的网络配置文件
vi /etc/sysconfig/network-scripts/ifcfg-ens33 #注 网络配置文件名可能会有不同,在输入到ifcfg时,可以连续按两下tab键,获取提示,比如我的机器 为 ifcfg-ens33
Run code
Cut to clipboard
内容替换如下:
TYPE=”Ethernet”
BOOTPROTO=”static” #静态连接
NAME=”ens33”
UUID=”1f093d71-07de-4ca5-a424-98e13b4e9532”
DEVICE=”ens33”
ONBOOT=”yes” #网络设备开机启动
IPADDR=”192.168.0.101” #192.168.59.x, x为3~255.
NETMASK=”255.255.255.0” #子网掩码
GATEWAY=”192.168.66.2” #网关IP
DNS1= 8.8.8.8
DNS2=8.8.8.4
Run code
Cut to clipboard
查看网络配置
ip addr
Run code
Cut to clipboard
重启网络服务
service network restart
Run code
Cut to clipboard
DNS文件配置
vi /etc/resolv.conf
nameserver 8.8.8.8
nameserver 8.8.4.4
Run code
Cut to clipboard
(支付宝)给作者钱财以资鼓励 (微信)→
有过 5 条评论 »
在linux中ping www.baidu.com 无法ping通,可能原因是DNS没配置好
方法一:修改
vi /etc/resolv.conf 增加如下内容: nameserver 114.114.114.114 (电信的DNS) nameserver 8.8.8.8(googel的DNS)
方法二:
ip a 或者 ifconfig 查看使用的网卡然后进入/etc/sysconfig/network-scripts找到对应的网卡进行修改 vi /etc/sysconfig/network-scripts/ifcfg-ethx DEVICE=ethx TYPE=Ethernet ONBOOT=yes BOOTPROTO=static IPADDR=192.168.1.101 NETMASK=255.255.255.0 DNS1=114.114.114.114 重启网卡 service network restart
方法三:
如果添加了DNS还是无法ping外网,那就要查看路由中的网关设置
netstat -rn
Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 192.168.129.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
这就表示网关没有设置,添加路由网关
route add default gw 192.168.129.2(我的路由网关是这个)
再次查看
netstat -rn Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 192.168.129.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 0.0.0.0 192.168.129.2 0.0.0.0 UG 0 0 0 eth0
添加成功,但是这种方法不是永久的,
重启服务器或者重启网卡后悔失效
静态路由加到/etc/sysconfig/static-routes 文件中就行了,没有这个文件就新建一个 如 route add default gw 192.168.129.2 则文件中加入 any net default gw 192.168.129.2
保存退出,重启网卡验证
报错PING: WWW.XXX.COM: NAME OR SERVICE NOT KNOWN
问题:CentOS 7中无法联网,如下所示:
其他可能由于网络原因造成的报错:
用yum时,报错cannot find a valid baseurl for repobase7x86_64;
以及用git clone时,报错Could not resolve host: github.com; Unknown error等。
3. 问题排查与解决
3.1 检查网络连接设置
使用命令
sudo nmcli d
用
ls /etc/sysconfig/network-scripts/ifcfg-e*查看文件,因为每个人的网卡文件名可能有不同,我的这里是cat /etc/sysconfig/network-scripts/ifcfg-ens33,然后使用命令cat /etc/sysconfig/network-scripts/ifcfg-ens33,结果如下:[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33 TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=dhcp DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=ens33 UUID=5db68001-983a-4391-8c8c-ad61b31799ba DEVICE=ens33 ONBOOT=no # 设置不启动网卡果然这里设置默认不启动连接网络。
解决办法:输入
vi /etc/sysconfig/network-scripts/ifcfg-ens33
再输入
service network restart
再ping,发现成功,解决问题。如果问题还在,继续往后看。
3.2 检查网关问题
使用
cat /etc/resolv.conf
[root@localhost ~]# cat /etc/resolv.conf
# Generated by NetworkManager
说明此时没有配置网关。
解决办法:修改/etc/resolv.conf文件,命令为
vi /etc/resolv.conf
# Generated by NetworkManager search localdomain nameserver 192.168.211.2 # 虚拟机默认分配的 nameserver 114.114.114.114 # 电信的DNS nameserver 8.8.8.8 # googel的DNS
通常虚拟机中cat /etc/resolv.conf默认是:
search localdomain nameserver 192.168.xxx.xxx # 这里取决于你的网络,每个人会有所区别 也可以添加一下DNS nameserver 114.114.114.114 # 电信的DNS nameserver 8.8.8.8 # googel的DNS :wq保存退出后
centos7配置IP
使用 ip addr命令查看查看网卡名和是否有网络,获知网卡名为ens33
输入
vi /etc/sysconfig/network-scripts/ifcfg-ens33
输入systemctl restart network重启网络服务,使修改的配置文件生效
配置centos7的IP、子网掩码、网关
配置IP地址网关 cd /etc/sysconfig/network-scripts/ //进入到network-scripts目录下 vi ifcfg-ens33 //注意:显示有ip addr查看,编辑对应的ensxx //修改以下内容 BOOTPROTO=static //启用静态IP地址 ONBOOT=yes //开启自动启用网络连接 //添加vmnet8的子网掩码和网关,ip要保证在192.168.126.x,还要保证唯一性 IPADDR=192.168.126.124 //设置IP地址 NETMASK=255.255.255.0 //子网掩码 GATEWAY=192.168.126.2 //设置网关
设置DNS地址
vi /etc/resolv.conf //编辑 resolv.conf文件 nameserver 114.114.114.114 //添加DNS地址
1、官网下载地址: https://www.centos.org/download/
具体镜像地址: http://isoredirect.centos.org/centos/7/isos/x86_64/
2、选择阿里云站点进行下载 http://mirrors.aliyun.com/centos/7/isos/x86_64/
各个版本的ISO镜像文件说明:
CentOS-7-x86_64-DVD-1708.iso 标准安装版(推荐)
CentOS-7-x86_64-Everything-1708.iso 完整版,集成所有软件(以用来补充系统的软件或者填充本地镜像)
CentOS-7-x86_64-LiveGNOME-1708.iso GNOME桌面版
CentOS-7-x86_64-LiveKDE-1708.iso KDE桌面版
CentOS-7-x86_64-Minimal-1708.iso 精简版,自带的软件最少
CentOS-7-x86_64-NetInstall-1708.iso 网络安装版(从网络安装或者救援系统)
制作启动盘
国内下载源和版本选择
选择 DVD 这个下载就可以了
使用UltraISO软碟通制作启动盘
然后就会加载很多的文件夹(如果加载不出来就是软碟通的版本问题)
写入U盘,建议先格式化
设置为U盘为默认启动项后,电脑会进入下面这个页面
选中Install CentOS Linux 7,按e(有些事按Tab)进入编辑模式后,在屏幕的最下面会出现当前运行的脚本命令
Mac VM虚拟机centos7环境 Another app iscurrently holding the yum lock;
当输入yum命令后,出现如下错误:
-原因:
yum进程被锁住了,可能是因为上一个yum命令没有执行完,被强制中断了,再一次执行yum命令时,会报这个错误
-解决办法:
执行如下命令,移除yum进程。
rm -f /var/run/yum.pid
设置新用户缺省密码的过期时间
vi /etc/login.defs修改PASS_MAX_DAYS的值即可。值得一提的是,这里的设置只适用于该设置以后新添加的用户,也就是说修改的这个设置将作为新添加用户的缺省设置。
对于系统已存在的账号,使用命令:passwd -x 90 [要修改的账号]
设置某个用户的密码有效期
chage -m 0 -M 90 -W 15 [要设置的用户]
-m:密码可以更改的最小天数。为零代表任何时候都可以更改密码。
-M:密码保持有效的最大天数
-W:在密码过期前15天对用户进行提醒
-E:账号到期的日期,过了这天,此账号将不可用
-d:指定密码最后修改日期
-i:停滞时期,如果一个密码已过期这些天,那么此账号将不可用
-l:列出当前用户设置
查看某个用户的密码状态
chage -l root
Last password change : Jul 09, 2019【最近一次修改密码的时间】
Password expires : never【密码过期时间】
Password inactive : never【密码失效时间】
Account expires : never【账户过期时间】
Minimum number of days between password change : 0【两次改变密码之间相距最小天数】
Maximum number of days between password change : 99999【两次密码改变密码相距最大天数】
Number of days of warning before password expires : 7【密码过期前开始警告的天数】
Password expires和Password inactive区别
Last passwrd change + M天数 = Password expires
Maximum number of days between password chang=M天数
Password expires + I 天数 = Password inactive,看到此时 Password inactive 改成了在 Password expires基础上再加l天
Password expires期限之前,系统会提示你多少天后密码会到期
Password inactive之前登陆,系统会强制你改密码才能登陆,改完密码后Last password change,Password expires,Password inactive 都会根据你改时候的系统日期和相应的M和I的参数改变,改完系统照常进入
总结:密码到期(Password expires)登陆改完还能进系统,密码失效(Password inactive)就得找管理员啦~
Centos7修改用户密码失效时间
vim /etc/login.defs
修改如下参数 PASS_MAX_DAYS 90#设置登录密码有效期90天 PASS_MIN_DAYS 1 #登录密码最短修改时间,增加可以防止非法用户短期更改多次 PASS_MIN_LEN 8 #登录密码最小长度8位 PASS_WARN_AGE 7 #登录密码过期提前7天提示修改 FAIL_DELAY 10 #登录错误时等待时间10秒 FAILLOG_ENAB yes #登录错误记录到日志 SYSLOG_SU_ENAB yes #当限定超级用户管理日志时使用 SYSLOG_SG_ENAB yes #当限定超级用户组管理日志时使用 MD5_CRYPT_ENAB yes #当使用md5为密码的加密方法时使用
可以通过
chage -l root
系统已有用户: chage [选项] 用户名 -m : 密码可更改的最小天数,为0时代表任何时候都可以更密码 -M : 密码保持有效的最大天数 -I : 列出用户以及密码的有效期 -w : 用户密码到期前,提前收到警告信息的天数 #chage -M 90 root 设置root用户的过期时间为90天后 # chage -I 5 root 设置root用户密码过期五天后,密码自动失效,用户将无法登陆系统 新用户: 编辑 /etc/login.defs #PASS_MAX_DAYS 90 #PASS_MIN_DAYS 7 #PASS_MIN_LEN 8 #PASS_WARN_AGE 7
最根本的解决方法:修改grub,在引导时就不加载IPV6模块
vi /etc/default/grub #修改 第六行,添加“ipv6.disable=1 ” GRUB_CMDLINE_LINUX="ipv6.disable=1 ......" #执行如下命令 grub2-mkconfig -o /boot/grub2/grub.cfg #重启系统 reboot
这样,ipv6就彻底关
centos7中查看网关的方法: 1、打开centos7终端; 2、在centos7终端命令行中输入“route -n”或“ip route”或“netstat -rn”其中一个命令查看网关 具体操作步骤: 1、在centos7系统桌面中使用快捷键打开centos7终端命令行模式 2、在centos7终端命令行中输入以下命令查看网关即可 route -n #或 ip route #或 netstat -rn route路由命令参数说明: -c 显示更多信息 -n 不解析名字 -v 显示详细的处理信息 -F 显示发送信息 -C 显示路由缓存 -f 清除所有网关入口的路由表 -p 与add命令一起使用时使路由具有永久性
centos7使用ipv6协议,如果出现问题了将会很难排查,所以想要关闭ipv6,该怎么关闭呢?下面我们就来看看详细的教程。
1、使用ifconfig命令查看网卡信息,如果出现inet6 fe80::20c:29ff:fed0:3514,说明机器开启了ipv6
2、编辑/etc/sysctl.conf配置,增加net.ipv6.conf.all.disable_ipv6=1
3、编辑/etc/sysconfig/network配置,增加 NETWORKING_IPV6=no,保存并退出
4、编辑/etc/sysconfig/network-scripts/ifcfg-eno16777736,确保IPV6INIT=no,ifcfg-eno16777736是根据自己机器的,实际网卡信息来看,不是固定的
5、关闭防火墙的开机自启动
systemctl disable ip6tables.service
6、执行sysctl -p或者reboot重启命令
7、再次使用ifconfig进行验证,只剩下ipv4,ipv6消失了,关闭成功