Lines Matching refs:you
103 13.1 Strange compilation errors when you build from source
115 13.13 When you run UML, it immediately segfaults
284 will work as well. The defaults will give you a useful kernel. If
285 you want to change something, go ahead, it probably won't hurt
299 Make sure that you don't build this kernel in /usr/src/linux. On some
308 If you get the CVS sources, you will have to check them out into an
312 If you don't have the latest kernel pool, you can get the
321 where 'x' is the version in your pool. Note that you will not get the
328 exception of the 'ARCH=um' that you always need for UML):
336 Any modules that you want to load into this kernel need to be built in
379 When the system is booted, you can use insmod as usual to get the
383 However, if you do find symbols that need exporting, let us
414 uml_utilities distribution. If you don't keep up with the mailing
415 lists, ensure that you have the latest release of uml_utilities if you
438 you need to put a `ubd0=root_fs_whatever' switch on the linux command
447 The kernel will boot up and present you with a login prompt.
463 generally tell you how to log in. So, you log in and you will find
466 add more), so you will have a lot of tools with which to poke around
477 xterm. If you get tired of the xterms, read ``Setting up serial
509 If the network is running, then you can telnet to the virtual
513 When you're done using it, run halt, and the kernel will bring itself
568 you need help building UML from source.
587 This allows you to do things like
605 respectively), optionally with a device number if you are talking
610 lines. If you want to talk about console #3 or serial line #10, they
615 So, for example, you can assign a pty to each of the serial lines
668 you specify is the slave end of a tty/pty pair, something else must
711 This channel has the advantage that you can both attach multiple UML
720 If you attach the main console to a portal, then the UML boot will
731 If you set up a file descriptor on the UML command line, you can
779 If you decide to move the main console away from stdin/stdout, the
780 initial boot output will appear in the terminal that you're running
782 initialized, then the boot output will start appearing wherever you
790 There are a number of interesting things you can do with this
794 First, this is how you get rid of those bleeding console xterms by
804 so that when you switch to it, you will see the UML login prompt
837 terminal program like minicom to it, and you should see the login
893 With so many host transports, which one should you use? Here's when
894 you should use each one:
896 o ethertap - if you want access to the host networking and it is
899 o TUN/TAP - if you want access to the host networking and it is
904 o Multicast - if you want a purely virtual network and you don't want
907 o a switch daemon - if you want a purely virtual network and you
914 o slirp - if you don't have root access on the host to setup
915 networking, or if you don't want to allocate an IP to your UML
931 First, you must have the virtual network enabled in your UML. If are
933 enabled. If you build the kernel yourself, under the "Network device
964 Note that the IP address you assign to the host end of the tap device
965 must be different than the IP you assign to the eth device inside UML.
966 If you are short on IPs and don't want to consume two per UML, then
967 you can reuse the host's eth IP address for the host ends of the tap
973 Also note that when you configure the host side of an interface, it is
976 You are not talking to the UML when you ping that interface and get a
987 Once you've decided how you're going to set up the devices, you boot
989 to the outside world. At that point, you will be able to talk to any
994 tell you what went wrong.
1001 They are both installed with the RPM and deb, so if you've installed
1002 either, you can skip the rest of this section.
1005 If not, then you need to check them out of CVS, build them, and
1016 Below, you will see that the TUN/TAP, ethertap, and daemon interfaces
1017 allow you to specify hardware addresses for the virtual ethernet
1018 devices. This is generally not necessary. If you don't have a
1019 specific reason to do it, you probably shouldn't. If one is not
1030 o You aren't going to use the device for IP networking, so you don't
1033 If you let the driver provide the hardware address, you should make
1045 If you decide to assign the hardware address yourself, make sure that
1047 byte are broadcast addresses, which you don't want assigned to a
1054 Once the network devices have been described on the command line, you
1069 To reach the rest of the world, you should set a default route to the
1091 networks, they will fail to elicit any responses. So, what you want
1097 Note: If you can't communicate with other hosts on your physical
1099 automatically set up. If you run 'route -n' and see a route that
1141 no ethernet card on the host, then you will likely get strange error
1142 messages when you bring the device up inside UML.
1204 helper do the host setup for you. This involves insmod-ing the tun.o
1206 forwarding, routing, and proxy arp. If you are new to UML networking,
1207 do this first. If you're concerned about the security implications of
1213 If you specify an IP address for the host side of the device, the
1274 If you prefer not to have UML use uml_net (which is somewhat
1275 insecure), with UML 2.4.17-11, you can set up a TUN/TAP device
1292 will tell you what device was created.
1341 o Rather than using up two IPs and ARPing for one of them, you can
1445 o Bring the eth device up in UML and you're in business.
1447 If you don't want that tap device any more, you can make it non-
1475 To use this transport, you need to describe the virtual network device
1504 communicate with the outside world. If you're not sure you know what
1505 you're doing, this is the way to go.
1508 If it is absent, then you must configure the tap device and whatever
1509 arping and routing you will need on the host. However, even in this
1511 setuid root if you're not running UML as root. This is because the
1516 If you're using the uml_net helper, you can ignore the following host
1517 setup - uml_net will do it for you. You just need to make sure you
1522 If you want to set things up yourself, you need to make sure that the
1541 If ethertap is enabled as a module, you apparently need to insmod
1542 ethertap once for each ethertap device you want to enable. So,
1551 will give you the tap0 interface. To get the tap1 interface, you need
1575 The first thing you need to do is run the daemon. Running it with no
1580 If you want it to listen on a different pair of sockets, use
1589 If you want it to act as a hub rather than a switch, use
1598 If you want the switch to be connected to host networking (allowing
1609 preconfigured tap device", above). If you're using a different tap
1640 you told the daemon to use different sockets than the default. So, if
1641 you ran the daemon with no arguments, running the UML on the same
1676 There are some oddities with this interface that you should be aware
1679 you specified on the command line. These problems will be fixed at
1717 although you can use anything as long as it is not used by a network
1718 you will be connecting to. The default route on UML should be set to
1735 is limited to 115200. If you need it to go faster, the slirp binary
1756 The interface is whatever network device on the host you want to
1758 tcpdump uses, so if you know how to specify tcpdump filters, you will
1782 If you don't specify an address for the host side of the ethertap or
1902 space that you're saving, make sure you use 'ls -ls' to see the actual
1924 Now, you can see that the COW file has less than a meg of disk, rather
1941 If you attempt to evade this restriction by changing either the
1942 backing file or the COW header by hand, you will get a corrupted
1957 Depending on how you use UML and COW devices, it may be advisable to
1973 already in the COW file header. If you're paranoid, boot the new
1974 merged file, and if you're happy with it, move it over the old backing
1986 convenient if you're short of disk space, and it should also be
1992 uml_moo is installed with the UML deb and RPM. If you didn't install
1993 UML from one of those packages, you can also get it from the UML
2008 your root filesystem isn't large enough or because you want to use a
2020 dd is your friend. All you need to do is tell dd to create an empty
2044 making sure that you use an unassigned ubd device number.
2089 and you're in business.
2102 If you want to access files on the host machine from inside UML, you
2110 This is now possible with the hostfs virtual filesystem. With it, you
2112 files contained in it just as you would on the host.
2130 Now all you need to do is run mount:
2141 If you don't want to mount the host root directory, then you can
2159 To start, you need that hierarchy. The easiest way is to loop mount
2176 Then you need to chown to yourself all the files in that directory
2199 If you need to build hostfs because it's not in your kernel, you have
2241 There are a number of things you can do with the mconsole interface:
2260 When you boot UML, you'll see a line like:
2268 If you specify a unique machine id one the UML command line, i.e.
2276 you'll see this
2301 You'll get a prompt, at which you can run one of these commands:
2445 after you send the 'stop' command, as only one CPU will be held in a
2479 In order to debug the kernel, you need build it from source. See
2481 Make sure that you enable CONFIG_DEBUGSYM and CONFIG_PT_PROXY during
2494 At this point, you can get things going with 'next', 'step', or
2506 you ^C gdb and get a backtrace, you will see the idle thread, which
2510 What you want is the stack of whatever process is sleeping when it
2512 generally fairly easy. Then you need to get its host process id,
2513 which you can do either by looking at ps on the host or at
2517 Now what you do is this:
2528 o attach to the thread you are interested in
2545 Note that you can't do anything at this point that requires that a
2548 o when you're done looking at that process, reattach to the current
2587 gdb to tell you, but for some reason that confuses things and
2591 - it will just sit there after you hit return
2593 o type 'att 1' to the ddd gdb and you will see something like
2605 o At this point, type 'c', UML will boot up, and you can use ddd just
2606 as you do on any other process.
2618 object file you just loaded into UML and where in memory it is. Then,
2620 from the load address that you provided. It gets more interesting
2621 when you load the module again (i.e. after an rmmod). You have to
2628 automates the process for you.
2631 First, you must tell it where your modules are. There is a list in
2642 You change that to list the names and paths of the modules that you
2643 are going to debug. Then you run it from the toplevel directory of
2644 your UML pool and it basically tells you what to do:
2656 GDB is free software, covered by the GNU General Public License, and you are
2668 After you run UML and it sits there doing nothing, you hit return at
2680 At this point, you debug normally. When you insmod something, the
2681 expect magic will kick in and you'll see something like:
2743 described below in case you're interested in what's going on.
2756 the most recently loaded module first. Normally, the module you want
2758 the name fields until find the module you want to debug. Take the
2761 for you :-):
2783 Tell gdb you really want to do it, and you're in business.
2786 If there's any doubt that you got the offset right, like breakpoints
2787 appear not to work, or they're appearing in the wrong place, you can
2798 are offset, then the offset tells you how much you need to add to the
2799 address you gave to add-symbol-file.
2802 When you want to load in a new version of the module, you need to get
2821 points. They were disabled when you dumped all the symbols because
2828 If you don't have the kernel running under gdb, you can attach gdb to
2836 When you send it the signal:
2844 you will get an xterm with gdb running in it.
2847 If you have the mconsole compiled into UML, then the mconsole client
2873 To do this, you need to get the pid of the debugger and pass it in
2877 If you are using gdb under some UI, then tell it to 'att 1', and
2878 you'll find yourself attached to UML.
2881 If you are using something other than gdb as your debugger, then
2882 you'll need to get it to do the equivalent of 'att 1' if it doesn't do
2914 you the low-level activity of the virtual machine.
2973 *** Dropping you to a shell; the system will reboot
2974 *** when you leave the shell.
3014 GDB is free software, covered by the GNU General Public License, and you are
3435 *** Dropping you to a shell; the system will reboot
3436 *** when you leave the shell.
3494 GDB is free software, covered by the GNU General Public License, and you are
3796 13.1. Strange compilation errors when you build from source
3801 and linux. If you forget for any of them, the i386 build seems to
3818 /usr/src/linux. If you do this, the first thing you need to do is
3819 clean up the mess you made. The /usr/src/linux/asm link will now
3848 This happens when you build in /usr/src/linux. The UML build makes
3866 If you build UML with gprof support and, early in the boot, it does
3875 you have a buggy gcc. You can work around the problem by removing
3883 The exact boot error depends on the distribution that you're booting,
3910 o If you see
3917 when you bring up the device inside UML, you have a header mismatch
3919 point at the new headers. This will only be a problem if you build
3927 If you can connect to the host, and the host can connect to UML, but
3928 you cannot connect to any other machines, then you may need to enable
3932 connected to. UML does not enable IP Masquerading, so you will need
3942 Replace eth0 with the interface that you use to talk to the rest of
3950 If you can reach the local net, but not the outside Internet, then
3970 over and see where they disappear. When you find a machine that takes
4022 13.13. When you run UML, it immediately segfaults
4032 If you're running an up to date kernel with an old release of
4036 occurs when you have installed a packaged release of UML then compiled
4044 If you're seeing truly strange behavior, such as hangs or panics that
4045 happen in random places, or you try running the debugger to see what's
4047 host kernel. If you're not running a stock Linus or -ac kernel, then
4056 info), whichever you prefer. Don't assume that everyone knows about
4060 If you want to be super-helpful, read ``Diagnosing Problems'' and
4065 If you get UML to crash, hang, or otherwise misbehave, you should
4069 dot sourceforge dot net (subscription info). When you do, it is
4075 For any diagnosis, you're going to need to build a debugging kernel.
4076 The binaries from this site aren't debuggable. If you haven't done
4084 you will need to run it under the debugger (add 'debug' to the command
4110 of ip in the segv frame. In this case, you would do the following:
4175 In this case, you'll need to get a backtrace from the process men-
4194 If you get a segfault, do it again. It always works the second time.
4267 If you're listed here and you would prefer a real link on your name,
4272 If you're not listed here and you think maybe you should be, please