centos 7 pcie 支持pcie40的cpu

关于安装centos7 报错An unknown error has occurred

提示“An Unknown Error Has Occurred”,detail info最上面的那行,大概是提示exception“/usr/lib64/python2.7/site-packages/pyanaconda/bootloader.py”。

出现这个信息时,可能是你的硬盘里面有些raid的数据,与安装程序发生了冲突。

原因有如下几点:

1,可能是安装系统时HDD分区,linux不能格式化,建议将HDD清盘,如果有RAID重新组RAID,即可安装。

2,有可能是legacy模式。多张PCIe卡不能提供足够的legacy OPROM空间导致的,切换到UEFI既可以完成安装。

扩展资料:

Centos7日常需要用的运维命令

1.删除0字节文件:

find-type f-size 0-exec rm-rf{} \

2.查看进程:

按内存从大到小排列

ps-e-o"%C:%p:%z:%a"|sort-k5-nr

3.按cpu利用率从大到小排列:

ps-e-o"%C:%p:%z:%a"|sort-nr

4.打印说cache里的URL:

grep-r-a jpg/data/cache/*| strings| grep"http:"| awk-F'http:''{print"http:"$2;}'

5.查看http的并发请求数及其TCP连接状态:

netstat-n| awk'/^tcp/{++S[$NF]} END{for(a in S) print a, S[a]}'

centos怎么查看网卡驱动

查看网卡驱动版本号:ethtool-i网卡名如ethtool-i eth0

示例:

[root@nt3~]# ethtool eth5

Settings for p6p1:

Supported ports: [ FIBRE ]

Supported link modes: 10000baseT/Full

Supported pause frame use: No

Supports auto-negotiation: No

Advertised link modes: 10000baseT/Full

Advertised pause frame use: No

Advertised auto-negotiation: No

Speed: 10000Mb/s

Duplex: Full

Port: FIBRE

PHYAD: 0

Transceiver: external

Auto-negotiation: off

Supports Wake-on: d

Wake-on: d

Current message level: 0x00000007(7)

drv probe link

Link detected: yes

[root@nt3~]# ethtool-i eth5

driver: ixgbe

version: 3.21.2

firmware-version: 0x1bab0001

bus-info: 0000:05:00.0

supports-statistics: yes

supports-test: yes

supports-eeprom-access: yes

supports-register-dump: yes

supports-priv-flags: no

关于网卡的几个操作的命令:

1.lsmod查看网卡的模块是否加载,看看是否网卡驱动好了的意思

2. dmesg:查看是否检测到了网卡。

3.ifup ifdown激活/停止网卡

4.ifconfig查看网卡是否正常工作。看看是否网卡有ip,有lo主机回还网络,表示设备没有问题。

windows下查看的是 ipconfig/all命令,centos下的是 ifcofnig命令

ifconfig接口

ifconfig eth0(接口) up/down激活网卡设备,网卡无效。

ifconfig eth0 netmask 255.255.254.0设置掩码

ifconfig eth0 192.168.0.21设置eth0的ip地址为0.21

也可以写一行:ifconfig eth0 192.168.0.21 netmask 255.255.255.0

修改后需要重新启动网络设置:service network restart

5.看看网络是否相通

ping-c 10(回显几次) ip/域名

eg: ping-c 192.168.1.1同 windows的一样。

6.如果上不了网,看下dns填写是否正确:/etc/resolv.conf文件。

7.上不去网的话:看看默认路由设置错误,也会导致不能上网。

就设计到了route命令:

route看下 default的网关 gateway是不是你的路由器的ip地址,不是的话就上不了网,需要修改,如何修改呢?先删除默认路由,这一条。然后再添加默认路由这一条。就可以了。

route del default

route add default gw 192.168.0.254(你的路由器的ip),需要root用户的身份才能操作。

nvme ssd 对NVMe SSD热插拔时,我需要注意什么

省去了控制器的NVMe比SAS/SATA的热插拔要复杂的多。在进行热插拔测试之前,第一步就是要确认当前的系统是否支持热插拔。

1,确认SSD的支持

对于SSD,热插拔需要保证在插盘的过程中不会产生电流波峰而损坏器件;拔盘的时候,不会因为突然掉电而丢失数据。这个可以向SSD供应商确定或者查看产品规格书。

2,确认PCIe卡槽的支持

上面提到,NVMe是直接连接到PCIe Bus上的,U.2接口也是直接跟PCIe相连(当判断插入的设备为NVMe SSD时)。某些U.2接口内部连接的PCIe卡槽并不支持热插拔。PCIe Spec规定了热插拔寄存器。下图(通过lspci-vvv获取)显示了一个PCIe卡槽的Capabilities寄存器信息。其中LnkSta,SltCap,SltCtl和SltSta 4个部分在热插拔过程中比较有用(具体意义请参考PCIe Spec)。HotPlug和Surprise是最基础的判断热插拔的标志位。SltSta中有一个PresDet位指示当前是否有PCIe设备插入卡槽。

3,确认操作系统的支持

PCIe热插拔并不是完全由操作系统处理的,也有可能由BIOS处理,这完全取决于服务器BIOS的设计。当操作系统启动时,会根据ACPI提供的信息来了解到底由谁处理PCIe热插拔。如果由操作系统处理,则会根据PCIe卡槽发送的中断获知热插拔事件。对于Linux系统来说,一般使用pciehp驱动来干这件事情。所以,最简单的判断方法就是看系统中是否注册了热插拔中断服务程序。

对于Linux的NVMe热插拔支持将会单独用一篇文章讲解,此处不再多说。

4,确认NVMe驱动的支持

与其说驱动的支持,不如说驱动中是否有Bug。Linux内核提供了NVMe驱动,但是在实际的测试中,驱动的处理不当容易导致系统Crash和Hang住。产生这些问题的原因基本上可以归纳为NVMe驱动release设备和pciehp release设备产生竞争,出现空指针;NVMe驱动release设备时,上层调用sync函数导致进程block住。这个最好跟SSD厂商沟通好自己的测试环境,以便提前了解可能出现的问题。

如果这些环节都通过,基本上可以确认当前的系统可以进行热插拔了。但是目前,Linux系统和PCIe热插拔驱动存在不少问题,我们在操作中还需要避免出现下面的情况:

避免在一个服务器上短时间内频繁地(或者同时对多个设备)进行热插拔操作

原因:这是pciehp驱动中热插拔处理的bug,centos7都没有解决。

潜在的问题:可能导致pciehp进程block住,之后插入的盘无法识别。

解决办法:当对多个盘操作时,顺序进行热插拔,并打开pciehp的debug功能,通过dmesg获得pciehp热插拔处理进度。

避免对带有I/O的设备进行热插拔(尤其是启用了Cache的I/O)

原因:这是由于Linux Block层与PCIe热插拔的配合问题导致的。

潜在的问题:可能导致系统某些进程block住,或者系统crash。

解决办法:通过设置卡槽的power值,在拔盘之前通知操作系统先移除设备。

避免对已经mount文件系统的设备进行热插拔

原因:mount无法感知热插拔事件。

潜在的问题:文件系统无法使用,数据丢失。

解决办法:提前umount文件系统。

按照上面的方法,能够避免绝大多数问题。但是还是可能出现错误,尤其在一些新的服务器厂商的产品中,由于兼容性问题导致NVMe设备无法识别。那么我们可以通过卡槽的Capabilities寄存器信息判断。如果设备没有被PCIe系统正确识别,那么就需要咨询厂商了。

总结

这篇文章主要介绍了在进行NVMe SSD热插拔时需要注意的事项。首先,我们检查系统是否支持NVMe热插拔,然后避免出现上面提到的3种情况。PCIe目前还无法做到如SATA/SAS一样的支持力度,这个需要服务器厂商和SSD厂商共同推进,相信在未来会越来越好。用户在这个阶段,只有尽量和厂商多沟通,才能避免操作中造成系统崩溃,数据丢失等风险。

阅读剩余
THE END