1 (edytowany przez Cezary 2013-07-11 08:17:36)

Temat: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

Modem USB można wykorzystać jako miejsce na extroota pod warunkiem że zostanie wcześniej przełączony i karta uSD będzie cały czas dostępna dla systemu. O ile w przypadku innych modemów można to zrobić, o tylko E3131 nie daje się przełączyć na stałe (dla przypomnienia: polecenie ^SETPORT nie przełącza modemu, ono tylko włącza/wyłącza interfejsy i cdrom, ale nie powoduje przełączenia modemu na stałe). Poniższe rozwiązanie przeznaczone jest dla E3131 - jego zadaniem jest wywołanie usb-modeswitch przed wykonaniem extroota, dzięki czemu karta pamięci staje się dostępna normalnie dla systemu. Oczywiście można jednocześnie używać go także jako modemu.

Założenia:
- zainstalowane moje Gargoyle PL z wersji 1.5.7 i wyższej, bazujący na AA 12.09
- system ma zainstalowany pakiet block-mount (jeżeli robiliśmy to wcześniej należy pamiętać o odinstalowaniu pluginu gargoyle usb-storage)
- system musi mieć zainstalowane pakiety usb-modeswitch i usb-modeswitch-data
- używany modem to Huawei E3131 o identyfikatorze przed przełączeniem 12d1:14fe (nie HiLink!).
- modem ma kartę uSD na której będzie extroot. Żaden inny nośnik podczas startu nie jest dołączony do routera

Dla innych modemów może działać takie rozwiązanie (nie sprawdzałem), wymaga zmiany identyfikatorów urządzenia w pliku.

1. Formatujemy kartę, robimy extroota. Generalnie opisane jest to przeze mnie w tym temacie oraz na http://eko.one.pl, więc nie będę przytaczał po raz kolejny opisu
2. PRZED wykonaniem punktu 4 we wspomnianym poradniku, czyli restartem ostatecznym systemu robimy:

wget http://dl.eko.one.pl/projekty/49_usb_modeswitch -O /lib/preinit/49_usb_modeswitch

Zadaniem skryptu jest wywołanie usb-modeswitch przed zamontowaniem nośnika i aktywacją extroota. Sam skrypt to tylko dodatek więc extroota z punktu 1 należy normalnie wykonać.

3. Wykonujemy restart

Skrypt jest poprawny i przy spełnieniu  wspomnianych warunków działa prawidłowo i robi się extroot. Nie sprawdzałem jak zachowa się na innych obrazach i innych modemach.

Aktualizacja: skrypt był testowany przeze mnie i  użytkowników na modemach:
- E3131s-2 - działa bez zmian
- E353 - wymaga zmiany w skrypcie zmiennej ProductID (P=1446)
- E372 - wymaga zmiany w skrypcie zmiennej ProductID (P=1446)
- E3276 - działa bez zmian

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

2

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

Wielkie dzięki! Wreszcie działa!!!
Jedno pytanie: w skrypcie są odwołania do sda, a więc jeżeli karta w modemie będzie wykrywana jako np. sdb a pendrive jako sda to modem się przełączy przed extrootem?

Wally

3

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

Wtedy nie będzie działać. Patrz założenia jakie były.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

4

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

No właśnie - brak innych nośników to raczej rzadka sytuacja. Czy nie dałoby się tego jakoś uniezależnić od sdX?

Wally

5

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

Wcale nie. Skoro masz inne nośniki to nie ma problemu żebyś extroota zrobił po ludzku na tym innym pendrive. Odpada wtedy kombinowanie z przełączaniem modemu, prawda?

Nie masz pojęcia jako które urządzenie pojawi się nośnik.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

6

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

Super działa wkońcu. Wielkie dzięki !!

TP-MR3420   ||E3131|| Microsdhc16GB Adata
                 //  Gargoylev 1.5.10   \\

                   \\  Orange FreeNet //

7

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

U mnie też wszystko ładnie działa. THX!

Orange 300GB + Huawei B315 + TP-Link MR3420v2

8

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

Sposób działa również na E353s-2 - mają te same PID i VID wink

9

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

Generalnie powinno działać z dowolnym modem po zmianie identyfikatora. Ale nie mam nie wiadomo ilu modemów, wiec nie sprawdzę czy jest tak faktycznie.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

10

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

A czy może Pan podpowiedzieć co zmienić w skrypcie aby działało z czystym AA?

11

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

Nic. Obecna wersja działa też i z AA, wymaga tylko doinstalowania usb-modeswitch i usb-modeswitch-data

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

12 (edytowany przez Wally 2013-02-17 19:44:40)

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

Cezary napisał/a:

Wcale nie. Skoro masz inne nośniki to nie ma problemu żebyś extroota zrobił po ludzku na tym innym pendrive. Odpada wtedy kombinowanie z przełączaniem modemu, prawda?

Nie do końca - w jednym USB modem z kartą i extrootem a w drugim USB pendrive do przenoszenia filmów na TV. Dwa USB w routerze czasem się przydają smile

Cezary napisał/a:

Nie masz pojęcia jako które urządzenie pojawi się nośnik.

A może da się jakoś w skrypcie wyczaić UUID lub label podłączanego dysku? W /tmp jest plik drives_found.txt, który zawiera UUIDy ,ale to chyba robił plugin usb-storage, bo po extroocie już nie jest tworzony.

Wally

13

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

To podłącz huba.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

14

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

Cezary napisał/a:

To podłącz huba.

taa, tak jest najprościej smile

Wally

15

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

Mam AA 12.09 i niestety coś jest nie tak. Robię wszystko jak w opisie. Extroot się robi a modem e3131 nie przełączony.
Co jest nie tak?

root@OpenWrt:~# cat /tmp/usb_modeswitch.log
/dev/mtdblock2: TYPE="squashfs"
/dev/sda1: UUID="78d675ec-5752-4bbc-bc76-db30d9475d18" TYPE="ext2"


root@OpenWrt:~# cat /proc/bus/usb/devices

T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=480  MxCh= 1
B:  Alloc=  0/800 us ( 0%), #Int=  0, #Iso=  0
D:  Ver= 2.00 Cls=09(hub  ) Sub=00 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=1d6b ProdID=0002 Rev= 3.03
S:  Manufacturer=Linux 3.3.8 ehci_hcd
S:  Product=Generic Platform EHCI Controller
S:  SerialNumber=ehci-platform
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=  0mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub
E:  Ad=81(I) Atr=03(Int.) MxPS=   4 Ivl=256ms

T:  Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  2 Spd=480  MxCh= 0
D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=12d1 ProdID=14fe Rev= 1.02
S:  Manufacturer=HUAWEI
S:  Product=HUAWEI Mobile
C:* #Ifs= 2 Cfg#= 1 Atr=80 MxPwr=500mA
I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
E:  Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 1 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
E:  Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms

16

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

Ściągnij jeszcze raz skrypt z wczoraj, bo była aktualizacja.

usb-modeswitch zainstalowałeś we flash?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

17

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

usb-modeswitch i usb-modeswitch-data zainstalowałem na samym początku wykonywanie Extrota. Zrobiłem go jeszcze raz dzisiaj rano, bez powodzenia. Cały czas to samo - nie przełącza.

18

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

Wstaw się sobie w skrypt echa i zobacz czy się w ogóle wykonuje, co ładuje itd. To aa skąd jest, moje? Router jaki?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

19

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

Router TP-MR-3420v2,  AA z twojej strony. Wstawiłem echa na początku, po drugim "done" i na końcu
Informacja z pliku:

1 wejscie
3 wyjscie
za 2 done

Nie wiem czy kolejność ma znaczenie ale jest nie po kolei.

20

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

No ma, bo to funkcja i wykonuje na początku wykonuje się w ogóle jej rejestracja w dopiero później wykonanie w kolejności zarejestrowania. Więc się robi. Szukaj dalej.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

21

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

Czy komuś działa z czystym AA 12.09. U mnie coś jest nie tak, albo czegoś nie widzę.
Przeinstalowałem cały obraz i nadal nie przełącza. Wracam do starej konfiguracji -HUB USB.

22

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

U mnie działa smile

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

23 (edytowany przez czuraj 2013-02-21 17:10:49)

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

Ja mam mały problem - być może jest to problem z kartą, postaram się sprawdzić w najbliższym czasie. Mianowicie dopisałem do crona regułkę na reboot routera o 5:00. Niestety, o ile podczas testów i na następny dzień nie było problemów to dzisiaj router włączył się bez extroota. Nie wiem czym jest to spowodowane, ale gdy ostatnio miałem podobny problem wystarczyła podmiana pliku skryptu i sprawdzenie karty pamięci.

Myślałem nad opcją enabled_fsck, więc mam pytanie - czy ona działa tylko, gdy jest zainstalowany pakiet obsługujący sprawdzenie czy też są jakieś wbudowane mechanizmy?

edit: Aktualnie system w ogóle nie widzi karty, dopiero wyjęcie i włożenie modemu załatwia sprawę.

Zrobiłem sprawdzenie karty e2fsck i wydaje się, że nic nie ukazało:

e2fsck 1.42.4 (12-June-2012)
ExtRoot was not cleanly unmounted, check forced.
Pass 1: Checking inodes, blocks, and sizes

Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
ExtRoot: 2178/231360 files (4.1% non-contiguous), 137928/461860 blocks

24

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

Ale nie w gargoyle na mr3420 bo tak nie ma fsck.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

25

Odp: [HOWTO] Wykorzystanie Huawei E3131 do extroota na MR3420 i podobnych

Teraz zrobiłem reboot routera z konsoli i wystartował bez większych problemów. Pewnie sprawdzanie nośnika przy starcie extroota nic nie da? Pakiet chyba byłby dostępny dopiero po pojawieniu się nośnika, a w końcu jak się pojawi to extroot powinien bez problemu wystartować.