uml: update README to usable examples
The current `uml` README is terribly outdated and non of the examples work by default. Fix that and while at it convert it to Markdown. Signed-off-by: Paul Spooren <mail@aparcar.org>
This commit is contained in:
parent
03bb3412a2
commit
841738aa55
2 changed files with 51 additions and 46 deletions
|
@ -1,46 +0,0 @@
|
||||||
OpenWrt inside a user mode linux. Why would we even want this many ask?
|
|
||||||
|
|
||||||
There are potentially a lot of reasons, one obvious one to me, it allows
|
|
||||||
folks to 'kick the tires' without actually flashing up any hardware. It's
|
|
||||||
also a great environment for porting over packages, you can get a package
|
|
||||||
fully functional in the uclibc root environment inside a uml without actually
|
|
||||||
disturbing your 'real router', and then rebuild for a specific target once
|
|
||||||
it's fully tested.
|
|
||||||
|
|
||||||
This is a first stab at a build that 'just works' and there will be more
|
|
||||||
cleanup to come. The simple directions are:-
|
|
||||||
|
|
||||||
Configure for uml target
|
|
||||||
Configure with an ext4 root file system
|
|
||||||
build it all
|
|
||||||
|
|
||||||
In your bin directory you will find a kernel and an ext4 root file system
|
|
||||||
when it's finished. Just run it like this:-
|
|
||||||
|
|
||||||
bin/targets/uml/generic/lede-uml-vmlinux
|
|
||||||
ubd0=bin/targets/uml/generic/openwrt-uml-ext4.img
|
|
||||||
|
|
||||||
The uml will start, and eventually the serial console of the uml will be at your
|
|
||||||
console prompt. If you would like it in xterms, substitute con=xterm and con0=xterm.
|
|
||||||
No networking is configured, but, it's a starting point. The resulting file system
|
|
||||||
has just enough free space to start kicking the tires and playing in the world of
|
|
||||||
'embedded routers' along with all the resource restrictions that come with that
|
|
||||||
world.
|
|
||||||
|
|
||||||
To configure networking and more, refer to the user mode linux documentation online.
|
|
||||||
A quick start goes along this line. install the uml-utilities packages so you have
|
|
||||||
the uml switch in and running, then add a command param to your uml start like this
|
|
||||||
|
|
||||||
eth0=daemon,00:01:01:01:01:01,unix,/<your uml switch control socket here>
|
|
||||||
|
|
||||||
With that in, and uml networking actually functional (can be a challenge at times),
|
|
||||||
you should be able to ifconfig the interface and talk to the host side, or, if you
|
|
||||||
bridged the uml switch to your host network, you should be able to run udhcp and be
|
|
||||||
away with networking off to the world. Again, if you are unfamiliar with uml and
|
|
||||||
uml networking, please read the docs and how-to stuff available on the net. It does
|
|
||||||
take some fiddling to get it started and working right the first time, but after that,
|
|
||||||
it opens up a whole new world of virtual machines.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
http://user-mode-linux.sourceforge.net/
|
|
51
target/linux/uml/README.md
Normal file
51
target/linux/uml/README.md
Normal file
|
@ -0,0 +1,51 @@
|
||||||
|
# OpenWrt inside a user mode linux
|
||||||
|
|
||||||
|
> Why would we even want this many ask?
|
||||||
|
|
||||||
|
There are potentially a lot of reasons, one obvious one to me, it allows folks
|
||||||
|
to 'kick the tires' without actually flashing up any hardware. It's also a
|
||||||
|
great environment for porting over packages, you can get a package fully
|
||||||
|
functional in the uclibc root environment inside a uml without actually
|
||||||
|
disturbing your 'real router', and then rebuild for a specific target once it's
|
||||||
|
fully tested.
|
||||||
|
|
||||||
|
This is a first stab at a build that 'just works' and there will be more
|
||||||
|
cleanup to come. The simple directions are:-
|
||||||
|
|
||||||
|
* Configure for uml target
|
||||||
|
* Configure with an ext4 or squashfs root file system
|
||||||
|
* Build it all
|
||||||
|
|
||||||
|
In your bin directory you will find a Kernel and an root file system when it's
|
||||||
|
finished. Just run it like this:-
|
||||||
|
|
||||||
|
```shell
|
||||||
|
./openwrt-uml-vmlinux ubd0=openwrt-uml-squashfs.img
|
||||||
|
```
|
||||||
|
|
||||||
|
The uml will start and eventually the serial console of the uml will be at your
|
||||||
|
console prompt. If you would like it in xterms, substitute `con=xterm` and
|
||||||
|
`con0=xterm`. **No networking is configured** but it's a starting point. The
|
||||||
|
resulting file system has just enough free space to start kicking the tires and
|
||||||
|
playing in the world of 'embedded routers' along with all the resource
|
||||||
|
restrictions that come with that world.
|
||||||
|
|
||||||
|
To configure networking and more refer to the *user mode linux* documentation
|
||||||
|
online. A quick start goes along this line. Install the `uml-utilities`
|
||||||
|
packages so you have the `uml_switch` in and running, then add a command param
|
||||||
|
to your uml start like this:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
eth0=daemon,00:01:01:01:01:01,unix,/<your uml switch control socket here>
|
||||||
|
```
|
||||||
|
|
||||||
|
With that in, and uml networking actually functional (can be a challenge at
|
||||||
|
times), you should be able to `ifconfig` the interface and talk to the host
|
||||||
|
side or if you bridged the uml switch to your host network, you should be able
|
||||||
|
to run `udhcp` and be away with networking off to the world. Again, if you are
|
||||||
|
unfamiliar with uml and uml networking, please read the docs and how-to stuff
|
||||||
|
available on the net. It does take some fiddling to get it started and working
|
||||||
|
right the first time, but after that, it opens up a whole new world of virtual
|
||||||
|
machines.
|
||||||
|
|
||||||
|
http://user-mode-linux.sourceforge.net/
|
Loading…
Reference in a new issue