Routerboard OpenWrt: Porovnání verzí

Z HKfree wiki
Skočit na navigaci Skočit na vyhledávání
Řádek 32: Řádek 32:
 
## x - exit setup
 
## x - exit setup
 
# RB se restartuje a měl by nabootovat image z DHCP/BOOTP serveru
 
# RB se restartuje a měl by nabootovat image z DHCP/BOOTP serveru
# pomocí wget2nand stáhnout do RB image finálního systému, který se nainstaluje do NAND flashky (RB musí mít přístup do internetu):
+
# Pokud se neobjeví shell <code>root@OpenWrt:/#</code> automaticky, tak stisknout v terminálu Enter
#* <code>wget2nand  http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/nand/</code>
+
# Z nějakého důvodu mi zlobilo resolvování DNS jmen, musel jsem provést <code>cp  /tmp/resolv.conf.auto /etc/resolv.conf</code>, abych měl v resolv.conf správné DNS servery (10.107.4.100,10.107.4.129)
#* Volitelně si lze stáhnout soubory openwrt-ar71xx-nand-vmlinux.elf a openwrt-ar71xx-nand-rootfs.tar.gz do HTTP serveru spuštěného lokálně v síti, ke které je RB připojen (třeba na PC), a odkázat wget2nand na tento server
+
# Pomocí wget2nand stáhnout do RB image finálního systému, který se nainstaluje do NAND flashky (RB musí mít přístup do internetu):
 +
#* <code>wget2nand  http://lide.hkfree.org/~pavkriz/hkfree/routerboard-openwrt/2014-05-25/</code>
 +
#* Volitelně si lze stáhnout soubory openwrt-ar71xx-mikrotik-vmlinux.elf a openwrt-ar71xx-mikrotik-rootfs.tar.gz do HTTP serveru spuštěného lokálně v síti, ke které je RB připojen (třeba na PC), a odkázat wget2nand na tento server (pozor, názvy souborů jsou evidentně v posledním buildu trochu jiné, než podle originálního návodu; v případě problémů se podívat do souboru /sbin/wget2nand, jak se mají tyto 2 soubory jmenovat)
 
# vrátit v BIOSu bootování na:  n - boot from NAND, if fail then Ethernet
 
# vrátit v BIOSu bootování na:  n - boot from NAND, if fail then Ethernet
  

Verze z 26. 5. 2014, 17:24

Návod, jak rozběhat Linuxovou distribuci OpenWrt na Mikrotik Routerboard RB433, RB411 a dalších.

Obecně vychází z http://wiki.openwrt.org/toh/mikrotik/rb433 a http://wiki.openwrt.org/toh/mikrotik/rb411

Co budeme potřebovat

  1. RouterBoard, na který chceme Linux nainstalovat (testováno s RB433UAH)
  2. Sériový NULL MODEM kabel, např. z GESu (pozor, nejdřív mi omylem prodali F/F kabel, který nebyl překřížený, kdyby něco nefungovalo, tak ověřit, že piny 2 a 3 jsou mezi konci překřížené)
  3. PC se sériovým (COM) portem nebo redukci USB-RS232 (USB-COM)
  4. UTP kabel pro připojení RB do lokální sítě nebo alespoň s PC napřímo
  5. (volitelně) druhý RB (který třeba už máme doma jako router), který bude sloužit jako DHCP/BOOTP+TFTP server (jinak lze použít i PC)

Základní princip ve zkratce

  • Zavaděč v Routerboardu umí nabootovat (po nastavení v "BIOSu") initramfs ELF image přes TFTP - tento image si můžeme představit jako LiveCD, ze kterého dočasně nabootujeme v RB jiný systém
  • V nabootovaném Linuxu lze provést trvalou instalaci do NAND flash na desce RB - instalovat můžeme klidně jinou verzi OpenWrt, než kterou jsme dočasně nabootovali přes TFTP
  • Podobným postupem lze vrátit zpět RouterOS, viz RB NetInstall

Postup

  1. Zazálohovat licenci z Mikrotiku: Winbox: System - License - Export, uložit na PC
  2. Stáhnout initramfs image, ze kterého bude schopen RB nabootovat a uložit si ho pod názvem openwrt.img; initramfs image jsem připravil zde: http://lide.hkfree.org/~pavkriz/hkfree/routerboard-openwrt/2014-05-25/openwrt-ar71xx-mikrotik-vmlinux-initramfs.elf (je to zkompilovane v uvedene datum z master branch z GITu dle nize uvedeno navodu)
  3. Nahrát initramfs na TFTP server pod názvem openwrt.img a nastavit BOOTP/DHCP tak, aby tento soubor nabízelo; pokud máte DHCP server spuštěn na jiném RB, ke kterému je tento RB připojen, je to jednoduché (jinak použijte třeba dnsmasq v Linuxu nebo TFTPD32 pro Windows):
    1. Nahrát soubor openwrt.img do RB, kde běží DHCP server (drag-and-drop do Files)
    2. Nastavit IP - DHCP Server - DHCP - editovat default - bootp = dynamic
    3. Nastavit IP - DHCP Server - Networks - editovat vaši podsíť (např. 10.107.218.16/28) - Boot file image = openwrt.img
    4. Nastavit IP - TFTP - přidat server (plus) - IP adresses = vaše podsíť (např. 10.107.218.16/28), Req. Filename = openwrt.img, Real Filename = openwrt.img
  4. Připojit se sériovou konzolí na COM port RB (toho, kam chceme flashnout Linux) a sputit nějaký terminál (např. Putty, Serial, COMx, 115200, 8N1)
  5. Nastartovat RB, po výzvě "Press any key within 2 seconds to enter setup." v terminálu stisknout klávesu a v "BIOSu" RB nastavit:
    1. o - boot device
    2. e - boot over Ethernet
    3. x - exit setup
  6. RB se restartuje a měl by nabootovat image z DHCP/BOOTP serveru
  7. Pokud se neobjeví shell root@OpenWrt:/# automaticky, tak stisknout v terminálu Enter
  8. Z nějakého důvodu mi zlobilo resolvování DNS jmen, musel jsem provést cp /tmp/resolv.conf.auto /etc/resolv.conf, abych měl v resolv.conf správné DNS servery (10.107.4.100,10.107.4.129)
  9. Pomocí wget2nand stáhnout do RB image finálního systému, který se nainstaluje do NAND flashky (RB musí mít přístup do internetu):
    • wget2nand http://lide.hkfree.org/~pavkriz/hkfree/routerboard-openwrt/2014-05-25/
    • Volitelně si lze stáhnout soubory openwrt-ar71xx-mikrotik-vmlinux.elf a openwrt-ar71xx-mikrotik-rootfs.tar.gz do HTTP serveru spuštěného lokálně v síti, ke které je RB připojen (třeba na PC), a odkázat wget2nand na tento server (pozor, názvy souborů jsou evidentně v posledním buildu trochu jiné, než podle originálního návodu; v případě problémů se podívat do souboru /sbin/wget2nand, jak se mají tyto 2 soubory jmenovat)
  10. vrátit v BIOSu bootování na: n - boot from NAND, if fail then Ethernet

Vlastní kernel a systém

Pokud si chce někdo buildnout svůj systém, tak postupovat podle http://wiki.openwrt.org/toh/mikrotik/rb433 a http://wiki.openwrt.org/doc/howto/buildroot.exigence:

  • v menuconfig:
    • Target System: Atheros AR7xxx/AR9xxx
    • Subtarget: Devices with NAND flash (mostly Mikrotik)
    • Target Images: ramdisk (and also tar.gz if you plan to do a permanent install with the same image)