How do I enable veth for BeagleBoard
I already placed a question on the Ubuntu for BeagleBone discussion page but didn't get an answer yet. Maybe you could step in. I need to use Linux containers (LXC) on my BeagleBone but the virtual network interface module veth dosn't seem to be enabled in the standard build. Could you tell me how to get it enabled? --XXLRay (talk) 05:10, 19 May 2014 (UTC)
It's pretty easy to enable it with my kernel scripts, so here for hints:
- Thank you for the answer but I think I did not explain the issue well enough. I already know how to compile a kernel and I think I also know which option exactly is needed.
- My problem is that the pre-build Ubuntu image from this Wiki page does not have veth support. I now see two solutions to overcome this problem:
- Install Ubuntu from the given image, download the kernel sources and re-compile the kernel with veth enabled
- Adjust the image build script to create the Ubuntu beaglebone image with veth enabled.
- So far I was looking at the script beagleboard.org_image.sh but could not find out whether this compiles the kernel or just downloads it. Furthermore would I prefer not to create the kernel config from scratch but just to take one that works fine and only change the veth option.
- What I need to know is where I can get the kernel sources that are used for the pre-build image, where I can get the depending kernel config that creates a kernel that runs on a beaglebone and whether the script allows a direct way to set the kernel config.
- --XXLRay (talk) 10:35, 20 May 2014 (UTC)
The "beagleboard.org_image.sh" doesn't build anything, it just builds an image from *.deb packages.
The kernel patch-set is always available on https://rcn-ee.net/deb/ and https://github.com/RobertCNelson/bb-kernel just take the output of 'uname -r' to find the exact tag/patchset. --RobertCNelson (talk) 13:46, 20 May 2014 (UTC)
- Thank you for coming back to me. I used the last days trying to get it running but unfortunately I haven't succeeded yet.
- I started to fetch the kernel sources on my own but unfortunately encounter problems when I try to build the kernel. This is what I did (on the beagle) so far:
- wget https://rcn-ee.net/deb/trusty-armhf/v3.8.13-bone54/linux-image-3.8.13-bone54_1.0trusty_armhf.deb
- dpkg -i linux-headers-3.8.13-bone54_1.0trusty_armhf.deb
- cd /usr/src/linux-headers-3.8.13-bone54
- nano .config: CONFIGH_VETH=m
- make deb-pkg
- Now I encounter the error message "make: *** No rule to make target `arch/arm/tools/gen-mach-types', needed by `include/generated/mach-types.h'. Stop." and the directory /usr/src/linux-headers-3.8.13-bone54/arch/arm/tools/ is indeed empty.
- That is why I switched to using your scripts (which seems to be a lot more comfortable)
- git clone https://github.com/RobertCNelson/stable-kernel.git
- cd stable-kernel
- git checkout origin/v3.9.x -b tmp
- git config --global user.name "Dummy"
- git config --global user.email "firstname.lastname@example.org"
- Set "Device Drivers -> Network device support -> Virtual ethernet pair device" to 'M'
- Unfortunately the board still boots the old kernel.
- As follows I tried to install the new kernel by using the package method
- dpkg -i ~ubuntu/stable-kernel/deploy/linux-image-3.9.11-x5_1.0cross_armhf.deb
- dpkg -i ~ubuntu/stable-kernel/deploy/linux-headers-3.9.11-x5_1.0cross_armhf.deb
- Same problem as before.
- I wanted to change the default kernel but there seems to be no grub installed.
- update-grub: command not found
- ls /boot/grub
ls: cannot access /boot/grub: No such file or directory