Username 08.03.2010 16:16
Linux Network Administration — Сеть
В этом посте хочу затронуть интересную тему, которой особо никогда не интересовался и глубоко не копал. Эта тема - управление сетевыми соединениями всякими networkmanager'ами и wicd.Пролог. Буквально вчера я накатил свежую федору на ноут, все работало, вафля коннектилась автоматически к сети с помощью knetworkmanager'а. Как вдруг все сдохло. Как человек бывалый, я запросто создал соединение связкой ifconfig|iwconfig и спокойно жил - не тужил. Однако упорный нетворкманагер так и не захотел управлять моей сетью, какие гуйни я не ковырял, какие конфиги не правил. Это немного поломало мой мозг, потому как ранее (по ощущениям) я легко отключал/ включал использование nm в различных дистрибутивах. Ничего страшного, я спокойно соединялся командами, но, в стремлении делать это мышкой, установил wicd. Сразу после установки, он заработал и
несмотря на страшную gtk-шную морду :-Р
все соединял.До первой перезагрузки. Потому что после нее ВНЕЗАПНО управление на себя принял кто бы вы думали? NetworkManager! В комментариях ниже я хочу побеседовать с вами на тему, где и как определяется тулза/ демон контроля сетью. Причем в дистронезависимом ключе. Это довольно важно, потому что я понимаю, что в arch'е можно прописать в rc.conf (не забыл, так он называется, да?) демона networkmanager, в дебианах-убунтах - через /etc/network/interfaces.
Фишка в том, что в принципе во всех дистрах есть аналогичные конфиги, желательно знать, где они и схож ли их синтаксис.
Ну и да, споры wicd vs nm vs ifconfig vs netcfg предлагаю оставить в стороне.
UPD Вы не понели!!11 Я знаю как выключить nm например, меня интересует, что и как определяет, кто в конкретный момент времени управляет сетью. У меня был запущен NetworkManager, тем не менее, сетью он не управлял
booley 08.03.2010 16:21 #
+ -3 -
У тебя проблема?
ну давай таки без флуда, у нас его итак полно.
Хочу прояснить свои представления
Хочу прояснить свои представления
NetworkManager обычно выполняется как сервис из /etc/init.d
Для отключения достаточно выполнить chkconfig NetworkManager off (вообще уберет из загрузки) и service NetworkManager stop (просто выключит до первой переинициализации).
Для отключения достаточно выполнить chkconfig NetworkManager off (вообще уберет из загрузки) и service NetworkManager stop (просто выключит до первой переинициализации).
Да никто, в общем-то, не управляет. В этом и суть проблемы. Кто быстрее займет устройство - тот и работает с ним. Я имею в виду, конечно же, управление. перехват настроек и монопольный контроль.
Вообще, я написал для федоры патч, который позволяет нормально настраивать wpa из сетевых скриптов, не городя кучу костылей из дополнительных команд. Т.е. хватало одного "ifup netname". Однако ж разрабы не приняли его, потому что больные на голову. Они считают, что сетку надо настраивать через нетворк менеджер, и это самый правильный путь. Идиоты :-)
https://bugzilla.redhat.com/show_bug.cgi?id=154348
Вообще, я написал для федоры патч, который позволяет нормально настраивать wpa из сетевых скриптов, не городя кучу костылей из дополнительных команд. Т.е. хватало одного "ifup netname". Однако ж разрабы не приняли его, потому что больные на голову. Они считают, что сетку надо настраивать через нетворк менеджер, и это самый правильный путь. Идиоты :-)
https://bugzilla.redhat.com/show_bug.cgi?id=154348
насчет идиотов ты торопишься. Вообще разрабам нм надо ставить памятник при жизни, ибо пытаются унифицировать пользовательскую настройку в линуксе, причем, надо сказать вообще успешно.
Одна из самых больших проблем опенсорса - в отсутствии единого решения. Примеров масса, начиная от разных костылей для настройки сети, заканчивая, скажем, джаббер-клиентами
Одна из самых больших проблем опенсорса - в отсутствии единого решения. Примеров масса, начиная от разных костылей для настройки сети, заканчивая, скажем, джаббер-клиентами
Одна из самых больших проблем опенсорса - в отсутствии единого решения. Примеров масса, начиная от разных костылей для настройки сети, заканчивая, скажем, джаббер-клиентами
Та-та-та, давай не будем разводить по поводу ненужности альтернатив, хорошо?
На пользовательском уровне это наоборот - клево и прекрасно. Если работает, конечно.
А вот на уровне "начинки" - ну да, согласен. Не вижу толка в существовании одновременно и nm, и wcid в одной вселенной.
(при этом часто пложу велосипеды)
На пользовательском уровне это наоборот - клево и прекрасно. Если работает, конечно.
ну ключевое слово "работает". да
Не вижу толка в существовании одновременно и nm, и wcid в одной вселенной.
у меня nm работает через сидалещный нерв, wicd справляется неплохо(но честно не осилил когда-то в нем route и гетвей ибо вафля отдаваля по dhcp не то что надо, а ручками.. а нафига тогда wicd?)вот так и повелось что конфигурю всегда с помощью netcfg (в Arch есть такое) который мало того что прост как пять копеек так ещё и работает прекрасно в отличии от... ^_^ или ручками (если не в арче) чуствую себя Ъолдскулменом =)
видимо поэтому они в нашей вселенной и существуют, зачастую даже не пересекаясь =)
Совершенно не тороплюсь. Если NM нужен, то явно не в том виде, в котором он есть сейчас. Он должен быть прослойкой выше сетевых скриптов, а не программой, которая блокирует оные.
И еще, как быть, если у меня сервер? использовать cnetworkmanager? Увольте, зачем мне кривая абстракция над сетью? Почему нельзя сделать оба решения?
Разрабов NM надо расстрелять вместе с семьями. Идея замечательная, реализация - тихий ужас. Есть мнение так же, что пользователям вообще не нужно что либо настраивать. Это не про индивидуальные ноуты, конечно. Например, в фирме с рабочими графическими станциями. Там такие средства, как nm - не нужны в принципе.
И еще, как быть, если у меня сервер? использовать cnetworkmanager? Увольте, зачем мне кривая абстракция над сетью? Почему нельзя сделать оба решения?
Разрабов NM надо расстрелять вместе с семьями. Идея замечательная, реализация - тихий ужас. Есть мнение так же, что пользователям вообще не нужно что либо настраивать. Это не про индивидуальные ноуты, конечно. Например, в фирме с рабочими графическими станциями. Там такие средства, как nm - не нужны в принципе.
Это к тому, что использование единственного безальтернативного NM - непраивльный путь решения проблемы.
Разрабов NM надо расстрелять вместе с семьями.
Перечитай заголовок сайта. Перечитай заголовок сайта,
Надо расстрелять таких комментаторов
Это такой тонкий намек на толерантность и уважение к чужому труду.
И всё-таки я не один считаю, что nm - это какое-то глупое извращение... И уважать разрабов именно этого продукта, вряд ли можно. Это не просто велосипед. Это такой большой костыль с треугольными колёсами и, извиняюсь, фаллоимитатором вместо сиденья.
Ну а по теме, я тут могу сказать одно - удалять nm из системы и не париться. Адекватно передавать управление разным сервисам не получится. Как вариант - играться с очерёдностью загрузки служб(очень дистроспецифичная штука).
Ну а по теме, я тут могу сказать одно - удалять nm из системы и не париться. Адекватно передавать управление разным сервисам не получится. Как вариант - играться с очерёдностью загрузки служб(очень дистроспецифичная штука).
Мне больше непонятно, почему все на нем так помешались, что не хотят добавлять поддержку важных настроек в сетевые скрипты.
Я подозреваю, что причина кроется в неком абстрактном понятии "юзерфрендли". Типа, с кнопочками и GUI - значит юзерфрендли. А три строчки в конфиге(на примере interfaces из Debian)
это консольное задротсво и страшно неудобно. Вот и всё.
address x.x.x.x
netmask x.x.x.x
gateway x.x.x.x
netmask x.x.x.x
gateway x.x.x.x
это консольное задротсво и страшно неудобно. Вот и всё.
Вот-вот. Никогда не любил все эти графические настраивалки. Никогда ничего не найдешь в менюшках. В конфиге же - пара строчек и готово.
Вообще CLI - это самый правильный интерфейс. Диалог на основе команд. Вопрос-ответ. Как естественная форма общения людей.
Вообще CLI - это самый правильный интерфейс. Диалог на основе команд. Вопрос-ответ. Как естественная форма общения людей.
У CLI есть очень клевая штука, которой нет в GUI - конвейеры. Перенаправление результатов одной программы в другую в GUI довольно проблематично.
в дистронезависимом ключе
эм? это ж служба, тут индивидуальный подход нужен.
Gentoo:
rc-update del NetworkManager
но вообще-то USE='-networkmanager' :)
NM не хочет работать при запущенном /etc/rc.d/network (в арче, в остальных тоже примерно так же). В дистрах, где есть /etc/network/interface{s}, в последнем не должно быть записей про интерфейс, которым должен управлять NM. Т.е. NM должен быть единственным из тех, кто может управлять интерфейсом иначе он сильно обижается.
А wicd в свою очередь не хочет работать при запущенном NM.Но ему не нужно отключать системное управление интерфейсами (/etc/network/interfaces и network). Правда не знаю, можно как оно будет вести себя при отключённом network.
Как-то так в общем...
А wicd в свою очередь не хочет работать при запущенном NM.Но ему не нужно отключать системное управление интерфейсами (/etc/network/interfaces и network). Правда не знаю, можно как оно будет вести себя при отключённом network.
Как-то так в общем...
ну не про то немножко. Как системе сказать, что вот с этого момента управлять надо именно через манагер, а не дефолтными скриптами?
Так вот исходя из того, что я написал. Если хочешь чтобы nm управлял - просто отрубай системное управление интрефейсами и запускай NM. Если хочешь через wicd рулить - просто запусти его, убедившись, что NM прибит.
отлично. А теперь объясни мне, почему я делал
а интерфейсы все равно были unmanaged?
service network stop
service NetworkManager start
а интерфейсы все равно были unmanaged?
/etc/network/interface{s} есть? Если есть - убирай от туда всё про нужный интерфейс. Если есть - то дальше не знаю... Есть видимо ещё какие-то подводные камни.
Ну вообще правильно сказали.. NM - неадекватен. Я wicd юзаю. С ним и проблем никогда не было, и коннектиться может без наличия апплета (указываешь автоподключение у соединения и он при запуске демона коннектится) и есть удобный curses-интерфейс для no-gui. А с NM то и дело какие-то глюки с косяками.
В Debian вроде как NM не пашет нормально.
Я обычно настраиваю во многих системах через netcfg интернет и дальше все из конфига береться, а прелести NM я никогда незнал.
Wicd он же вроде как менеджер с wi-fi сетями или на обычные сети распространяется?
Я обычно настраиваю во многих системах через netcfg интернет и дальше все из конфига береться, а прелести NM я никогда незнал.
Wicd он же вроде как менеджер с wi-fi сетями или на обычные сети распространяется?
Он всеми сетями управляет. Проводные настраиваются и управляются не хуже, чем беспроводные.
NM нормально заработал только в Ubuntu 9.10. В частности на ноуте жены получилось всё нормально через него настроить (WiFi+инет через VPN), до этого ни в более ранних убунтах, ни в дебиане он нормально не хотел впн делать. Сам для себя предпочитаю мануальную терапию текстовых конфигов.