LINUX.ORG.RU
решено ФорумAdmin

Отладка /etc/netowrk/interfaces в debian и ubuntu


0

1

Хотелось бы увидеть лог, в который записывается какие вызывались скрипты в процессе обработки interfaces, что они выводили в stderr и с каким результатом завершились. Это вообще возможно? Гугл не помог.

Ubuntu 10.04

Deleted

Ответ на: комментарий от Zubok

А как это сделать при запуске системы? У меня проблема какраз в том, что при запуске системы кое-что не взлетает, если уже после запуска поднимать интерфейсы вручную - всё работает.

Deleted ()
Ответ на: комментарий от Deleted

М-м-м-м, расставить в нужные скрипты (в /etc/init.d/networking точно) вместо #!/bin/sh

#!/bin/sh -xv

либо вписать в самое начало

set -x
set -v
Zubok ★★★★★ ()
Ответ на: комментарий от Deleted

>А как это сделать при запуске системы? У меня проблема какраз в том, что при запуске системы кое-что не взлетает, если уже после запуска поднимать интерфейсы вручную - всё работает.

Но ifup, ifdown — это не скрипты уже, поэтому то, что внутри них происходит, уже так не отдебажить. strace только если. Ну и глянуть насчет verbose опций у них. Тогда в скрипте подправить на что-то типа 'ifup -v', 'ifdown -v'.

Zubok ★★★★★ ()
Ответ на: комментарий от anton_jugatsu

ifup/ifdow -n --verbose eth0 не то?

--verbose - то, но мне надо посмотреть что происходит именно при запуске системы.

Deleted ()
Ответ на: комментарий от Deleted

>--verbose - то, но мне надо посмотреть что происходит именно при запуске системы.

Ну, значит, надо все бинари, которые используются и которые интересуют (а ifup, ifdown работают с /etc/network/interfaces), а также все вызываемые скрипты (ifup/ifdown вызывают еще скрипты из /etc/network/) сделать verbose. Скрипты при помощи -xv, а бинари их родными опциями.

Zubok ★★★★★ ()

Решение проблемы для Ubuntu 10.04:

diff --git a/init/network-interface.conf b/init/network-interface.conf
index 19d2317..189c364 100644
--- a/init/network-interface.conf
+++ b/init/network-interface.conf
@@ -20,7 +20,8 @@ pre-start script
            IFACE=lo LOGICAL=lo ADDRFAM=inet METHOD=loopback || true
     fi
     mkdir -p /var/run/network
-    exec ifup --allow auto $INTERFACE
+    #exec ifup --allow auto $INTERFACE
+    exec bash -c "ifup -v --allow auto $INTERFACE >>/var/log/ifup-hot.log 2>&1"
 end script
 
 post-stop exec ifdown --allow auto $INTERFACE
diff --git a/init/networking.conf b/init/networking.conf
index 5b989c6..88bd869 100644
--- a/init/networking.conf
+++ b/init/networking.conf
@@ -12,4 +12,5 @@ task
 
 pre-start exec mkdir -p /var/run/network
 
-exec ifup -a
+#exec ifup -a
+exec bash -c "ifup -a -v >>/var/log/ifup.log 2>&1"

Deleted ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.