Le seguenti 183 parole non sono state trovate nel dizionario di 1275 termini (includendo 1275 LocalSpellingWords) e sono evidenziate qui sotto:
64bit   act   adjust   Adjust   amd64   append   ash   askfirst   at   bin   binaries   binary   boot   boots   bridge   built   but   cat   cd   Clibc   co   command   compile   compiles   con0   con1   config   configuration   copia   dev   dir   disabled   Download   emulated   enables   environment   etc   eth0   Everything   existing   ext2   extra   file   files   filesystem   firmware   following   for   from   gcc   Gentoo   gnu   goal   guide   had   host   hosts   hwsim   if   ifname   images   img   index   Index   init   inittab   Integrate   interface   ipaddr   just   Kernel   kernel   kmod   labs   lan   later   Launch   launched   lib   lib64   like   line   ln   locale   login   looking   looks   lstart   mac8011   machine   Main   Make   make   meant   menuconfig   mode   modify   mount   need   Netkit   netkit   netmask   network   nordkapp   Notes   now   on   only   openwrt   options   Original   package   patch   pc   php   preinit   problem   processor   profile   properly   proto   rc   Read   readwrite   Remount   remount   revision   revisione   root   run   rw   S0   saverio   second   see   select   shutdown   solved   some   staging   static   stop   support   sure   svn   sysinit   system   target   terminal   tested   that   they   this   to   To   toolchain   trunk   tts   tty   tty0   tty1   type   uml   use   used   user   using   verbose   vmlinux   vstart   We   we   weird   were   will   with   within   working   Write   Wrt   x86   xterm   zoobab  

Nascondi questo messaggio
Italiano English
Modifica History Actions

OpenWRT-UML-Netkit

Notes on OpenWRT UML + Netkit

The goal of this guide is to use Netkit with OpenWRT hosts in the emulated environment.

http://wiki.netkit.org/index.php/Main_Page

UML binaries are built with the host toolchain and are meant to run on the host they were built on.

We used a Gentoo machine amd64 profile (64bit processor)

Create OpenWRT UML images

Download and compile OpenWRT for the UML target (tested at 9/12/2009 revision 18717)

svn co svn://svn.openwrt.org/openwrt/trunk/
cd trunk
make menuconfig

select the UML target and compile

  • Make sure you disabled kmod-mac8011-hwsim in your OpenWRT config, if you have it enables it will make Netkit act weird.
  • Make sure the kernel configuration has support for the ext2 file system !

we are using the following CHOST x86_64-pc-linux-gnu-4.3.4

we had a problem with some script looking for a lib64 dir that was not existing, solved like this:

cd $trunk_dir$/staging_dir/toolchain-x86_64_gcc-4.1.2_uClibc-0.9.30.1/
ln -s lib lib64

if the firmware compiles you have the binaries in $trunk_dir$/bin/uml

Test the UML binary

To test if your UML binary boots just use the guide from zoobab http://www.zoobab.com/openwrt-and-user-mode-linux

Integrate in Netkit

Launch in Netkit like this:

cd bin/uml
vstart openwrt --eth0=0 --con0=xterm --con1=xterm --verbose -m openwrt-uml-ext2.img -k ./openwrt-uml-vmlinux

also you may need extra Kernel command line options:

--append=root=98:0 --append=init=/etc/preinit

You will have a OpenWRT machine launched within Netkit, but only the second terminal is properly working for now, adjust inittab (see later)

Remount Read Write

To remount the filesystem readwrite

mount --remount -o rw /dev/root /

Adjust inittab

Original /etc/inittab in OpenWRT looks like this:

root@OpenWrt:/# cat /etc/init
/etc/init.d/  /etc/inittab
root@OpenWrt:/# cat /etc/inittab 
::sysinit:/etc/init.d/rcS S boot
::shutdown:/etc/init.d/rcS K stop
tts/0::askfirst:/bin/ash --login
tty1::askfirst:/bin/ash --login
root@OpenWrt:/# 

modify like this:

root@OpenWrt:/# cat /etc/inittab 
::sysinit:/etc/init.d/rcS S boot
::shutdown:/etc/init.d/rcS K stop
tty0::askfirst:/bin/ash --login
tty1::askfirst:/bin/ash --login
root@OpenWrt:/#

Everything in a patch

saverio@nordkapp ~/SORGENTI/openwrt-trunk-UML $ svn diff
Index: package/base-files/files/etc/inittab
===================================================================
--- package/base-files/files/etc/inittab        (revisione 18727)
+++ package/base-files/files/etc/inittab        (copia locale)
@@ -1,5 +1,4 @@
 ::sysinit:/etc/init.d/rcS S boot
 ::shutdown:/etc/init.d/rcS K stop
-tts/0::askfirst:/bin/ash --login
-ttyS0::askfirst:/bin/ash --login
+tty0::askfirst:/bin/ash --login
 tty1::askfirst:/bin/ash --login
Index: package/base-files/files/etc/config/network
===================================================================
--- package/base-files/files/etc/config/network (revisione 18727)
+++ package/base-files/files/etc/config/network (copia locale)
@@ -8,7 +8,7 @@
 
 config interface lan
        option ifname   eth0
-       option type     bridge
+       #option type    bridge
        option proto    static
        option ipaddr   192.168.1.1
        option netmask  255.255.255.0
saverio@nordkapp ~/SORGENTI/openwrt-trunk-UML $

Notes on netkit labs

lstart --verbose -o --append=root=98:0 -o --append=init=/etc/preinit