Bug 5559 - service network restart работает через раз
: service network restart работает через раз
Status: CLOSED FIXED
: Sisyphus
(All bugs in Sisyphus/net-scripts)
: unstable
: all Linux
: P2 normal
Assigned To:
:
:
:
:
:
  Show dependency tree
 
Reported: 2004-11-24 01:17 by
Modified: 2005-07-13 15:47 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2004-11-24 01:17:22
Запускаю 
# /etc/rc.d/init.d/network restart 
при быстро отвечающем dhcp и при поднятом интерфейсе. Получаю в протоколе:
=====
Nov 23 16:59:03 parkheights dhcpcd.exe: interface eth0 has been configured with
old IP=69.143.81.80
Nov 23 16:59:03 parkheights network: Bringing up interface eth0: succeeded
Nov 23 16:59:04 parkheights dhcpcd[7394]: terminating on signal 1
=====
И в результате интерфейс опущен. По моему мнению это получается потому, 
service network stop отсоединяет процесс убивания интерфейса, потом его
быстренько подымает, и затем уже не обращает внимания что отсоединённый 
процесс его догнал и убил. 
Повторный вызов service network restart всё восстанавливает.
Как временный wokraround я поставил в фунцию restart между stop и start sleep 5 
и проблема исчезла.
------- Comment #1 From 2004-12-14 16:45:15 -------
> service network stop отсоединяет процесс убивания интерфейса, потом его
> быстренько подымает, и затем уже не обращает внимания что отсоединённый 
Можно указать файл и номер строки? Я вижу только последовательные действия.
------- Comment #2 From 2004-12-14 19:21:27 -------
(In reply to comment #1)
> > service network stop отсоединяет процесс убивания интерфейса, потом его
> > быстренько подымает, и затем уже не обращает внимания что отсоединённый 
> Можно указать файл и номер строки? Я вижу только последовательные действия.
Вы правы. В файле /etc/rc.d/init.d/network, строки 175 - 176, написаны
последовательные действия. И в строке 154 вызывается ifdown без отсоединения
порождённого процесса. И даже более того, вызываемый оттуда /sbin/ifdown -
шелловский скрипт, который можно почитать и убедиться что там ничего не
отсоединяется для асинхронного выполнения. Однако, как я предполагаю,
/sbin/dhcpcd видимо ведёт себя следующим образом: будучи вызван для опускания
интерфейса мгновенно возвращает результат типа "всё сделано" а уже потом про
себя потихоньку опускает интерфейс. 
      Сергей.
------- Comment #3 From 2004-12-15 13:06:52 -------
Спасибо, теперь определились вроде бы. Что скажет мантейнер dhcpcd?
------- Comment #4 From 2005-02-07 19:59:02 -------
Без разбирательства в коде я могу только делать искусственную паузу после
останова dhcpcd в ifdown :-/
------- Comment #5 From 2005-02-08 16:25:34 -------
Так пока пусть и будет. net-scripts-0.5.3