If-Koubou

Kako instalirati dodatni softver na kućnom usmjerivaču (DD-WRT)

Kako instalirati dodatni softver na kućnom usmjerivaču (DD-WRT) (Kako da)

Jeste li ikada željeli imati dodatne funkcionalnosti kao što su E-pošta, Bit-torrent ili čak MySQL izravno na vašem usmjerivaču? Pa možda sada možete. How-To Geek zaroni kako instalirati Opkg softver na DD-WRT.

Slika Jean Spector i Aviad Raviv

Ako još niste, provjerite i pregledajte prethodne članke u nizu:

  • Pretvorite svoj početni usmjerivač u Super-Powered Router s DD-WRT
  • Kako ukloniti oglase s Pixelserv na DD-WRT

Pod pretpostavkom da ste upoznati s tim temama, nastavite čitati. Imajte na umu da je ovaj vodič malo tehničniji, a početnici trebaju biti oprezni prilikom modiranja usmjerivača.

nevolje

Nedavno sam kupio novi Buffalo WZR-HP-AG300H koji dolazi s verzijom DD-WRT. Zbog činjenice da ovaj usmjerivač ima USB priključak, odmah sam povezao HD i pokušao upotrijebiti wiki vodič "Optware, The Right Way". Nažalost, brzo sam otkrio da je usmjerivač koji imam, Atheros temeljen i skripta s te wiki stranice, ne podržava. Tako sam počeo kopati (kao što uvijek radim) i naišao sam na nekoliko vodiča (1, 2, 3 i 4) koji su imali za cilj objasniti kako se Opkg radi ručno. Iako je njihov doprinos (među ostalim izvorima na webu) ovim vodičima bio neprocjenjiv, neki od uputa nisu (IMHO) jednostavno dovoljno ravno naprijed. Na primjer, dajući vam "lib" datoteke ribe, ali ne naučiti kako to ribu iz izvora. Također, moram koristiti Linux oblikovani HD ili barem jednu particiju (što zapravo ne radi ni na firmwaresima koje sam testirala). Zato sam osjetio potrebu da napravim donji sažet, jednostavan slijed i reproducibilan postupak za dobivanje OpenWRT Opkg upravitelja paketa za rad na takvim usmjerivačima.

Ažuriranje: Mogućnost montažnih pregrada je ponovno uvedena u re-branded verziju na 17798 alfa graditi.

Što je Opkg?

Opkg je upravitelj paketa kao što je apt / aptitude i yum. Djeluje kao zamjena za upravitelja paketa IPKG, a može se koristiti za instalaciju softvera kao što su: BitTorrent za prijenosni program, šifrant e-pošte i Knockd daemon koji izvršavaju skripte nakon određenog slijeda pokretanja ulaza, u ime nekoliko. S web mjesta OpenWRT:

Uslužni program opkg (ipkg fork) lagan je upravitelj paketa koji se koristi za preuzimanje i instaliranje paketa OpenWrt iz spremišta lokalnih paketa ili onih koji se nalaze na Internetu. Opkg pokušava riješiti zavisnost s paketima u spremištima - ako to ne uspije, prijavit će pogrešku i prekinuti instalaciju tog paketa.

Stoga pomoću programa Opkg možemo instalirati stvari kao što smo to učinili s Ipkg-om na vodiču "Otpustite još veću snagu vašeg kućnog usmjerivača". Glavne razlike su:

  1. Da bismo vam dali primjere SSMTP i Knockd, vaši su uistinu morali sami rukovati ovisnostima. Postupak da to učinite ručno je dosadan i nije baš ravan. Opkg to čini automatski.
  2. Ovaj put ćemo biti dodajući softver na vrhu firmwarea koji je na mjestu, a ne zamjenjujući ga. Dok je zamijenio izvrsnu geek vježbu, bilo je bez sumnje: opasno, sklona problemima, nepovratna i najgore od svih usmjerivača. Nepotrebno je reći da je to jednostavnije i sigurnije.

Preduvjeti

Da biste dovršili ovaj vodič, navedite sljedeće:

  1. Kao što je gore navedeno, ovaj je vodič izrađen i testiran na Buffalo WZR-HP-AG300H s Buffaloovom "Pro" firmware verzijom 17135. Ona bi trebala raditi na bilo kojem routeru temeljenom na Atheros (ar71xx) s bilo kojom verzijom DD-WRT iste inačice ili više , ali vaš kilometraža svibanj vrlo.
  2. Morat ćete omogućiti SSH na usmjerivaču, kao i instalirati i koristiti WinSCP za povezivanje s njom. To je objašnjeno u vodiču "Kako ukloniti oglase s Pixelserv na DD-WRT". Zapravo, pretpostavit ćete da možete učiniti sve što je objašnjeno u tom vodiču.
  3. Morate se moći povezati s usmjerivačem pomoću terminala (SSH se preporučuje). Neki pokazatelji o tome kako to učiniti su na DD-WRT wiki.
  4. Prostor za JFFS i oko 4 MB postformiranog prostora za postavljanje baze. JFFS prostor nije samo preduvjet, već je pokazni čep. To je zato što, ako vaš ruter nema barem gore navedene 4MB prostora nakon formatiranja, nećete dobiti nikakvu stvarnu korist od ovog vodiča i bolje ćete koristiti "Pustite još veću snagu od svog kućnog usmjerivača" vodič za instalaciju IPkg paketa izravno u firmware ili instalaciju paketa Ipkg ručno. Slijedite upute na "Kako ukloniti oglase s Pixelserv na DD-WRT" vodiču kako biste omogućili JFFS i vidjeti koliko slobodnog prostora zapravo imate nakon formatiran je.

Bilješka: Moguće je to učiniti samo s 2MB prostora za postavljanje, ali onda bismo izgubili rezultat "/ etc" postaje čitak-pisan i trebao bi se zazivati ​​Opkg, dok ručno konfigurira konfiguracijsku datoteku svaki put ... koji je poput sooo lame ...

Omogućuje pucanje

U ovom trenutku trebali ste omogućiti JFFS i moći ćete SSH / WinSCP u router.

  1. Otvorite terminalsku sesiju usmjerivaču.
  2. Izradite privremeni direktorij na kojem ćemo raditi:

    mkdir / tmp / 1
    cd / tmp / 1

Upotrijebite Ipkg da biste instalirali Opkg
Iako ćemo zamijeniti Ipkg kao upravitelja paketa, koristit ćemo ga za ručno instaliranje Opkg instalacijskog paketa.

  1. Da biste to učinili, preuzmite instalacijski paket Opkg za ar71xx arhitekturu iz OpenWRT projekta prtljažnika:

    wget http://downloads.openwrt.org/snapshots/trunk/ar71xx/packages/opkg_618-2_ar71xx.ipk

    Note1: U trenutku pisanja, 618 je najnovija verzija, to može biti podložno promjenama u budućnosti pa se stoga prilagodite.
    Napomena 2: Moguće je da je jedina razlika u dobivanju ovog vodiča za rad na drugim arhitekturama da preuzmete Opkg instalaciju od primjenjive arhitekture za vaš usmjerivač ... no to doista niste ispitali.

  2. Pozovite Ipkg da ručno instalira Opkg pomoću:

    ipkg instaliraj opkg_618-2_ar71xx.ipk

    Bilješka: Možete, ako želite, instalirati svaki paket u spremište ručno na taj način. No to bi značilo da ćete morati sami riješiti ovisnosti ... i što bi to bilo zabavno?

Dobivanje dinamičkih datoteka knjižnice ("lib" s)
Potrebne "lib" datoteke za izradu Opkg rada dio su OpenWRT distribucije. Da bi ih dobio, potrebno ih je izdvojiti iz "Root FileSystem" navedene distribucije.

  1. Da biste to učinili, preuzmite najnoviji osnovni "Root FileSystem" za openWRT distrebution koji sadrži potrebne "lib" s OpenWRT projektnog prtljažnika:

    wget http://downloads.openwrt.org/snapshots/trunk/ar71xx/openwrt-ar71xx-generic-rootfs.tar.gz

  2. Izvadite ga pomoću:

    tar xvzf openwrt-ar71xx-generički-rootfs.tar.gz

  3. Kopirajte datoteke "libs" iz "rootfs" koje smo prethodno izdvojili u direktorij "libs" na našem JFFS-u, čuvajući njihove atribute i simbolične veze:

    cp -Pp / tmp / 1 / lib / * / jfs / usr / lib /

    Bilješka: Dobit ćete poruke koje govore da su poddiremi izostavljeni. Budući da ne trebamo ništa osim "lib" datoteka, ovo je u redu i možete zanemariti te poruke.

Učvršćivanje LD_LIBRARY "PATH"
Moramo reći usmjerivaču, gdje tražiti zajedničke knjižnice (libs) koje smo upravo "instalirali" i da to treba učiniti prije one koje su došle s firmware-om.

  1. Da biste to učinili, ručno postavite (za sada) LD_LIBRARY varijablu okruženja ručno tako da mjesto na kojem smo kopirali nove lib datoteke bit će prvo u "PATH":

    izvoz LD_LIBRARY_PATH = / jffs / usr / lib: $ LD_LIBRARY_PATH

Read-writable "/ etc"
Kopirati ćemo "/ etc" na JFFS, a zatim napraviti pravu "/ etc" točku montiranja, ukazati na to. Na taj način, otvorit će se i svijet mogućnosti, jer će "/ etc" postati čitak-napisano (što sam osobno čekao dati ili uzeti sedam godina) i omogućiti paketi koji očekuju ovo ponašanje, da rade ispravno.

  1. Izradite direktorij koji će zadržati "/ etc":

    mkdir -p / jffs / geek / itd

  2. Rekurzivno kopirajte cjelinu "/ etc" čuvajući sve poddirektorije, atribute datoteka i simboličke veze.

    cp-a / etc / * / jffs / geek / etc /

  3. Ručno (za sada) "uvezivanje" mapu "/ etc" u JFFS:

    mount -o bind / jffs / geek / etc / / etc /

Postavite optički direktorij ("/ opt")
Opkg iz OpenWRT-a, očekuje se da će se koristiti kada se uspostavi firmver za usmjerivač. Budući da se FileSystem još uvijek ne nalazi na routeru i stoga još uvijek podliježe promjeni, nema problema s instaliranjem na bilo koje mjesto na FileSystemu. Zbog toga Opkg konfiguracijska datoteka ukazuje na pakete koji se instaliraju na "root" (/) datotečnog sustava. Međutim, upotrebljavamo Opkg nakon firmware je izgrađen i instaliran na ruteru, i kako ne možemo promijeniti korijen datotečnog sustava koji se može čitati i pisati, ukazivat ćemo sve instalacije da se instaliraju pod "/ opt". Međutim, trenutno "/ opt" također ukazuje na lokaciju samo za čitanje na usluzi usmjerivača. Da bismo to nadvladali, izradit ćemo "/ opt" točku JFFS-a, koji se može čitati.

  1. Da biste to učinili, izradite direktorij koji će sadržavati pakete programa Optware:

    mkdir -p / jffs / opt

  2. Ručno (za sada) "uvezati" mapu "/ opt" u JFFS:

    mount -o bind / jffs / opt / opt /

    Napomena: Iako izvan opsega ovog vodiča, napredniji korisnici možda žele promijeniti ovu točku ugradnje, kako bi ukazali na HD.

Podešavanje datoteke konfiguracije Opkg
Želimo da Opkg konfiguracijska datoteka bude tamo gdje Opkg pretražuje prema zadanim postavkama (što je "/ etc") i podešeno za instaliranje na "/ opt".

  1. Da biste to učinili, premjestite opkg konfiguracijsku datoteku instaliranu u paket Opkg na lokaciju "/ etc" za čitanje koje se može pisati:

    mv /jffs/etc/opkg.conf / etc /

  2. Promijenite odredište za instalacije programa Optware da biste "/ opt" umjesto "root" (/).
    Da biste to učinili, pomoću editora "vi" ili WinSCP pomaknite se na "/ etc /" i napravite sadržaj opkg.conf datoteke:

    vi /etc/opkg.conf

    Neka izgleda ovako:

    src / gz snapshots http://downloads.openwrt.org/snapshots/trunk/ar71xx/packages
    dest korijen / opt
    dest ram / tmp
    lists_dir ext / var / opkg-popisa
    opcija overlay_root / overlay

    Bilješka: Možete promijeniti direktivu "lists_dir" kako biste usmjerili na lokaciju koja nije u RAM-u, već na JFFS-u. Iako bi vam to olakšalo ažuriranje popisa, prije nego što instalirate dodatni softver (ako je vaš ruter ponovno pokrenut od posljednjeg trenutka), izgubili bi oko 1,5 MB oskudnog prostora JFFS i da biste se složili s erozijom.

Pozdrav baby
Trebali biste biti u mogućnosti vidjeti da Opkg radi izdavanjem ažuriranja i popisa naredbi.

  1. Ako je sve dobro prošlo, trebali biste vidjeti da su popisi Opkg ažurirani bez pogreške i spremni ste za implementaciju skripte u sljedećem koraku:

    opkg update; opkg popis

  2. Odvojite vrijeme za početak istraživanja paketa dostupnih na spremištu ....

StartUp skripta
Trebamo ga napraviti tako da će svi potrebni montažni i putnički načini biti automatski kada se router pokrene. U tu smo svrhu stvorili za vas originalnu geek-init skriptu.

  1. Preuzmite, a zatim ga izvadite i stavite pod "/ jffs / geek / etc /". (Razmislite o tome s WinSCP-om).
  2. Provjerite izvršnu skriptu tako da odete u svojstva s WinSCP ili izvršite:

    chmod + x /jffs/geek/etc/geek-init.sh

  3. Provjerite izvršavanje skripte na pokretanju usmjerivača, koristeći WebGUI. U odjeljku Administracija -> Naredbe u tekstualnom okviru stavite:

    /jffs/geek/etc/geek-init.sh web-gui

    I kliknite "Spremi početak".

Udaranje guma
Ako je sve dobro prošlo, sada biste trebali moći ponovno pokrenuti usmjerivač i još uvijek koristiti upravitelja paketa Opkg. To je za ažuriranje, popis i instaliranje aplikacija.
Omogućuje provjeru da sve funkcionira instaliranjem naredbe "netstat", koja je iz nekog razloga izostavljena iz DD-WRT-ovih gradnji u posljednje vrijeme. Prije nego što to učinimo, izvršite naredbu netstat na terminalu i vidjet ćete da ste zahvaćeni pogreškom iz ljuske, rekavši "-sh: netstat: not found".

  1. Vaš će prvi korak uvijek biti ažuriranje popisa Opkg kako bi se dobili najnoviji paketi iz spremišta:

    opkg ažuriranje

  2. Ako ne znate koji paket sadrži naredbu "netstat", možete filtrirati rezultate pomoću.

    opkg popis | grep netstat

  3. A sada instalirajte "netstat" pomoću:

    opkg instalirajte net-tools-netstat

    A sada, kada izvršite naredbu netstat opet radi ... uredan ha? :)

Do budućih članaka u kojima ćemo instalirati i konfigurirati softverske pakete pomoću ove metode, možete li imati tona geek zabave istražujući veliku količinu softvera koji je sada pravo na prst savjeta.

Ako je takav stroj virtualna nemogućnost, mora biti logično konačna nevjerojatnost. Dakle, sve što moram učiniti kako bismo se osmislili kako je to točno nevjerojatno jest, hranimo tu brojku u konačni generator nevjerojatnosti, dajte mu novu čašu vrućeg čaja i uključite ga ... ... ... Jednu stvar koju oni stvarno ne sviđa, je "Smart-Ass".