Instalacja modemu Thomson SpeedTouch 330 w Slackware 10.0


Ostatnia aktualizacja: 2 marca 2005

Na wstępie pragnę poinformować, że jest pewien prosty (w założeniach) sposób instalacji Thomsona SpeedTouch 330 pod Linuksem - wykorzystanie zestawu speedbundle. Zawiera on wszystko, co jest potrzebne do uruchomienia tego modemu pod Pingwinem. Ponieważ jednak z własnych doświadczeń wiem, że lepiej nie ufać "cudownym" wiązankom i zostawiać wszystkiego w rękach skryptu instalacyjnego, pokażę jak zrobić wszystko krok po kroku. Unikniemy w ten sposób bałaganu i zyskamy więcej kontroli nad całym procesem, co ułatwi nam też szybkie odnalezienie przyczyn ewentualnych błędów.

Będziemy potrzebowali (w nawiasach podałem nazwy konkretnych plików, z których skorzystałem): Zaczynamy od rekompilacji jądra.

tar -jxvf linux-wersja.tar.bz2
ln -sf linux-wersja linux
cd linux-wersja
make menuconfig

Wybieramy następujące opcje:

• Code Maturity Level Options
     - Prompt for development and/or incomplete code/drivers [Y]

• Loadable Module Support
     - Enable Loadable Module Support [Y]

• Networking Options
     - Packet Socket [Y]
     - Asynchronous Transfer Mode (ATM) (EXPERIMENTAL) [M]

• Network Device Support
     - PPP (Point-to-Point Protocol) Support [M]
     - PPP Deflate Compression [M]

• USB Support
     - Support for USB [Y]
     - Preliminary USB Device Filesystem [Y]
     - UHCI (Intel PIIX4, VIA,...) Support [M]
          lub (w zależności od Twojego kontrolera USB)
     - OHCI (Compaq, iMacs, OPTi, SiS, ALi, ...) support [M]

• Network Device Support
     - PPP Over ATM (EXPERIMENTAL) [M]

Kompilujemy jądro - odsyłam do Kernel Rebuild Guide. Teraz kompilujemy i instalujemy sterownik dla jądra:

tar -zxvf speedtouch-1.7.tar.gz
cd speedtouch-1.7
make
make install

Następnie kompilujemy i instalujemy aplikację ładującą firmware:

tar -zxvf speedtouch-1.3.1.tar.gz
cd speedtouch-1.3.1
./configure
make
make modem_run

Teraz rozpakuj archiwum firmware.tar.gz (np. poleceniem tar -zxvf firmware.tar.gz). Wypakowany plik firmware.bin umieść w katalogu /usr/local/lib.

Czas na kompilację ppp. UWAGA! Jeśli masz w systemie zainstalowaną paczkę ppp-x.x.x, wyrzuć ją (np. przy pomocy pkgtool). Zanim zaczniemy kompilację musimy zainstalować biblioteki Linux-ATM:

tar -zxvf linux-atm-2.4.1.tar.gz
cd linux-atm-2.4.1
./configure
make
make install

Kompilujemy pppd:

tar -zxvf ppp-2.4.3.tar.gz
cd ppp-2.4.3
./configure
make
make install

OK, oprogramowanie gotowe, teraz czas na konfigurację. Na początek montujemy system plików USB:

mount -t usbdevfs /dev/usb /proc/bus/usb

Teraz zmodyfikuj plik /etc/ppp/options, aby wyglądał tak:

lock
defaultroute
noipdefault
noauth
holdoff 4
maxfail 25
persist
asyncmap 0
lcp-echo-interval 2
lcp-echo-failure 7
name uzytkownik@neostrada.pl
user uzytkownik@neostrada.pl
plugin /usr/lib/pppd/2.4.3/pppoatm.so
0.35

gdzie zamiast uzytkownik@neostrada.pl musisz oczywiście wstawić nazwę użytkownika uzyskaną od TP SA (jeśli jeszcze się nie zarejestrowałeś, wpisz rejestracja@neostrada.pl). Natomiast plik /etc/ppp/chap-secrets powinien wyglądać tak:

# Secrets for authentication using CHAP
# client server secret IP addresses
uzytkownik@neostrada.pl * twoje_haslo *

(oczywiście wstawiasz tu swoją nazwę użytkownika i hasło - jeśli wcześniej się nie zarejestrowałeś, wpisz rejestracja@neostrada.pl jako nazwę użytkownika i rejestracja jako hasło). Pozostaje już tylko kwestia czy chcesz używać paczki hotplug, czy nie. Osobiście szczerze polecam ją wyrzucić i zamiast tego ręcznie ładować moduły przy użyciu modprobe. Jeśli jednak chcesz z niej korzystać, odsyłam tutaj.

Na własne potrzeby napisałem skrypt, który automatyzuje cały proces inicjalizacji modemu i łączenia się z TP SA. Może przyda się i Tobie :) Jeśli zechcesz z niego skorzystać, polecam wywołać go np. poprzez /etc/rc.d/rc.inet2, tuż przed wywołaniem skryptu rc.firewall. Jeśli jednak wolisz sam skonfigurować proces nawiązywania połączenia, przypominam co musisz zrobić po kolei.

UWAGA! Pierwsze 4 kroki należy wykonać tylko raz po każdym restarcie komputera.

  1. Załaduj moduł Twojego kontrolera USB (uhci lub ohci):

    modprobe nazwa_modulu
  2. Zamontuj system plików USB:

    mount -t usbdevfs /dev/usb /proc/bus/usb
  3. Załaduj sterownik modemu:

    modprobe speedtch
  4. Załaduj firmware do modemu (może to potrwać nawet kilkadziesiąt sekund, bez paniki):

    /usr/local/sbin/modem_run -k -f /usr/local/lib/firmware.bin
  5. Uruchom pppd:

    pppd
Po tych krokach w /var/log/messages powinno się pojawić coś w tym stylu:

modem_run[96]: modem_run version 1.3.1 started by root uid 0
modem_run[97]: [monitoring report] ADSL link went up
modem_run[96]: ADSL synchronization has been obtained
modem_run[96]: ADSL line is up (384 kbit/s down | 96 kbit/s up)
pppd[99]: Plugin /usr/lib/pppd/2.4.3/pppoatm.so loaded.
kernel: CSLIP: code copyright 1989 Regents of the University of California
kernel: PPP generic driver version 2.4.3
pppd[99]: PPPoATM plugin_init
pppd[99]: PPPoATM setdevname - remove unwanted options
pppd[99]: PPPoATM setdevname_pppoatm - SUCCESS:0.35
pppd[101]: pppd 2.4.3 started by root, uid 0
pppd[101]: Using interface ppp0
pppd[101]: Connect: ppp0 <--> 0.35
pppd[101]: CHAP authentication succeeded
kernel: PPP BSD Compression module registered
kernel: PPP Deflate Compression module registered
pppd[101]: local IP address 83.31.78.121
pppd[101]: remote IP address 213.25.2.31

Jeśli tak się stało - wszystko działa poprawnie. Aby rozłączyć się z TP SA, użyj komendy:

kill -INT `cat /var/run/ppp0.pid`

Tak to wygląda w telegraficznym skrócie. Chętnie wysłucham opinii, sugestii i pytań odnośnie tego dokumentu.

© Kempniu, 2005.

valid html 4.01!  valid css!