27 мая 2009 г.

GUI Менеджер сетевых соединений wicd в debian

Все-таки я вернулся к wicd.

То есть, поставил на asus eee pc debian lenny, тут же выкинув NetworkManager ибо он сразу не заработал.
По-быстрому настроил wifi через interfaces и wpasupplicant:

#wpa_passphrase your_ssid your_psk

Так я создал хеш ключа для сети (your_ssid - имя wifi сети, your_psk - pre shared key - ключ, то есть).

wpa_supplicant.conf я создавать не стал, просто прописал что-то вроде

auto ath0
iface ath0 inet dhcp
wpa-driver wext
wpa-ssid имя сети
wpa-ap-scan 1
wpa-proto WPA
wpa-pairwise TKIP
wpa-group TKIP
wpa-key-mgmt WPA-PSK
wpa-psk паскей (созданный выше хеш)


Все тут же завелось и забегало.
В этом же процессе пытался поставить GUI-шные менеджеры: wifi-radar, тот же network manager (из пакетов), а так же wicd (поставил почему-то с репы убунты, потыкал, что-то не понравилось, тут же снес, надеясь что будущем найду что-то получше).
Несколько дней меня это устраивало, пока я не дошел до работы. Настройки wifi другие, да и dhcp по проводам хочется (а дома еще не подключал, но традиционно статика), покумекав, я все-таки понял, что на ноуте должен стоят GUI-шный менеджер сетевых интерфейсов, это обязательное условие для оперативного изменения сетевых подключений. Хотя лукавлю, можно конечно написать скрипт, но хочется же лучшего и сразу (статуса сети в трее например, переключение сетей мышкой и т.п.).
Так как NetworkManager из коробки никаких признаков о сетях не подавал, решил поставить версию из сырцов, надеясь на лучшее.
Процесс установки протекал очень напряженно. Я не буду рассказывать про все dev пакеты которые пришлось поставить, размер их был не меньше 50 мб. Но я твердо решил испробовать новую версию.
Ну вот вроде бы и скомпилировалось и поставилось. Поставиться-то поставилось, но запускаться не хотело. То есть сам Менеджер. Пару часов ковыряний порядком поднадоели, конфиги уже были раскиданы по местам (их много, особенно которые относятся к dbbus) из диры с сырцами, когда я сообразил, что конфиги-то проинсталлированы только не в ту диру. /usr/local/etc вместо /etc. Может я ключик при конфигурировании не указал, а может под а-ля bsd систему конфигуратор, разбираться не стал, так как менеджер вроде запущен и работает.
На заметку, посмотреть, что происходит с менеджером, если он у вас не запускается как демон, можно так:

#NetworkManager --no-daemon

Я наивно полагал, что nm-applet входит в состав NetworkManager (как в пакете), а вот и не так. Его, оказывается, надо ставить отдельно. Его еще и не сразу найдешь, так как NetworkManager находится далеко в списке на ftp от апплета.

Ладно, решил, так решил. Ооо, установка апплета - это нечто монстроидальное. Столько зависимостей наверное сложно придумать (казалось бы - апплетик, иконка с меню, ну может она и разруливает там брелоки какие-нибудь). Пришлось еще влить около 100 мб всякой всячины. Я уж был хотел передумать, но упорство взяло верх.

Установил таки, работает! Правда все приходится запускать вручную. И менеджер и апплет.
Работает не сеть конечно, работает пока только этот менеджер. В документации сказано - чтобы все правильно работало, очистите файл /etc/interfaces , оставив в нем только лупбек. Ну что ж, открываю интерфейсы - вот же, менеджер "любезно" удалил все, включая закомменченые настройки. Вот спасибо! Теперь дома мне тоже не видать связи, подумал я. Хотя, я ему это простил, надеясь на то, что раз он такой умный, то он мне и сеть поднимет любую.
Начали с dhcp+wifi. И сразу наткнулись на баг, который обмусолен на всяческих забугорных убунтовых форумах - по логам - dchp клиент получает ответ от dhcp сервера, но Менеджер его не принимает (или не понимает) и говорит нам о тайм ауте ответа от dhcp сервера. Сразу говорю - я эту проблему так и не решил. Говорят дело в dhcp3 , но мне так не кажется.
Решил отложить эту проблему в строну и заняться автозагрузкой апплета и менеджера.
Для начала я прописал статику в проводной интерфейс и только так сеть завелась с Менеджером.
Сам Менеджер беспроблемно прописался в update-rc.d, а вот с апплетом начались чудеса.
Используем nm-applet.desktop файл из сырцов - закидываем его в /etc/xdg/autostart .
Перезагружаем бук, и - о, чудо, значек апплета и соединения сети. Но! Упал апплет микшера и раскладки. Я сначала подумал совпадение. Попробовал разные варианты - апплет (с ключем --sm, все как полагается - оно же в desktop прописывается) виноват. Мало того, так приложения не запускаются из гномовского меню! В чем была причина, я так и не понял. Было время идти домой.
Дома, в отличии от работы, wifi с wpa , решил попробовать подключиться. О, чудо, схватил dhcp от моего роутера да еще и с WPA. Вот это странность. В общем, такая нестабильность меня не устраивала, тем более что приложения так и не запускались, посему я, в расстроенных чувствах, решил прибить все, что связано с NetworkManager, до сих пор удивляюсь - как такой сырой софт может стоят дефолтом во многих дистрибах, ужас просто.
Покумекав, чем же все-таки мне заменить NM вспомнил о галопах по wicd, подумал, надо бы уделить побольше времени, вдруг, что из этого выйдет.
Начав изучение, обнаружил, что зря ставил с репы убунты его в прошлый раз, видно попалась не та страница, оказывается его можно ставить с репы дебиана:

deb http://apt.wicd.net lenny extras

получаем ключ:
wget -q http://apt.wicd.net/wicd.gpg -O- | sudo apt-key add -
обновляем репу и ставим wicd.
Вот так все просто и все свежее! (установка 5 минут против полдня на NM)
А дальше что? Да ничего, перезагружаемся - у нас и апплет и все интерфейсы и все работает.
(только также надо предварительно все закомментить в interfaces кроме lo).
wifi с WPA, проводной ethernet - все без проблем. Впечатления - отменные!
Надеюсь, что и дальше такие же будет от использования wicd, чего и вам желаю!

3 комментария:

  1. надо взять на заметку, дома стоит на ПыСы с гномом, раньше стоял NM из портажей, после того как купил роутер NM отвалился, да и не особо нужен стал, но все же иногда не хватает информации сколько набегал за сеанс, и вообще идет ли передача

    ОтветитьУдалить
  2. Кстати, вот информации сколько забегал за сеанс, как я понял, нет. Но можно писать скрипты при подключении\отключении (намек =) ).

    ОтветитьУдалить
  3. думаю не сложно будет скрипт-демон сделать (раз в 5 минут собирать инфо) либо прикрутить билинговую систему =) но это из пушки по воробьям

    ОтветитьУдалить