Я пытаюсь установить программное обеспечение IBM в CentOS 7, и сценарий установки выполняет несколько проверок среды, чтобы убедиться, что все работает. Сценарий говорит, что "петля не определена в ifconfig".

Проблема исходит отсюда:

(sshexec) Executing 'sudo /sbin/ifconfig lo | grep "inet addr:127.0.0.1" | wc -l' on      localhost.localdomain.com as biadmin
(sshexec) Result: 0

Кажется, что сценарий ожидает эту строку «inet addr:127.0.0.1» в ifconfig lo, но мой ifconfig lo говорит «inet 127.0.0.1»

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
    inet 127.0.0.1  netmask 255.0.0.0
    loop  txqueuelen 0  (Loopback Local)
    RX packets 13196  bytes 2606382 (2.4 MiB)
    RX errors 0  dropped 0  overruns 0  frame 0
    TX packets 13196  bytes 2606382 (2.4 MiB)
    TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Я не знаю много о сетях, но моя петля, кажется, настроена очень хорошо. Есть ли способ обойти это?

1 ответ1

0

Это немного странно, но вы можете временно установить программу-оболочку сценария оболочки, которая массирует вывод ifconfig в форму, ожидаемую сценарием установки.

Начните с переименования /sbin/ifconfig в /sbin/ifconfig.real . Затем создайте новый файл с именем /sbin/ifconfig , содержащий это:

#!/bin/sh
exec /sbin/ifconfig.real "$@" | sed 's/ inet / inet addr:/'

Это запустит оригинальную программу ifconfig , которую вы переименовали, и добавит «addr:» в нужное место в каждой строке вывода. Сделайте ваш новый скрипт исполняемым и протестируйте его, чтобы убедиться, что он производит правильный вывод:

$ chmod a+x /sbin/ifconfig
$ /sbin/ifconfig lo

Запустите установщик. Как только вы закончите, удалите скрипт-оболочку и переименуйте /sbin/ifconfig.real обратно в /sbin/ifconfig .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .