• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to footer navigation

The Geek Diary

  • OS
    • Linux
    • CentOS/RHEL
    • Solaris
    • Oracle Linux
    • VCS
  • Interview Questions
  • Database
    • oracle
    • oracle 12c
    • ASM
    • mysql
    • MariaDB
  • DevOps
    • Docker
    • Shell Scripting
  • Big Data
    • Hadoop
    • Cloudera
    • Hortonworks HDP

‘error opening class fc_host’ – systool Command Error on CentOS/RHEL 7 and 8

by admin

The Problem

When running the systool command on CentOS/RHEL 7, the following error message is reported:

# systool -c fc_host -v
Error opening class fc_host

The Solution

The error occurs because the scsi_transport_fc module that is responsible for populating the contents of /sys/class/fc_host/ directory is not loaded on the system.

1. Manually load the scsi_transport_fc module then generate modules.dep and System.map files.

# modprobe scsi_transport_fc
# depmod
# lsmod | grep scsi_transport_fc
scsi_transport_fc 57344 0

2. Re-run the systool(1) command to confirm it displays expected output e.g:

# systool -c fc_host
Class = "fc_host"

Class Device = "host2"
      Device = "host2"

Class Device = "host3"
      Device = "host3"

3. Rebuild the initial RAM disk image.

a. Backup the existing initial RAM disk file for the currently running kernel version e.g.:

# cp -p /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak

b. Rebuild the initial RAM disk file for the currently running kernel version:

# dracut -f

NOTE: If you are running a kernel version that is different to the initial RAM disk version you are building (or if running in Linux Rescue Mode) you must specify the full kernel version/architecture e.g:

# dracut -f /boot/initramfs-5.4.17-2102.201.3.el7uek.x86_64.img 5.4.17-2102.201.3.el7uek.x86_64

4. Reboot the server. Upon reboot, the system should automatically load the scsi_transport_fc kernel module e.g.:

# lsmod | grep scsi_transport_fc
scsi_transport_fc 57344 0

5. Re-run the systool(1) command to confirm it displays expected output e.g.:

# systool -c fc_host
Class = "fc_host"

Class Device = "host2"
      Device = "host2"

Class Device = "host3"
      Device = "host3"

Filed Under: CentOS/RHEL, CentOS/RHEL 7, CentOS/RHEL 8, Linux

Some more articles you might also be interested in …

  1. Understanding MySQL Pluggable Authentication
  2. How to remove the noatime mount option from root mount point without reboot (CentOS/RHEL)
  3. How to Set External Network For Containers in Linux Containers (LXC)
  4. /var/log/chrony Directory Empty in CentOS/RHEL
  5. fdisk Command Examples in Linux
  6. Adding static entry into system ARP cache (CentOS/RHEL)
  7. How to Check whether SELinux is Enabled or Disabled
  8. How to add a Custom Script to systemd in CentOS/RHEL 7
  9. CentOS / RHEL 7 : Enable NTP to start at boot after fresh install (disable chrony)
  10. How to configure multicast on an IP address (interface)

You May Also Like

Primary Sidebar

Recent Posts

  • grpck command – Remove corrupt or duplicate entries in the /etc/group and /etc/gshadow files.
  • xxd command – Expressed in hexadecimal form
  • sesearch: command not found
  • macof: command not found

© 2022 · The Geek Diary

  • Archives
  • Contact Us
  • Copyright