Технологія PowerFlex: Не вдається встановити SDC на Debian з помилкою збірки модуля ядра Ім'я: відсутній операнд
Summary: Під час встановлення PowerFlex Storage Data Client (SDC) на систему на основі Debian, скрипт build_driver.sh може вводити в оману про прогрес, але в кінцевому підсумку не вдається скомпілювати драйвер scini з помилкою "dirname: missing operand." ...
Symptoms
- Виконання компіляції драйвера PowerFlex SDC на вимогу, як описано в наступній базі Dell KB: Технологія PowerFlex: Компіляція драйвера PowerFlex SDC на вимогу
- Інсталяція SDC не вдається встановити на системах на основі Debian, коли виконується
build_driver.shСценарій. Незважаючи на те, що сценарій друкує інформаційні повідомлення, що свідчать про прогрес, фактичний процес збірки не вдається:root@debian-venus:/tmp/build# ./build_driver.sh 12-May-2025 12:03:38 INFO: Started. .... 12-May-2025 12:03:39 INFO: Checking /usr/src/linux-headers-6.1.0-34-amd64/include/generated/utsrelease.h ... 12-May-2025 12:03:39 INFO: Found fitting utsrelease.h in /usr/src/linux-headers-6.1.0-34-amd64 12-May-2025 12:03:39 INFO: Found include /usr/src/linux-headers-6.1.0-34-common/Makefile in /usr/src/linux-headers-6.1.0-34-amd64/Makefile realpath: /usr/src/linux-headers-6.1.0-34-amd64//usr/src/linux-headers-6.1.0-34-common/Makefile: No such file or directory dirname: missing operand Try 'dirname --help' for more information. 12-May-2025 12:03:39 INFO: Kernel source dir is determined as 12-May-2025 12:03:39 WARNING: Didn't find /Kconfig .... make: Entering directory '/usr/src/linux-headers-6.1.0-34-amd64' grep: ./include/linux/net.h: No such file or directory .. make[1]: *** [/usr/src/linux-headers-6.1.0-34-common/scripts/Makefile.build:255: /tmp/build/ini/./linux/api/api_mos.o] Error 1 make: *** [/usr/src/linux-headers-6.1.0-34-common/Makefile:2038: /tmp/build/ini] Error 2 make: Leaving directory '/usr/src/linux-headers-6.1.0-34-amd64' 12-May-2025 12:03:43 INFO: Success.
Вплив
Об'єкт scini Модуль ядра не вдається скомпілювати через відсутність залежностей заголовків, що призводить до неповної або перерваної інсталяції SDC. Як наслідок, система не може функціонувати як SDC.
Cause
Сценарій інсталяції SDC (build_driver.sh) намагається автоматично визначити джерело ядра та заголовки за допомогою realpath і dirname, але зазнає невдачі, коли Debian надає заголовки ядра в структурі розділених каталогів:
-
/usr/src/linux-headers-version-amd64<>/
-
/usr/src/linux-headers-version-common<>/
Resolution
Запустіть команду build_driver.sh скрипт з явними прапорцями -o та -s для правильного встановлення директорій об'єкта та джерела:
./build_driver.sh -o /usr/src/linux-headers-<version>-amd64 -s /usr/src/linux-headers-<version>-common
Приклад:
./build_driver.sh -o /usr/src/linux-headers-6.1.0-34-amd64 -s /usr/src/linux-headers-6.1.0-34-common
Версії, на які це вплинуло
Технологія PowerFlex SDC 3.x.x
Технологія PowerFlex SDC 4.x.x
Виправлено у версії
Технологія PowerFlex SDC 3.6.6
Технологія PowerFlex SDC 4.5.5
Технологія PowerFlex SDC 5.0