Автор Тема: Проблема с сетью после обновления до 4.1  (Прочитано 3384 раз)

Оффлайн slessv

  • Участник
  • *
  • Сообщений: 61
Обновил дистрибутив сервер 4.0.1 из ветки 4.1. Также обновил ядро. Отправил сервер на перезагрузку. Сервер не вернулся к работе.
Пришлось срочно ехать на работу и разбираться. 2 часа простоя. Вот точно теперь оторвут что-нибудь нужное в организме.

Были подключены репозитарии:
rpm [updates] ftp://ftp.altlinux.org/pub/distributions/ALTLinux/4.1/branch i586 classic
rpm [updates] ftp://ftp.altlinux.org/pub/distributions/ALTLinux/4.1/branch noarch classic
rpm [updates] http://ftp.altlinux.org/pub/distributions/ALTLinux/updates/4.1 i586 updates
rpm [updates] http://ftp.altlinux.org/pub/distributions/ALTLinux/updates/4.1 i686 updates
Обновлялся командой apt-get dist-upgrade
В системе работали интерфейсы eth0 и eth1.

Приехав, выяснилась ужасающая для меня вещь:
eth1 стал eth0
eth0 стал eth2


Как я этому "обрадовался", словами не передать.

Сервисы вроде рабртают. НО, как мне вернуть именование интерфейсов к прежнему?
В ситеме много скриптов, которые написаны под старый порядок интерфейсов.
Есть завязки со скриптами с других серверов.

Также невозможно добиться переименования интерфейса с помощью /etc/iftab

# cat altlinux-release
ALT Linux Sisyphus (20071221)

# service network check
Checking interfaces in /etc/net/ifaces:
eth0: eth/realphys DONE
        eth0/ipv4address: seems OK
        eth0/ipv4route: seems OK
        eth0/options: IS OK
eth1: eth/realphys DONE
        eth1/ipv4address: seems OK
        eth1/ipv4route: seems OK
        eth1/options: IS OK
lo: lo/virtual DONE
        lo/ipv4address: seems OK
        lo/options: IS OK
/etc/net/options.d/00-default: WARNING: unrecognised line(s)
/etc/net/options.d/50-ALTLinux-server: IS OK

# service network restart
Computing interface groups: ... 3 interfaces found
Processing /etc/net/vlantab: empty.
Stopping group 1/realphys (2 interfaces)
        Stopping eth0: ...OK
        Stopping eth1: OK
Stopping group 0/virtual (1 interfaces)
        Stopping lo: .OK
Computing interface groups: ... 3 interfaces found
Starting group 0/virtual (1 interfaces)
        Starting lo: ....OK
Starting group 1/realphys (2 interfaces)
        Starting eth0: ......OK
        Starting eth1: Cannot find device "eth1"
!FAILED
Processing /etc/net/vlantab: empty.

# ifconfig eth1 up
eth1: unknown interface: No such device

# cat iftab
eth0 mac 00:80:48:18:AF:91
eth1 mac 00:10:DC:E1:EA:C6

Возможно ли без переустановки вернуть к именование интерфейсов с классическому?

Оффлайн slessv

  • Участник
  • *
  • Сообщений: 61
Воспроизвел обновление с двумя сетевыми интерфейсами на виртуальной машине. Та же самая замена интерфейсов:
eth1 -> eth0
eth0 -> eth2

только # cat /etc/altlinux-release выдает
School Server (Zugocactus)

Drool

  • Гость
Ну так переименуйте интерфейсы как Вам нужно. А вообще сейчас модно вообще обзывать интерфейсы более понятными словами, типа
Цитировать
ifconfig | grep Ether
ext0      Link encap:Ethernet  HWaddr 00:18:71:EA:D2:0C
lan0      Link encap:Ethernet  HWaddr 00:1C:C4:18:64:BA

Оффлайн slessv

  • Участник
  • *
  • Сообщений: 61
Я бы с удовольствием это сделал. Но весь на нервах. Подскажите, пожалуйста, как. Или дайте ссылку.
Переименование с помощью /etc/iftab перестало работать.

Оффлайн slessv

  • Участник
  • *
  • Сообщений: 61
Ну так переименуйте интерфейсы как Вам нужно. А вообще сейчас модно вообще обзывать интерфейсы более понятными словами, типа

Я старамоден. И непризнаю никаких других интерфейсов, кроме как ethx. Причем eth0 - для меня ВСЕГДА интерфейслокальной сети .
Кроме того не хочется редактировать скрипты. Иначе их всяко придется отлаживать.

Drool

  • Гость
Ну тогда переименуйте их так, как они были раньше. Смотреть в сторону ifrename.

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 373
  • Учиться .... Телепатами не рождаются, ими ....
rpm [updates] http://ftp.altlinux.org/pub/distributions/ALTLinux/updates/4.1 i586 updates
rpm [updates] http://ftp.altlinux.org/pub/distributions/ALTLinux/updates/4.1 i686 updates

Наверное, эти репозитории стоит убрать.

Или обновляйтесь до p5 (там вроде устранили прыгание имён интерфейсов), или переименовывайте интерфейсы, или будьте готовы приехать при следующей перезагрузке сервера.

Оффлайн slessv

  • Участник
  • *
  • Сообщений: 61
..... или переименовывайте интерфейсы, или будьте готовы приехать при следующей перезагрузке сервера.

Печально.

Но не могу переименовать их. В 4.0 за переименование отвечал сервис ifrename, котрый переименовывал интерфейсы согласно /etc/iftab
В 4.1 такого сервиса нет.
[root@ /]# chkconfig --list
ahttpd          0:off   1:off   2:on    3:on    4:on    5:on    6:off
bind            0:off   1:off   2:off   3:on    4:on    5:on    6:off
configd         0:off   1:off   2:on    3:on    4:on    5:on    6:off
consolesaver    0:off   1:off   2:on    3:on    4:on    5:on    6:off
crond           0:off   1:off   2:on    3:on    4:on    5:on    6:off
ethtool         0:off   1:off   2:off   3:off   4:off   5:off   6:off
fbsetfont       0:off   1:off   2:off   3:on    4:on    5:on    6:off
haldaemon       0:off   1:off   2:off   3:on    4:on    5:on    6:off
ifplugd         0:off   1:off   2:off   3:off   4:off   5:off   6:off
iptables        0:off   1:off   2:on    3:on    4:on    5:on    6:off
keytable        0:off   1:off   2:on    3:on    4:on    5:on    6:off
klogd           0:off   1:off   2:on    3:on    4:on    5:on    6:off
mdadm           0:off   1:off   2:off   3:off   4:off   5:off   6:off
messagebus      0:off   1:off   2:off   3:on    4:on    5:on    6:off
netfs           0:off   1:off   2:off   3:off   4:off   5:off   6:off
network         0:off   1:off   2:on    3:on    4:on    5:on    6:off
ntpd            0:off   1:off   2:on    3:on    4:on    5:on    6:off
openvpn         0:off   1:off   2:on    3:on    4:on    5:on    6:off
portmap         0:off   1:off   2:off   3:off   4:off   5:off   6:off
postfix         0:off   1:off   2:on    3:on    4:on    5:on    6:off
random          0:off   1:off   2:on    3:on    4:on    5:on    6:off
rawdevices      0:off   1:off   2:off   3:off   4:off   5:off   6:off
squid           0:off   1:off   2:off   3:off   4:off   5:off   6:off
sshd            0:off   1:off   2:on    3:on    4:on    5:on    6:off
syslogd         0:off   1:off   2:on    3:on    4:on    5:on    6:off
udevd           0:off   1:off   2:on    3:on    4:on    5:on    6:off
udevd-final     0:off   1:off   2:on    3:on    4:on    5:on    6:off
upsd            0:off   1:off   2:off   3:off   4:off   5:off   6:off
upsdrv          0:off   1:off   2:off   3:off   4:off   5:off   6:off
upsmon          0:off   1:off   2:off   3:off   4:off   5:off   6:off
vsftpd          0:off   1:off   2:on    3:on    4:on    5:on    6:off
vz              0:off   1:off   2:off   3:off   4:off   5:off   6:off
winbind         0:off   1:off   2:off   3:off   4:off   5:off   6:off
xinetd          0:off   1:off   2:off   3:off   4:off   5:off   6:off
Я так понимаю, что в 4.1 переименование осуществляется с помощью etcnet и поэтому переименовать в стандартные именования нельзя (http://www.altlinux.org/Etcnet#.D0.97.D0.B0.D1.87.D0.B5.D0.BC_.D0.BD.D1.83.D0.B6.D0.B5.D0.BD_iftab):
Средством, позволяющим использовать все возможности etcnet, является файл /etc/net/iftab, обрабатываемый не утилитой ifrename,
а непосредственно etcnet. Синтаксис этого файла совпадает с синтаксисом /etc/iftab. Ограничением же является невозможность
использовать стандартные имена интерфейсом (ethX, pppX), так как переименование интерфейсов происходит уже после
конфигурации интерфейса ядром

Получается тогда только переустановка? (Прощай выходные....)

До пятерки обновлять теперь боязно. Тогда еще больше проблем обнаружится.
« Последнее редактирование: 02.12.2009 19:39:45 от slessv »

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 373
  • Учиться .... Телепатами не рождаются, ими ....
etcnet исторически вырос из ifrename. Команда ifrename осталась, но она не может решить проблему, когда прыгание идёт на этапе инициализации интерфейса ядром.   Т.е. как я понимаю, это проблема ядра, а не ifrename.

Там задача возникает - аналогичная задаче перестановке. Надо временно создать третий интерфейс.
Т.е. в принципе - нужен скрипт, который после поднятия ядром интерфейсов сделал следующее (для двух интерфейсов):
1. Если всё нормально - выход
2. Если нет, то eth0 переименовать в tmp0, eth1 в eth0, tmp0 в eth1.

Как я понимаю, у вас там какие-то самописные скрипты есть, возможно это можно вставить туда.

Попробуйте.

Оффлайн coretech

  • Участник
  • *
  • Сообщений: 193
По-моему переименование через etcnet как следует не работает. Попробуйте исправить /etc/udev/rules.d/70-persistent-net.rules

Оффлайн slessv

  • Участник
  • *
  • Сообщений: 61
По-моему переименование через etcnet как следует не работает. Попробуйте исправить /etc/udev/rules.d/70-persistent-net.rules

Об этом я подумал. Но у меня нет /etc/udev/rules.d/70-persistent-net.rules :
[root@ /]# ls -1 /etc/udev/rules.d/
05-udev-early.rules
19-udev-ifrename.rules
20-hotplug-modprobe.rules
20-hotplug-scripts.rules
40-alsa.rules
50-udev-default.rules
60-persistent-input.rules
60-persistent-storage-tape.rules
60-persistent-storage.rules
60-raw.rules
60-vzctl.rules
61-persistent-storage-edd.rules
63-md.rules
64-device-mapper.rules
70-permissions.rules
90-hal.rules
94-pam-console.rules
95-udev-late.rules

А в /etc/udev/rules.d/19-udev-ifrename.rules  следующее:
SUBSYSTEM=="net", ACTION=="add", PROGRAM="/sbin/ifrename -u -t -i %k", NAME="%k"

В результате шаманства на тестовой машине удалось добиться чтобы интерфейсы имели стандартное наименование eth0 и eth1.
Но теперь ни в какую не работает сеть. Интерфейсы стартуют без IP адресов, хотя все необходимые файлы в /etc/net присутствуют.
IP адреса можно назначить вручную как угодно, но сеть и после этого не работает (iptables off). Где-то накосячил.
На этом разбирательства прекращаю. Считаю это бесполезным. Либо все же нельзя было обновляться до 4.1. Либо именно у меня так получилось.

Drool

  • Гость
В рассылке поднимите этот вопрос.

Оффлайн slessv

  • Участник
  • *
  • Сообщений: 61
etcnet исторически вырос из ifrename. Команда ifrename осталась, но она не может решить проблему, когда прыгание идёт на этапе инициализации интерфейса ядром.   Т.е. как я понимаю, это проблема ядра, а не ifrename.

Наверное так оно и есть. Но хорошо, что данная "изюминка" присуща только дистрибутивам ALTLinux. На дистрибутивах других производителей такого нет.

Оффлайн slessv

  • Участник
  • *
  • Сообщений: 61
В рассылке поднимите этот вопрос.
К сожалению совершенно не могу уделить больше времени данному вопросу.