A copy of a virtual machine I test ZM in available

Forum for questions and support relating to the 1.27.x releases only.
linuxsense
Posts: 374
Joined: Wed Nov 07, 2007 1:59 am
Location: Huntington Beach, California
Contact:

A copy of a virtual machine I test ZM in available

Post by linuxsense »

I have a virtual machine image of Ubuntu 14.04 with the latest ZoneMinder built from source that includes a good version of ffmpeg, x264, libvlc, libjpeg-turbo, etc. Its a pretty minimal Ubuntu installation but its ready to run, just add your cameras. The source is included in /usr/local/src. If this might help some of you with your own builds, great, but it should also work if you just want to use it as-is. If you want to play with it you can get it here:

http://linuxtracker.org/index.php?page= ... ccd9e80fb2
Biggus
Posts: 96
Joined: Mon Nov 18, 2013 9:15 am

Re: A copy of a virtual machine I test ZM in available

Post by Biggus »

Hi thanks for providing the copy of the VM, however when im deploying the OVF file im getting the error the OVF file isn't vaild and cannot be deployed, as incorrect namespace http://schemas.dmtf.org/ovf/envelope/

<?xml version="1.0"?>
<Envelope ovf:version="2.0" xml:lang="en-US" xmlns="http://schemas.dmtf.org/ovf/envelope/2" xmlns:ovf="http://schemas.dmtf.org/ovf/envelope/2" xmlns:rasd="http://schemas.dmtf.org/wbem/wscim/1/ci ... ettingData" xmlns:vssd="http://schemas.dmtf.org/wbem/wscim/1/ci ... ettingData" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:vbox="http://www.virtualbox.org/ovf/machine" xmlns:epasd="http://schemas.dmtf.org/wbem/wscim/1/ci ... ngData.xsd" xmlns:sasd="http://schemas.dmtf.org/wbem/wscim/1/ci ... ngData.xsd">
<References>
<File ovf:href="ubuntu1404-zm1271-ffmpeg-x264-libvlc-jpeg-turbo-disk1.vmdk" ovf:id="file1"/>
</References>
<DiskSection>
<Info>List of the virtual disks used in the package</Info>
<Disk ovf:capacity="31330762752" ovf:diskId="vmdisk2" ovf:fileRef="file1" ovf:format="http://www.vmware.com/interfaces/specif ... mOptimized" vbox:uuid="3cae3dd3-87b9-405e-a5dc-8067718e373a"/>
</DiskSection>
<NetworkSection>
<Info>Logical networks used in the package</Info>
<Network ovf:name="Bridged">
<Description>Logical network used by this appliance.</Description>
</Network>
</NetworkSection>
<VirtualSystem ovf:id="Ubuntu 14.04 ZM 1.27.1 ffmpeg libvlc jpeg-turbo">
<Info>A virtual machine</Info>
<OperatingSystemSection ovf:id="94">
<Info>The kind of installed guest operating system</Info>
<Description>Ubuntu_64</Description>
<vbox:OSType ovf:required="false">Ubuntu_64</vbox:OSType>
</OperatingSystemSection>
<VirtualHardwareSection>
<Info>Virtual hardware requirements for a virtual machine</Info>
<System>
<vssd:ElementName>Virtual Hardware Family</vssd:ElementName>
<vssd:InstanceID>0</vssd:InstanceID>
<vssd:VirtualSystemIdentifier>Ubuntu 14.04 ZM 1.27.1 ffmpeg libvlc jpeg-turbo</vssd:VirtualSystemIdentifier>
<vssd:VirtualSystemType>virtualbox-2.2</vssd:VirtualSystemType>
</System>
<Item>
<rasd:Caption>4 virtual CPU</rasd:Caption>
<rasd:Description>Number of virtual CPUs</rasd:Description>
<rasd:InstanceID>1</rasd:InstanceID>
<rasd:ResourceType>3</rasd:ResourceType>
<rasd:VirtualQuantity>4</rasd:VirtualQuantity>
</Item>
<Item>
<rasd:AllocationUnits>MegaBytes</rasd:AllocationUnits>
<rasd:Caption>4096 MB of memory</rasd:Caption>
<rasd:Description>Memory Size</rasd:Description>
<rasd:InstanceID>2</rasd:InstanceID>
<rasd:ResourceType>4</rasd:ResourceType>
<rasd:VirtualQuantity>4096</rasd:VirtualQuantity>
</Item>
<Item>
<rasd:Address>0</rasd:Address>
<rasd:Caption>ideController0</rasd:Caption>
<rasd:Description>IDE Controller</rasd:Description>
<rasd:InstanceID>3</rasd:InstanceID>
<rasd:ResourceSubType>PIIX4</rasd:ResourceSubType>
<rasd:ResourceType>5</rasd:ResourceType>
</Item>
<Item>
<rasd:Address>1</rasd:Address>
<rasd:Caption>ideController1</rasd:Caption>
<rasd:Description>IDE Controller</rasd:Description>
<rasd:InstanceID>4</rasd:InstanceID>
<rasd:ResourceSubType>PIIX4</rasd:ResourceSubType>
<rasd:ResourceType>5</rasd:ResourceType>
</Item>
<Item>
<rasd:Address>0</rasd:Address>
<rasd:Caption>sataController0</rasd:Caption>
<rasd:Description>SATA Controller</rasd:Description>
<rasd:InstanceID>5</rasd:InstanceID>
<rasd:ResourceSubType>AHCI</rasd:ResourceSubType>
<rasd:ResourceType>20</rasd:ResourceType>
</Item>
<Item>
<rasd:Address>0</rasd:Address>
<rasd:Caption>usb</rasd:Caption>
<rasd:Description>USB Controller</rasd:Description>
<rasd:InstanceID>6</rasd:InstanceID>
<rasd:ResourceType>23</rasd:ResourceType>
</Item>
<StorageItem>
<sasd:AddressOnParent>0</sasd:AddressOnParent>
<sasd:AutomaticAllocation>true</sasd:AutomaticAllocation>
<sasd:Caption>cdrom1</sasd:Caption>
<sasd:Description>CD-ROM Drive</sasd:Description>
<sasd:InstanceID>7</sasd:InstanceID>
<sasd:Parent>4</sasd:Parent>
<sasd:ResourceType>15</sasd:ResourceType>
</StorageItem>
<StorageItem>
<sasd:AddressOnParent>0</sasd:AddressOnParent>
<sasd:Caption>disk2</sasd:Caption>
<sasd:Description>Disk Image</sasd:Description>
<sasd:HostResource>/disk/vmdisk2</sasd:HostResource>
<sasd:InstanceID>8</sasd:InstanceID>
<sasd:Parent>5</sasd:Parent>
<sasd:ResourceType>17</sasd:ResourceType>
</StorageItem>
<EthernetPortItem>
<epasd:AutomaticAllocation>true</epasd:AutomaticAllocation>
<epasd:Caption>Ethernet adapter on 'Bridged'</epasd:Caption>
<epasd:Connection>Bridged</epasd:Connection>
<epasd:InstanceID>9</epasd:InstanceID>
<epasd:ResourceSubType>E1000</epasd:ResourceSubType>
<epasd:ResourceType>10</epasd:ResourceType>
</EthernetPortItem>
</VirtualHardwareSection>
<vbox:Machine ovf:required="false" version="1.12-linux" uuid="{52f97260-7baf-4c91-bd85-fbdc1dd90793}" name="Ubuntu 14.04 ZM 1.27.1 ffmpeg libvlc jpeg-turbo" OSType="Ubuntu_64" snapshotFolder="Snapshots" lastStateChange="2014-07-02T20:05:25Z">
<ovf:Info>Complete VirtualBox machine configuration in VirtualBox format</ovf:Info>
<ExtraData>
<ExtraDataItem name="GUI/LastCloseAction" value="PowerOff"/>
<ExtraDataItem name="GUI/LastGuestSizeHint" value="640,480"/>
<ExtraDataItem name="GUI/LastNormalWindowPosition" value="3095,554,640,502"/>
<ExtraDataItem name="GUI/MiniToolBarAlignment" value="bottom"/>
<ExtraDataItem name="GUI/SaveMountedAtRuntime" value="yes"/>
<ExtraDataItem name="GUI/ShowMiniToolBar" value="yes"/>
</ExtraData>
<Hardware version="2">
<CPU count="4" hotplug="false">
<HardwareVirtEx enabled="true"/>
<HardwareVirtExNestedPaging enabled="true"/>
<HardwareVirtExVPID enabled="true"/>
<HardwareVirtExUX enabled="true"/>
<PAE enabled="true"/>
<HardwareVirtExLargePages enabled="false"/>
<HardwareVirtForce enabled="false"/>
</CPU>
<Memory RAMSize="4096" PageFusion="false"/>
<HID Pointing="USBTablet" Keyboard="PS2Keyboard"/>
<HPET enabled="false"/>
<Chipset type="PIIX3"/>
<Boot>
<Order position="1" device="Floppy"/>
<Order position="2" device="DVD"/>
<Order position="3" device="HardDisk"/>
<Order position="4" device="None"/>
</Boot>
<Display VRAMSize="12" monitorCount="1" accelerate3D="false" accelerate2DVideo="false"/>
<VideoCapture/>
<RemoteDisplay enabled="true" authType="Null" authTimeout="5000">
<VRDEProperties>
<Property name="TCP/Ports" value="3389"/>
</VRDEProperties>
</RemoteDisplay>
<BIOS>
<ACPI enabled="true"/>
<IOAPIC enabled="true"/>
<Logo fadeIn="true" fadeOut="true" displayTime="0"/>
<BootMenu mode="MessageAndMenu"/>
<TimeOffset value="0"/>
<PXEDebug enabled="false"/>
</BIOS>
<USBController enabled="true" enabledEhci="true"/>
<Network>
<Adapter slot="0" enabled="true" MACAddress="080027AC0FD2" cable="true" speed="0" type="82540EM">
<DisabledModes>
<NAT>
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
</NAT>
<InternalNetwork name="intnet"/>
<NATNetwork name="NatNetwork"/>
</DisabledModes>
<BridgedInterface name="eth0"/>
</Adapter>
<Adapter slot="1" enabled="false" MACAddress="080027B24F98" cable="true" speed="0" type="82540EM">
<DisabledModes>
<NAT>
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
</NAT>
</DisabledModes>
</Adapter>
<Adapter slot="2" enabled="false" MACAddress="08002793111A" cable="true" speed="0" type="82540EM">
<DisabledModes>
<NAT>
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
</NAT>
</DisabledModes>
</Adapter>
<Adapter slot="3" enabled="false" MACAddress="08002773A163" cable="true" speed="0" type="82540EM">
<DisabledModes>
<NAT>
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
</NAT>
</DisabledModes>
</Adapter>
<Adapter slot="4" enabled="false" MACAddress="08002756ADFD" cable="true" speed="0" type="82540EM">
<DisabledModes>
<NAT>
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
</NAT>
</DisabledModes>
</Adapter>
<Adapter slot="5" enabled="false" MACAddress="08002797AE4C" cable="true" speed="0" type="82540EM">
<DisabledModes>
<NAT>
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
</NAT>
</DisabledModes>
</Adapter>
<Adapter slot="6" enabled="false" MACAddress="0800273B9FFD" cable="true" speed="0" type="82540EM">
<DisabledModes>
<NAT>
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
</NAT>
</DisabledModes>
</Adapter>
<Adapter slot="7" enabled="false" MACAddress="080027A17BD8" cable="true" speed="0" type="82540EM">
<DisabledModes>
<NAT>
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
</NAT>
</DisabledModes>
</Adapter>
</Network>
<UART>
<Port slot="0" enabled="false" IOBase="0x3f8" IRQ="4" hostMode="Disconnected"/>
<Port slot="1" enabled="false" IOBase="0x2f8" IRQ="3" hostMode="Disconnected"/>
</UART>
<LPT>
<Port slot="0" enabled="false" IOBase="0x378" IRQ="7"/>
<Port slot="1" enabled="false" IOBase="0x378" IRQ="7"/>
</LPT>
<AudioAdapter controller="AC97" driver="Pulse" enabled="false"/>
<RTC localOrUTC="UTC"/>
<SharedFolders/>
<Clipboard mode="Disabled"/>
<DragAndDrop mode="Disabled"/>
<IO>
<IoCache enabled="true" size="5"/>
<BandwidthGroups/>
</IO>
<HostPci>
<Devices/>
</HostPci>
<EmulatedUSB>
<CardReader enabled="false"/>
</EmulatedUSB>
<Guest memoryBalloonSize="0"/>
<GuestProperties>
<GuestProperty name="/VirtualBox/HostInfo/GUI/LanguageID" value="en_US" timestamp="1404330983066741000" flags=""/>
</GuestProperties>
</Hardware>
<StorageControllers>
<StorageController name="IDE" type="PIIX4" PortCount="2" useHostIOCache="true" Bootable="true">
<AttachedDevice passthrough="false" type="DVD" port="1" device="0"/>
</StorageController>
<StorageController name="SATA" type="AHCI" PortCount="1" useHostIOCache="false" Bootable="true" IDE0MasterEmulationPort="0" IDE0SlaveEmulationPort="1" IDE1MasterEmulationPort="2" IDE1SlaveEmulationPort="3">
<AttachedDevice type="HardDisk" port="0" device="0">
<Image uuid="{3cae3dd3-87b9-405e-a5dc-8067718e373a}"/>
</AttachedDevice>
</StorageController>
</StorageControllers>
</vbox:Machine>
</VirtualSystem>
</Envelope>
linuxsense
Posts: 374
Joined: Wed Nov 07, 2007 1:59 am
Location: Huntington Beach, California
Contact:

Re: A copy of a virtual machine I test ZM in available

Post by linuxsense »

Thanks for the info, I will check it out.
User avatar
knight-of-ni
Posts: 2404
Joined: Thu Oct 18, 2007 1:55 pm
Location: Shiloh, IL

Re: A copy of a virtual machine I test ZM in available

Post by knight-of-ni »

Note that vmware is much more picky with the xml contents of ovf files than virtualbox.

I'm guessing based on a couple of clues in the previous message. If you are using vmware to deploy an ovf made from virtualbox then you will likely have to edit the ovf by hand and adjust the virtual hardware sections to something compatible. I had a similar, unrelated issue and found that this is common. There are several blogs out there documenting what steps need to be taken when going from virtualbox -> vmware.

On another note, I'm seeding the torrent now....
Last edited by knight-of-ni on Wed Jul 16, 2014 5:30 pm, edited 2 times in total.
Visit my blog for ZoneMinder related projects using the Raspberry Pi, Orange Pi, Odroid, and the ESP8266
All of these can be found at https://zoneminder.blogspot.com/
linuxsense
Posts: 374
Joined: Wed Nov 07, 2007 1:59 am
Location: Huntington Beach, California
Contact:

Re: A copy of a virtual machine I test ZM in available

Post by linuxsense »

Agreed on vmware being picky on the imports, that is one of the reasons I have not used it in years.
linuxsense
Posts: 374
Joined: Wed Nov 07, 2007 1:59 am
Location: Huntington Beach, California
Contact:

Re: A copy of a virtual machine I test ZM in available

Post by linuxsense »

I had a few minutes so I looked into this. It seems that vmware does not care for any exported format that I try. I am sure I can work it out if enough people want it but I would just suggest using virtualbox to run this. The price is right and it works very well.
User avatar
knight-of-ni
Posts: 2404
Joined: Thu Oct 18, 2007 1:55 pm
Location: Shiloh, IL

Re: A copy of a virtual machine I test ZM in available

Post by knight-of-ni »

I found this article to be very helpful at converting ovf files into something that vmware will deploy:
http://www.datos.asia/2013/04/09/migrat ... -1-vmware/
Visit my blog for ZoneMinder related projects using the Raspberry Pi, Orange Pi, Odroid, and the ESP8266
All of these can be found at https://zoneminder.blogspot.com/
linuxsense
Posts: 374
Joined: Wed Nov 07, 2007 1:59 am
Location: Huntington Beach, California
Contact:

Re: A copy of a virtual machine I test ZM in available

Post by linuxsense »

knnniggett wrote:I found this article to be very helpful at converting ovf files into something that vmware will deploy:
http://www.datos.asia/2013/04/09/migrat ... -1-vmware/
Nice find, thanks for sharing.
tsu2
Posts: 5
Joined: Wed Jul 16, 2014 3:00 pm

Re: A copy of a virtual machine I test ZM in available

Post by tsu2 »

After also verifying won't run in VMware, tried deploying in VBox (latest and updated).
Fails with the error
FATAL: Could not read from the boot medium! System Halted.

I assume is not related to the following modifications I made to the Guest Properties
- Disabled USB2 (required if VBox extensions not installed)
- Disabled Remote Display (required if VBox extensions not installed)
- Decreased RAM from 4GB to 2GB
- Decreased CPU processors from 4 to 2.

IMO when you create a distributable virtual appliance, you should not be configuring such a big machine. Should configure for either minimal or "recommended" size and allow the User to increase resources depending on available and desired. And, you shouldn't enable optional and unnecessary features like support for USB2 and the Remote Desktop.

You also need to modify your Guest according to the above before you create your distributable so Users don't have to do those on their own..

Besides, there is practically no benefit for running more than one virtual CPU no matter the number of physical CPUs and cores.
tsu2
Posts: 5
Joined: Wed Jul 16, 2014 3:00 pm

Re: A copy of a virtual machine I test ZM in available

Post by tsu2 »

I re-installed in VBox and again found no disk file.
Did you do something weird like configure your disk using a USB instead of IDE or SATA controller?!

If you did that, you need to fix that before you can distribute.
tsu2
Posts: 5
Joined: Wed Jul 16, 2014 3:00 pm

Re: A copy of a virtual machine I test ZM in available

Post by tsu2 »

A suggestion...
Going back about 8 yrs ago, I created and distributed a custom deployment before there were things like OVF. In fact, I find OVF fairly useless and unnecessary.

All you need is to
- Build your appliance using a suitable disk format. If you want it to be immediately usable on multiple virtual technologies, you'll probably want to select the raw disk format. Note that this is not the same as pointing to the bare metal file system. You can select a disk format more optimized for specific technologies, but would then have to be converted for unsupported virtualization technologies. Or, you can build multiple versions of your appliance using different disk formats.
- Create a FAQ file to go with your appliance. Include things like configured user accounts, a brief description and possibly some install guides.
- You can optionally include a configuration file for the technology (eg vmx or vbox) but it would only be good for that technology. It's not that big a deal to include or exclude a config file though, because when a new Guest is created using your disk file, the User can specify those settings just like creating a new machine from scratch.

So, in the end you would tar up only maybe a couple items for distribution
- A diskfile
- A FAQ

All IMO.
tsu2
Posts: 5
Joined: Wed Jul 16, 2014 3:00 pm

Re: A copy of a virtual machine I test ZM in available

Post by tsu2 »

A little more follow up...

I extracted the diskfile by tarring,
And since I found a vmdk, I mounted in VMware instead of VBox(using a SCSI controller).

I then discovered that various parts of the hard drive (Assume hd0 is one of the partitions on the disk) are read-only. I've never run into this on a Linux distro before, there is something really unusual when the system doesn't have permissions to write to disk. Maybe you have UEFI enabled? If that's the case, I'm pretty sure you have to disable it if you're going to distribute the system... You have to turn off boot security (that should not require any explanation, does it?)

Despite this very troubling issue, it does proceed eventually to a login screen.
Of course, because no documentation was included with the appliance, without an auto login I'm stuck at that point.
Biggus
Posts: 96
Joined: Mon Nov 18, 2013 9:15 am

Re: A copy of a virtual machine I test ZM in available

Post by Biggus »

Yes I was trying it in VMware.
linuxsense
Posts: 374
Joined: Wed Nov 07, 2007 1:59 am
Location: Huntington Beach, California
Contact:

Re: A copy of a virtual machine I test ZM in available

Post by linuxsense »

tsu2 wrote:A little more follow up...

I extracted the diskfile by tarring,
And since I found a vmdk, I mounted in VMware instead of VBox(using a SCSI controller).

I then discovered that various parts of the hard drive (Assume hd0 is one of the partitions on the disk) are read-only. I've never run into this on a Linux distro before, there is something really unusual when the system doesn't have permissions to write to disk. Maybe you have UEFI enabled? If that's the case, I'm pretty sure you have to disable it if you're going to distribute the system... You have to turn off boot security (that should not require any explanation, does it?)

Despite this very troubling issue, it does proceed eventually to a login screen.
Of course, because no documentation was included with the appliance, without an auto login I'm stuck at that point.
This is not a 'project', its just a tool that I shared as I thought it might be helpful to those that have been unable to figure out how to build ZM with all the goodies on 14.04. I have used this image on several different servers that are running the latest virtualbox without any issue when importing as an appliance and then adjusting the hardware. As for the 'read only' issue...when importing as an appliance in virtualbox all disk mounts are correct and functional.

No documentation? I suggest you take a closer look at the "README.txt" included in the archive.

Here, I'll paste a copy in case you lost it:
This is a copy of a VirtualBox VM that I use to test different versions of ZoneMinder. It is a fairly minimal installation of Ubuntu 14.04 with updates as of July 2 2014 and the current git code of ZoneMinder on the same date. It has a good version of ffmpeg with x264 built from source and versions of libvlc from the Videolan 'nightly' repo that also seem to work very well with the current ZM code. Since the vlc libs are built nightly and might break the system on an upgrade they have been 'held' by apt so you they will remain at their current version.

To use just import into VirtualBox, make any changes that your host requires (number of CPU cores, RAM, etc) and fire it up. Its a headless config but I do have Webmin installed to simplify a few different tasks. The root password is "r00t", I suggest you change it right away and add your own account. The ffmpeg, x264, libjpeg-turbo, and ZoneMinder source is in /usr/local/src/.

Have fun, and dont bug me if this burns down your house or eats all the food from your kitchen. Its "As is" and provided for testing.
linuxsense
Posts: 374
Joined: Wed Nov 07, 2007 1:59 am
Location: Huntington Beach, California
Contact:

Re: A copy of a virtual machine I test ZM in available

Post by linuxsense »

Biggus wrote:Yes I was trying it in VMware.
If you are unable to give it a shot in virtualbox let me know and I'll get a VMware version together for you to try out.
Locked