Charlie SoftApycom jQuery Menus
You are here: / Accueil / API diverses / VirtualBox on Synology

Install Windows on Synology

It is possible to install a windows system on a synology NAS:

mount -o bind /dev $CHROOT/dev
mount -o bind /proc $CHROOT/proc
mount -o bind /dev/pts $CHROOT/dev/pts
mount -o bind /sys $CHROOT/sys
mount -o bind /volume1/ $CHROOT/volume1/
ln -s /usr/local/your_GPL_dist/source/linux-3.x /usr/src/linux/
apt-get install build-essential kernel-package debconf-utils dpkg-dev debhelper ncurses-dev fakeroot

(My version is 3.2.40)

mkdir /usr/local/kernelSources
cd /usr/local/kernelSources
git clone git://
git checkout v3.2.40
cp /usr/local/your_GPL_dist/source/linux-3.x/synoconfigs/yourSynologyArchi .config
make oldconfig
fakeroot make-kpkg --initrd -j 3 kernel-image kernel-headers
dpkg -i linux-headers-3.2.40_3.2.40-10.00.Custom_amd64.deb linux-image-3.2.40_3.2.40-10.00.Custom_amd64.deb
MINOR=`sed -n 's;([0-9]+) vboxdrv$;1;p' /proc/misc`
/etc/init.d/vboxdrv setup

You can now create a virtual machine on a headless server following this good tutorial!

Admin told:
at 2015-01-15 14:20:15
Do you still have this error:
make[1]: /usr/local/arm-marvell-linux-gnueabi/bin/arm-marvell-linux-gnueabi-gcc: Command not found

I can give you my kernels, but there is a risk to damage your NAS... My gmail address :
elradix told:
at 2015-01-15 14:12:17
done that still stame issue, even recompiled/reinstalled the kernel - even adjust the makefille with the following:

ARCH ?= x86_64
CROSS_COMPILE ?= /usr/local/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu-

all did not help

could you compile the kernel for me, is that possible ?
Admin told:
at 2015-01-15 11:22:53
I remember that the vbox driver compilation was very painful! I have no idea of what's wrong, I suggest you to follow the error message:
- go back to /usr/local/kernelSources (where you get src from GIT)
- be sure there is .config file (the one from /usr/local/gpl/source/linux-3.x/synoconfigs/cedarview)
- run make oldconfig && make prepare

A strange thing is that the script try to find arm-marvell-linux-gnueabi-gcc which is not the correct gcc compiler: you have a x86 processor, not an ARM one...
elradix told:
at 2015-01-15 11:05:26
I have managed to get the kernels created and installed.

Still not able to get virtualbox running without error (virtualbox-4.3_4.3.20-96996~Debian~wheezy_i386.deb)

#root@NaS:/var/log# /etc/init.d/vboxdrv setup
Stopping VirtualBox kernel modules ...done.
Recompiling VirtualBox kernel modules ...failed!
(Look at /var/log/vbox-install.log to find out what went wrong)
#root@NaS:/var/log# nano vbox-install.log

make KBUILD_VERBOSE=1 SUBDIRS=/tmp/vbox.0 SRCROOT=/tmp/vbox.0 CONFIG_MODULE_SIG= -C /usr/local/gpl/source/linux-3.x modules
make[1]: /usr/local/arm-marvell-linux-gnueabi/bin/arm-marvell-linux-gnueabi-gcc: Command not found

ERROR: Kernel configuration is invalid.
include/generated/autoconf.h or include/config/auto.conf are missing.
Run 'make oldconfig && make prepare' on kernel src to fix it.

mkdir -p /tmp/vbox.0/.tmp_versions ; rm -f /tmp/vbox.0/.tmp_versions/*

WARNING: Symbol version dump /usr/local/gpl/source/linux-3.x/Module.symvers
is missing; modules will have no dependencies and modversions.

make -f scripts/ obj=/tmp/vbox.0
/usr/local/arm-marvell-linux-gnueabi/bin/arm-marvell-linux-gnueabi-gcc -Wp,-MD,/tmp/vbox.0/linux/.SUPDrv-linux.o.d -nostdinc -isystem -I/usr/local/gpl/source/linux-3.x/arch/arm/include -Iarch/arm/include/generated -Iinclude -include /usr/local/gpl/source/linux-3.x/include/linux/kconfig.h -include include/linux/syno.h -D__KE$
/bin/sh: 1: /usr/local/arm-marvell-linux-gnueabi/bin/arm-marvell-linux-gnueabi-gcc: not found
make[2]: *** [/tmp/vbox.0/linux/SUPDrv-linux.o] Error 127
make[1]: *** [_module_/tmp/vbox.0] Error 2
make: *** [vboxdrv] Error 2
elradix told:
at 2015-01-14 16:15:48
thanks for your quick response and update!

now i am stuck at the make oldconfig command:

#root@NaS:/usr/local/gpl/source/linux-3.x/synoconfigs# cp /usr/local/gpl/source/linux-3.x/synoconfigs/cedarview .config

#root@NaS:/usr/local/gpl/source/linux-3.x/synoconfigs# make oldconfig
make: *** No rule to make target `oldconfig'. Stop.

at which location should I run that make command
Admin told:
at 2015-01-14 15:54:09
I have updated the tutorial, I hope this is clearer!
The file you have to find is probably /linux-3.x/synoconfigs/x86_64

elradix told:
at 2015-01-14 15:05:35

I have a ds1812+ cedarview, followed all step but now stuck at this one
Get the .config file from the synology sources and compile the kernel (it took approx 1 hour):
cp /usr/local/your_GPL_dist/source/linux-3.2.40/yourSynologyArchi .config

I dont have the folder linux-3.2.40 under my GPL folder - it has only linux-3x - an no .config file.

I have downloaded the latest gpl file at
Admin told:
at 2015-01-14 15:02:15
Try to use http protocol:
git clone
elradix told:
at 2015-01-14 14:57:30

I'm trying to follow your guide but I am stuck at checking out from your git
git clone git://
git checkout v3.2.40

I cant check out apparently; I receive the following error :

git checkout v3.2.40
fatal: Not a git repository (or any of the parent directories): .git

how can I solve this

edit: solved it, doing the next step - I had to go in the directory linux- stable and then do a check out
Post a question:

Fil d'ariane

Images aléatoires

Thibault LELORE