суббота, 26 июня 2010 г.

Раздаем WiFi c линукса!

Купить WiFi роутер - это конечно самое простое решение.
Но если не хочется тратить лишние 700-1000 руб, или WiFi карточка уже простаивает на десктопе - этот ман для вас ))

Предварительно полазив по просторам интернета выбор пал на карточку DLink DWA-510.
Карта дешевая, на опробованном чипе ralink и умеет все, что нам нужно.
Хотелось бы конечно еще стандарт N, но на ноуте(ради которого все затевается) все равно карта держит только G. Поэтому рисковать не стал, хотя сильно подмывало приобрести dwa-525...

Итак! К делу )
Устанавливаем то, что нам понадобится:
sudo aptitude install bridge-utils, hostapd, dhcp3-server, firmware-ralink, wireless-tools

Кстати, ядрышко я пользую 2.6.32. Если у Вас меньше 2.6.30 - вам обязательно нужно обновиться.

Половина дела сделана. )) Дальше конфиги
Конфигурим сетку: /etc/network/interfaces
Добавляем в конце следующее:
auto wlan1
iface wlan1 inet manual
up ifconfig $IFACE 0.0.0.0 up
up ip link set $IFACE promisc on
down ip link set $IFACE promisc off
down ifconfig $IFACE down

#Bridge interface
auto br0
iface br0 inet static
address 10.8.0.1
network 10.8.0.0
netmask 255.255.255.0
broadcast 10.8.0.255
bridge-ports wlan1
bridge_maxwait 0

Очень вероятно, что "wlan1" вам придется изменить, например, на "wlan0"
Понять, как система назвала конкретно вашу карту, можно по выводу
sudo ifconfig -a

Конфигурим dpcp(раздача ip): /etc/dpcp3/dhcpd.conf
Все содержимое моего файла:
ddns-update-style none;
option domain-name "LexemNetwork";
option domain-name-servers 217.117.80.1, 208.67.222.222;
default-lease-time 42300;
max-lease-time 84600;
log-facility local7;
subnet 10.8.0.0 netmask 255.255.255.0 {
range 10.8.0.100 10.8.0.200;
option routers 10.8.0.1;
}
Конфигурим hostap: /etc/hostapd/hostapd.conf
Все содержимое моего файла:
interface=wlan1
driver=nl80211
bridge=br0
ssid=LexemWiFi

hw_mode=g
channel=1
macaddr_acl=0
ignore_broadcast_ssid=0
auth_algs=1
wpa=2 # WPA2-Personal/AES or WPA2-PSK/AES
wpa_passphrase=change_your_pass
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
eap_server=0
eapol_key_index_workaround=0

logger_syslog=-1
logger_syslog_level=2
logger_stdout=-1
logger_stdout_level=2
dump_file=/tmp/hostapd.dump
ctrl_interface=/var/run/hostapd
ctrl_interface_group=0
beacon_int=100
dtim_period=2
max_num_sta=255
rts_threshold=2347
fragm_threshold=2346
own_ip_addr=127.0.0.1
Меняем "wlan1", на тот который указан в
/etc/network/interfaces
Меняем "change_your_pass" на тот пароль, который хотели бы вводить на ноуте.
Меняем "LexemWifi" на название, которое хотели бы видеть на ноуте при поиске сетей.

Конфигурим nat: /etc/rc.local
Добавляем в конец файла, но перед строкой "exit 0"
/sbin/iptables -A FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmt
/sbin/iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j MASQUERADE
Финиш!
Здесь можно перезагрузить комп и все заработает. ))
Если же перезагружаться не хочется, можно рестартануть только необходимое:
sudo /etc/init.d/networking restart
sudo /etc/init.d/dhcp3-server restart
sudo /etc/init.d/hostapd restart


PS. Инструкции практически не затрагивают железо. Если у вас другая карта, то скорее всего нужно будет просто установить, что-нибудь другое вместо пакета firmware-ralink. Или как-то еще добиться работоспособности карты, а дальше уже действителен этот ман )

пятница, 25 июня 2010 г.

Установка skype на debian amd64

Зачем нужен skype все знают. Звонилка, IM, даже видеозвонки.

Но на моем debian 64-bit оно отказалось вставать, потому что скайповцы делают нормально только для 32 разрядных систем. Кстати юзаю на данный момент кеды kde-plasma-desktop версии 4.3 и ядрышко 2.6.32-15 x86_64

Итак танцы с бубном, чтобы запустить 32 битную версию.

#ставим 32х битные либы
sudo aptitude install ia32-libs ia32-libs-gtk libasound2-plugins

#вот это ставить не пришлось, но в оригинальном мане есть
sudo aptitude install libqt4-core libqt4-gui

#Качаем любым удобным способом 32х битный deb c офф сайта
wget -O skype-install.deb http://www.skype.com/go/getskype-linux-beta-deb

#Насильно устанавливаем 32х битный пакет =)
sudo dpkg -i --force-architecture skype-install.deb

Как и обещал ман, skype запустился, но упал со следующей ошибкой:
If you get error like this Inconsistency detected by ld.so: dl-open.c: 643: _dl_open: Assertion `_dl_debug_initialize (0, args.nsid)->r_state == RT_CONSISTENT' failed!

Но слава богу это лечится простой выдачей прав:
sudo chmod a-r /usr/lib32/libpulse{-simple.so.0.0.2,.so.0.8.0,common-0.9.15.so}

запускаем и радуемся жизни ))
linux32 skype

Видео и принимает и передает отлично. Звук принимает тоже отлично.
А вот с микрофоном нужно еще немного поприседать.

Нужно зайти в Kmix.
Настройка > настроить каналы. Ищем "Input source" и включаем отображение.
После возвращаемся и выбираем микрофон. У ноутов обычно встроенный это "Front mic", а втыкаемый в разьем 3.5 - просто "Mic".
Заодно удостоверьтесь, что нужный микрофон включен и громкость у него не выкручена на 0.

Подобные действия можно повторить запустив alsamixer. Жмем F5 и пролистываем направо. Там тоже можно настроить "Input Source"

Ну и напоследок, вот оригинал magic'a ))