Linux hard drive update
Before the kernel is upgraded, the system can be started and used normally. However, when the system kernel is upgraded, the system cannot be started normally, which may be caused by incompatibility of hard drive. You can follow the steps below to troubleshoot the problem by entering the old system:
① Query Hard Disk control chip manufacturers and Models# Lspci-nn | grep "SAS" # lspci-nn | grep "SCSI"
For example, SAS [1000: 0078]
② View the hard disk control chip driver used by the old Kernel# Uname-a # Note: You can view the name of the currently used kernel.
Cat/lib/modules/2.6.28-16-server/modules. pcimap # Note: 2.6.28-16-server isOld KernelName
# pci module vendor device subvendor subdevice class class_mask driver_datascx200 0x0000100b 0x00000500 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0scx200 0x0000100b 0x00000510 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0scx200 0x0000100b 0x00000505 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0scx200 0x0000100b 0x00000515 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0cpqphp 0xffffffff 0xffffffff 0xffffffff 0xffffffff 0x00080400 0xffffffff 0x0ibmphp 0x00001014 0x00000246 0x00001014 0x00000247 0x00080400 0x00000000 0x0cpcihp_zt5550 0x00001138 0x00005550 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0shpchp 0xffffffff 0xffffffff 0xffffffff 0xffffffff 0x00060400 0xffffffff 0x0gx1fb 0x00001078 0x00000104 0xffffffff 0xffffffff 0x00030000 0x00ff0000 0x0gxfb 0x0000100b 0x00000030 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0lxfb 0x00001022 0x00002081 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0cyber2000fb 0x000010ea 0x00002000 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0cyber2000fb 0x000010ea 0x00002010 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0cyber2000fb 0x000010ea 0x00005000 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0
megaraid_sas 0x00001000 0x00000411 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0 megaraid_sas 0x00001000 0x00000060 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0 megaraid_sas 0x00001000 0x0000007c 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0 megaraid_sas 0x00001000 0x00000078 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0 megaraid_sas 0x00001000 0x00000079 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0 megaraid_sas 0x00001000 0x00000413 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0 megaraid_sas 0x00001028 0x00000015 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0 advansys 0x000010cd 0x00001100 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0 advansys 0x000010cd 0x00001200 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0
Search for [1000: 0078] based on the filtering result of ①.
Old KernelThe driver name of the hard disk chip used. For example, megaradi_sas
3. Find the driver module File *. ko corresponding to the hard drive controller chip.Search for the driver file *. ko # lsmod | grep "megaraid_sas" corresponding to the hard disk driver according to the search result of ②"
Megaraid_sas 74148 6
Scsi_mod 141236 3 sg, sd_mod, megaraid_sas
④ Check whether the new kernel hard disk chip driver supports the current chip vendor and Model# Modinfo/lib/modules/2.6.33-88-server/kernel/drivers/scsi/megaraid/megaraid_sas.ko # Note: assume that the new kernel is 2.6.33-88-server.
Filename:/lib/modules/2.6.33-88-server/kernel/drivers/scsi/megaraid/megaraid_sas.ko
Description: LSI MegaRAID SAS Driver
Author: megaraidlinux@lsi.com
Version: 00.0020.5.40-rh2
License: GPL
Srcversion: 6366b642440e1b1d4319d71
Alias: pci: v00001000d0000005Bsv * sd * bc * SC * I *
Alias: pci: v20171028d00000015sv * sd * bc * SC * I *
Alias: pci: vda-1000d00000413sv * sd * bc * SC * I *
Alias: pci: v00001000d00000071sv * sd * bc * SC * I *
Alias: pci: v00001000d00000073sv * sd * bc * SC * I *
Alias: pci: v00001000d00000079sv * sd * bc * SC * I *
Alias: pci: v00001000d00000078sv * sd * bc * SC * I *
Alias: pci: v00001000d0000007Csv * sd * bc * SC * I *
Alias: pci: vda-1000d00000060sv * sd * bc * SC * I *
Alias: pci: vda-1000d00000411sv * sd * bc * SC * I *
Depends: scsi_mod
Vermagic: 2.6.33-dpdk. zznode SMP mod_unload modversions
Parm: poll_mode_io: Complete cmds from IO path, (default = 0) (int)
Parm: max_sectors: Maximum number of sectors per IO command (int)
Parm: msix_disable: Disable MSI-X interrupt handling. Default: 0 (int)
If the displayed result contains the hard disk control chip manufacturer and signal [1000: 0078], the mod supports the current hard disk. If not, the new kernel hard disk chip control driver does not support the current driver. In this case, you need to download the appropriate driver source code and put it into the new kernel for compilation.
⑤ Download source code pathFtp://ftp.redhat.org/redhat/linux/enterprise/6Server/en/ OS /SRPMS/
Add the source code to the kernel for compilation!