Installing VMware Server on unRAID Box


Recommended Posts

The instructions *are* set up for installing onto the cache drive, but you can change it to whatever location you want.  Say you wanted to make /mnt/disk1 your "persistent" install location.  Just replace /mnt/disk1 wherever you see /mnt/cache in the instructions.  Also, if you are not installing to the cache drive, you don't have to prepend the dot (".") to the directory names.  I had to do that to keep the mover from moving those directories when it does its thing. 

 

Packages are basically a container containing a file tree.  When you install the package, the files/directories of that file tree just get copied into the appropriate locations.  Say I have a file located at /usr/myFile and I want to turn it into a package.  First, I create a directory/folder in which to build my package.  Let's say I create it in the root of the file system as /myPackage.  I would move my file into that directory while still maintaining the path structure, so I would then have my file located at /myPackage/usr/myFile.  I then go into /myPackage and run the makepkg command which creates my package.  Now when I use installpkg (no matter from what location), it will copy myFile to the location /usr/myFile.  With this basic knowledge, you can really make your install location(s) wherever you want.

 

For a little bit more of what's going on, look at the file /etc/vmware/locations once you have VMware Server installed.  This lists all the files and directories that it's looking for.

 

Basically, what you are doing is this:

1.  Installing VMware Server (or any software for that matter) onto the development system into the same location structure as will be used on unRAID

2.  Copying each needed directory & file into a folder (the folder in which you are building the package) being sure the maintain the directory structure

3.  Running the makepkg command

 

That's really all that those commands are doing.  Then because there are some differences between unRAID running in RAM versus a hard-drive install, tweaks sometimes have to be made such moving /tmp from RAM to hard drive in what I did (Note: there might be a better solution to this particular example)

Link to comment
  • Replies 333
  • Created
  • Last Reply

Top Posters In This Topic

Musicman -- thanks for the excellent step by step. 

 

Do you know how I can fix this error when trying to run vmware-config.pl.

What is the location of the directory of C header files that match your running kernel? [/usr/src/linux/include] /usr/src/

The path "/usr/src" is an exiting directory, but it does not contain a "linux" subdirectory as expected.

 

I installed the complete slackware 12.1 iso into a vm image.  I also had the same problem when I had slackware installed native on the laptop.

 

I think there might be a package of standard headers that I need to install but I cannot locate them on the slackware site.

I'm not sure what this means, but when I do an

echo linux-headers `uname -r`

 

It returns

linux-headers 2.6.24.5-smp

 

I think I need to download and install the linux-headers 2.6.24.5-smp and install them on my vm slackware development image so that vmware-config.pl can run properly.  Is this correct?

 

Thanks!!

 

 

 

Link to comment

Bluto,

I'll see if I can help.  I'm not an expert (I learned as I went) and I'm not in front of my machine right now, so this might end up being trial and error.

 

First, it does sound like the kernel headers are missing.  When you did your install, did you do a full install?  You especially need all the developer tools.  You hould be able to download the kernel headers from the Slackware site or locate them on the installation CD. Look for "kernel-headers."  However, there might be bigger issues...

 

I'm not sure about the echo command you used, but I'm thinking it might have just echoed "linux-headers" and then run the uname -r command.  If this is the case, it indicates that you are running the 2.6.24.5-smp kernel.  This might be a problem if you plan to run the created package on an unmodified (i.e., stock kernel) unRAID.  I think unRAID is currently using the 2.6.24.4 kernel, and a non-smp kernel at that.  To avoid issues and incompatibilities, I think you need to use the same kernel as your target host which, in our case, will be the latest version of unRAID.  Linux experts, please chime in to say if this is mandatory.  If this is the case, and if 12.1 uses 2.6.24.5 as its standard kernel, then I would look at installing 12 and then upgrading to 2.6.24.4, if needed.  I orginally built my development environment before 12.1 had come out.  Unfortunately, I cannot remember if I had to upgrade my kernel.

 

Even performing a stock Slackware install with the right kernel and headers might not create a 100% suitable development environment.  Again, the linux experts would need to chime in.  What I'm thinking about here is that when the kernel is compiled, it has a name such as 2.6.24.5-smp or 2.6.24.4-unRAID.  I think the kernel headers might need to match this name in some way (I think it's called "version magics").  What I simply don't know is if VMware will complain if it is built on 2.6.24.4 and then run on 2.6.24.4-unRAID.

 

What I did was just try to make my development environment as similar to unRAID as possible.  I did this by following JoseTann's instructions found here: http://www.thetechguide.com/howto/unraid-on-hard-drive.html.  Even since I built my development environment, he has made things a lot simpler by providing a prebuilt kernel, so you don't have to go through the hassle of compiling your own.

 

I'd be happy to share my development environment, but it's about 4 gigs, so it would take a few days for the first downloaders to grab it via torrent.

Link to comment

Thanks musicmann,

 

I have seen JoseTann's page previously but didn't connect that it could also help build the proper development platform.  This makes sense and I'll follow those directions and see if I can get a little farther.  Thanks for the advice and quick response.

Link to comment

To make my virtual development environment very user friendly, I used two virtual hard drives.  I created a folder for my virtual machine, and I put the main virtual hard drive (i.e., the boot drive) in that folder along with all the other virtual machine configs and stuff.  I saved a backup copy of this original, pristine development environment.  The second hard drive (which I called "shared"), I placed outside of this folder.  With this setup, if I wanted to start with a clean slate, I could always make a new copy of the original (including its boot drive).  However, for any files that I wanted to keep, I could just move them to the second "shared" drive and they would still be there for the new clean-slate environment.  This saves a lot of time by not having to redownload software and to quickly test your package in a clean environment.

 

To do this, it's easier to define the two drive before you install Slackware because it will autmatically configure fstab to make the both auto-mount.  If you create the 2nd hard drive after you've already installed Slackware, you'll have to manually mount the 2nd hard drive when needed or edit fstab to make it auto-mount.

 

Two things to remember are 1) you cannot have the same drive open in multiple machines at the same time and 2) using snapshots will not work if different virtual machines are using the same drive.

Link to comment

Where do you mount this second drive? Is it for /home ?

 

I'm not that good with what's-supposed-to-be-where in linux.  I think when installing Slackware you can define the mount point for the second drive, and I literally had it create a mount point /shared

 

It was really done to cut down on having to redownload large install files and to cut down on the time that I was having to hit josetann's site

Link to comment

I am not sure what I am doing wrong but I downloaded the vmware and place it on /mnt/disk1 - untar it but when I try to install it I am getting "no such file or directory" ...Any idea?

 

I try this code

5.  Install VMware Server

   

Code:

cd vmware-server-distrib

./vmware-install.pl

 

I even try /vmware-install.pl or just vmware-install.pl

Link to comment

I am not sure what I am doing wrong but I downloaded the vmware and place it on /mnt/disk1 - untar it but when I try to install it I am getting "no such file or directory" ...Any idea?

 

 

Are you getting the "no such file or directory" when you do cd vmware-server-distrib or when you do ./vmware-install.pl?

 

 

Link to comment

OK, when I access the web management interface via http://tower:81 and then try to access the remote console, I consistently get an error stating:

 

     Error opening the remote virtual machine tower:443\16: 
      The host name could not be resolved.

 

I just tried accessing it by its IP address (in my case, http://192.168.0.21:81), and I was able to get into the remote console.  I tried this a couple days ago (multiple times) and I kept getting a message saying the request timed out.  I don't think I was doing anything else with my unRAID box at the time, so it seems kinda weird that it's working right now. 

 

When I have more time this weekend, I'm going to play around with it.  I'll try to create a new VM from scratch.

 

 

Link to comment

I am getting the "no such file or directory" when I do ./vmware-install.pl.

 

 

What is the output of the ls command?

I can see "vmware-install.pl@" when I issue ls command

 

I'm at /mnt/disk1/vmware-server-distrib# ./vmware-install.pl

and get this error -bash: ./vmware-install.pl: /usr/bin/perl: bad interpreter: No such file or directory

 

Link to comment

I'm at /mnt/disk1/vmware-server-distrib# ./vmware-install.pl

and get this error -bash: ./vmware-install.pl: /usr/bin/perl: bad interpreter: No such file or directory

 

It looks like the system cannot find /usr/bin/perl.  This would mean that either 1) perl isn't installed on your system or 2) it is installed to a location that vmware-install.pl was not expecting (i.e., not to /usr/bin/perl).  A couple of questions:

  • You are trying this installation on a development system as opposed to your actual unRAID, right?  unRAID does not contain a lot of the software needed to get the software compiled and running.
  • When creating your development system, did you start with a full install (including all the development tools)?  Good instructions for building a test system (which can still be done as a virtual machine would be either josetann's instructions (http://www.thetechguide.com/howto/unraid-on-hard-drive.html) or bubbaQ's instructions (http://lime-technology.com/wiki/index.php?title=Installing_unRAID_on_a_full_Slackware_distro).  I'm not sure if for development, the kernel version of the development system needs to match that of the target unRAID, so it might be best to use Slackware 12.0 instead of 12.1 and upgrade the kernel to 2.6.24.4 if needed.

 

Link to comment

I'm at /mnt/disk1/vmware-server-distrib# ./vmware-install.pl

and get this error -bash: ./vmware-install.pl: /usr/bin/perl: bad interpreter: No such file or directory

 

It looks like the system cannot find /usr/bin/perl.  This would mean that either 1) perl isn't installed on your system or 2) it is installed to a location that vmware-install.pl was not expecting (i.e., not to /usr/bin/perl).  A couple of questions:

  • You are trying this installation on a development system as opposed to your actual unRAID, right?  unRAID does not contain a lot of the software needed to get the software compiled and running.
  • When creating your development system, did you start with a full install (including all the development tools)?  Good instructions for building a test system (which can still be done as a virtual machine would be either josetann's instructions (http://www.thetechguide.com/howto/unraid-on-hard-drive.html) or bubbaQ's instructions (http://lime-technology.com/wiki/index.php?title=Installing_unRAID_on_a_full_Slackware_distro).  I'm not sure if for development, the kernel version of the development system needs to match that of the target unRAID, so it might be best to use Slackware 12.0 instead of 12.1 and upgrade the kernel to 2.6.24.4 if needed.

 

 

I actually miss undertood "Ability to run on stock unRAID". I guess i have to install unraid development first (a full slackware distro) right?

 

Thanks.

Link to comment

I guess i have to install unraid development first (a full slackware distro) right?

 

 

That is correct.  unRAID is a very slimmed down Slackware install, and it doesn't have the necessary components to compile software.  The instructions basically tell how to install VMware Server on a development machine and then how to copy all the needed files into a couple of packages that can then be loaded onto a stock unRAID.  If we were able to redistribute the software, this would be a very good approach because I'd be able to share the packages I build directly.  But since I can't, I can only give instructions telling how others can do the same thing.

 

There are two ways to reach the end goal.  You can build a package like I did, or you could run unRAID from a full Slackware distro like BubbaQ and josetann have done.  Their method makes installing very complex software pretty easy.

Link to comment

musicmann,

 

I've been working for weeks on this.  Took me a long time to finally figure out how to put together a development system in vm.  Then your directions for installing vmware were great -- thanks.

 

I think I have everything running properly on my unRAID box.  Here is the vmware status command to confirm --

root@Tower:/etc/pam.d# /etc/rc.d/init.d/vmware status
Bridged networking on /dev/vmnet0 is running
Host network detection is not running
Host-only networking on /dev/vmnet1 is running
DHCP server on /dev/vmnet1 is running
Host-only networking on /dev/vmnet8 is running
DHCP server on /dev/vmnet8 is running
NAT networking on /dev/vmnet8 is running
Module vmmon loaded
Module vmnet loaded
root@Tower:/etc/pam.d#

 

However, I cannot log into the console.  When VMware Infrastucture Web Access  console asks me for my Login Name and Password, I enter the same root  <password> combination I use to log into unRAID.  Then the console returns -- Login failed due to a bad username or password.

 

I've spent quiet a lot of time searching Google for the resolution to this problem but have not found the correct answer for this implementation.

 

Could I have installed the wrong PAM?  I used the one in your instructions called linux-pam-1.0.1-i486-1cjm.tgz (not the one in the code snippet linux-pam-0.99.10.0-i486-1gufo.tgz).  Is this my problem?

 

Any ideas would be greatly appreciated, I have a lot of time invested in this and feel like I'm very close to getting it to work.

 

Thanks!

Link to comment

I got similar results when I was using 0.98; interface looked good, but I couldn't log in.  Try 0.99 which is what I'm using.

 

I made a mistake when I referenced the 1.0.1 PAM.  When I realized that I had posted two different versions, I decided to try 1.0.1, but when I saw that it had been built on Slackware 12.1, I decided to just update the insturctions to reference only 0.99.

 

Let us know if it works.

Link to comment

That was it -- thanks so much!  It works great!  Anyone who is waiting for SlimServer or whatever, this is one way to get it running from unraid.

 

 

Sweet!  I'm glad it worked.  Like you said, you could pretty much get anything you want by installing it inside a VM.  So far the only issue I've seen is that I have to log into the numerical address (mine is 192.168.0.20) instead of tower to get the remote console to work.  This is probably an issue with my network, not necessarily the install.  I think I need to make my unRAID the "Local Master" now that it will be the only machine on 24x7.

 

 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.