Category Archives: Computing

Installing Crashplan 4.5 on Headless Ubuntu Server with X11 Forwarding

Running Crashplan on a Headless Server is Officially Unsupported

A while ago my Crashplan installation stopped working (probably became out of date) and I’ve recently migrated the rest of my services and applications over to Docker containers, which I have been very happy with. So I didn’t anticipate too much trouble when trying to move Crashplan into a docker container as well, however I was running into difficulties because Crashplan requires the GUI for configuration. The xeor/crashplan (https://hub.docker.com/r/xeor/crashplan/) image seemed like the perfect fit, it would make Crashplan Desktop accessible via VNC. However after fiddling with this, it turns out Crashplan has made some updates which has broken this image.

And it’s clearly not a priority for them to properly document because I couldn’t even manage to get their published (year old) instructions (https://support.code42.com/CrashPlan/4/Configuring/Using_CrashPlan_On_A_Headless_Computer) working. Even if I managed to get this working, the workflow was not ideal, requiring port forwarding and copying data from the server to local PC that seems to change every time the service restarts – a much more kludgy process than I remember going through last time, which only involved updating the IP on a Windows PC to point to the remote headless machine.

Recommendation: Use X11 Forwarding

X11 forwarding is simple to setup and it allows Linux GUI windows from a remote machine that you are SSH’d into to be displayed on your local machine. I went ahead and installed Crashplan natively on my Ubuntu server and followed the steps below to get it installed on Ubuntu and configured remotely from my Windows machine.

Install Crashplan

  1. Download the latest Crashplan Linux installer
    wget http://download.code42.com/installs/linux/install/CrashPlan/CrashPlan_4.5.0_Linux.tgz
  2. Unzip the package
    tar -xvf CrashPlan_4.5.0_Linux.tgz
  3. Go into the installation directory and run the install command
    cd crashplan-install/
    sudo ./install.sh
  4. Follow the installation steps and proceed as you wish. I used the default installation options.

Configure Ubuntu Server for X11 Forwarding

  1. Install xterm if it’s not already installed
    sudo apt-get install xterm

Note: If at the end of this guide you are having any troubles, there are a ton of guides on setting up X11 so I suggest reviewing those to make sure the rest of your Ubuntu SSH settings are configured properly.

Configure Windows PC for X11 Forwarding

  1. You will first need an SSH client, for this I suggest Putty (http://www.putty.org/)
  2. You will also need an X Windows System. There are also multiple options but I used Xming (http://sourceforge.net/projects/xming/)
  3. Open Putty and fill in the Hostname/IP of your server and make sure SSH and PORT 22 are specified.
  4. Next, go to the Connection > SSH > X11 option in the Category tree and check “Enable X11 forwarding”x11 forwarding for Crashplan Headless Server
  5. Then hit open and login to your machine.
  6. You can test that X11 forwarding is working by opening an application like firefox or just go straight ahead and launch the Crashplan UI by typing `CrashPlanDesktop`. Wait a few seconds and the welcome screen should pop up.

Configure Crashplan Normally

Now that you have the Crashplan UI displayed, you can login normally and specify the directories that you want to backup. You’ll now have the same level of control that you’d typically have from a PC with a GUI.

During my research I encountered a lot of people trying to get Crashplan working with Unraid as well, maybe one day Crashplan will develop a WebUI for those of us running servers or NAS’s, but if you haven’t chosen a cloud backup provider already, I’d suggest looking at others that are more Linux-friendly. Until then, its a simple enough process to launch Xming, SSH into my server and run a single command.

Mautic Review - Free Open Source Marketing Automation

Mautic Review & Overview – Open Source Marketing Automation Tool

What is Marketing Automation

If you are in the marketing field you have probably heard of the term marketing automation, as there are now a handful of software tools which pride themselves on their marketing automation prowess. If not, you have seen the work of marketing automation systems first hand as a consumer, whether you knew it or not.

Marketing automation is the use of software to automate the management and execution of marketing campaigns, including customer segmentation, scheduling, and tracking, in a way that is more efficient and more effective than what is possible manually. These systems provide a seamless omni-channel experience for prospects as they convert into customers across the various interactions they have with your brand via website, email, social media, etc.

Mautic Overview – Free as in Speech

Mautic is a new marketing automation platform which has taken a very different approach from some of its competitors like Hubspot, Marketo, and Pardot. The Mautic codebase is open-source, released under the GPL, and available on GitHub. Their commercial company goes by the name of Allyde and makes their money via their “Allyde Cloud” hosting, services, and support.

A free hosted version of Mautic is available though Allyde’s cloud at Mautic.com where you can sign up for free and receive a subdomain xxx.mautic.com to get your feet wet with marketing automation. This free version is good for a limited number of contacts, with cheap plans available for larger databases. Mautic originally had a tiered pricing plan based on the number of contacts stored (similar to their competition), but I just noticed that they updated their website with a new, refreshing pricing model – a Pro plan which includes unlimited contacts for only $12/month! As they mention, who knows how many contacts you plan to have going into this.

Of course you can also opt to host the Mautic code on your own server without any limitations. This enables you to run Mautic on your own domain (which can also be done with Mautic Pro) and have your landing pages accessible at the domain of your choosing (rather than at xxx.mautic.com). There are also some other settings that are not configurable on the hosted version, such as the interval for certain cron jobs which are required to update the smart lists, enroll contacts in campaigns, etc. which all happen at a preset interval.

Mautic Review

Mautic Landing Page Designer

Mautic’s drag and drop landing page designer has a responsive design. Alternatively the landing page can be developed using custom HTML. Mautic also allows you to create multiple landing page variants and specify the percentage of traffic to route to each variant to perform some A/B testing and determine which ones perform the best.

Mautic Landing Page Designer

Forms

Mautic makes it easy to add and track custom lead fields and has a pretty simple form builder which includes some build in form validation and HTML5 inputs on fields such as email, date, etc. with user-configurable error messages. Mautic also allows you to assign class attributes to each field so they can be manually styled easily if desired.

You also have granular control over the actions which occur when the form is submitted, which includes making updates to the lead, adjusting their lead score points, modifying the lead’s list, downloading assets, sending emails, and more.

Lead Management

Smart Lists contain all contacts which meet the specified filters. These lists help quickly organize leads into easy-to-manage groups and are the basis for enrolling contacts into a workflow, since campaigns are associated to a specific list.

Contacts can be enrolled in one or many lists and can be modified manually or automatically through the campaign builder’s logic. However, the filters are not as flexible as Hubspot’s and are only limited to contact properties.

The updates to the smart lists which reevaluate all contacts against the filters happens at specified intervals set via a cron job running on the host machine. I am not sure how long this process takes in the hosted version, but if you are hosting your own instance you can configure appropriately.

Mautic Smart List

Email Marketing

Mautic’s Email functionality is very similar to what they provide for landing pages, with the ability to develop in HTML or use their drag and drop Email Builder. They have A/B testing available and have the ability to embed various lead fields into the email to personalize the message.

Mautic Email Builder

Campaigns

Mautic has a really nice drag and drop campaign creator which makes it very easy to visualize the campaign you are creating. Conditional items such as whether an email was opened are clearly marked in green and you simply drag the dots to the conditions or actions that you want to connect. Personally I prefer this representation over Hubspot’s.Mautic Campaign Builder

Analyics / Reporting

Mautic comes with a pretty basic dashboard which provides some information about visitors, emails, and a list of the top pages, downloaded assets, and most popular campaigns that leads are enrolled in.

Mautic Dashboard

However, while not the prettiest or the most user friendly, their report creator provides enables reporting on any field within the system. It may take some brief tinkering to find what you are looking for, but ultimately you should be able to produce what you need.

Mautic Report Creator

Mautic’s reports can be in either graphical or tabular format.

Mautic Report

Integrations

Mautic has an impressive list of integrations, with 39 at the moment and seems to have a focus on continuing to add additional services. With support for standard CRMs like Salesforce and Microsoft Dynamics, and Zoho CRM they have also included support for their open-source CRM friends Sugar CRM, vTiger.

Email being one of the major aspects of marketing automation, they have integrated with a wide range of email providers including – Amazon Simple Email Service (SES), Mailchimp, Mailjet, Mandrill, and Sendgrid. Mautic also has plugins for WordPress, Drupal, and Joomla, to get up and running quickly without having to touch any code.

Additionally, while not nearly as powerful as some other cloud integration tools, Mautic has an integration with IFTTT (If This Then That) which allows for automation of some basic tasks across a variety of web applications for which they don’t already have pre-built integrations.

Mautic Review Conclusions

After using Mautic briefly I was very impressed with the level of polish and the amount of features and functionality that has been included for free, especially for software that is normally associated with monthly license fees in the hundreds to thousands of dollars. While the level of more advanced functionality does not match that of the competition, they only launched a couple months ago and all of the core functionalities of a marketing automation system – capturing, tracking and nurturing leads is fulfilled by Mautic.

Overall, I think Mautic provides a great introduction to marketing automation and will be a great fit for small businesses, bloggers, etc. looking to add some intelligence to their lead nurturing efforts without investing in thousands of dollars per year on some of the other marketing automation systems, while larger businesses who can afford the price tag can benefit from the additional functionality offered by other solutions if it is implemented properly and with enough resources.

Additionally, from what I have seen in the Mautic community so far, I am impressed with the level of engagement by the developers and how they have been very helpful and forthcoming about what is coming next. Looking forward to v1.1.

Have you tried Mautic? Leave your review in the comments.

Microsoft Ergonomic Keyboard 4000 – Zoom to Scroll

Have you ever wished that the zoom slider on your Microsoft Natural Ergonomic 4000 Keyboard could be used to scroll instead scroll? I surely found the zoom button placed right in the middle of my keyboard to be a major waste of prime real estate and set out to re-purpose it for scrolling.

First, make sure that you install the lastest version of the Microsoft software (found here). Not only will this installation allow you to make the adjustment being discussed, but it will also allow you to customize the actions for the rest of the shortcut keys. For example, I reassigned the email button to open a webpage right to gmail.com instead of having it open Outlook (default behavior).

Guide to change zoom to scroll… http://www.pchenry.com/Home/tabid/36/EntryID/77/Default.aspx

Alternative to Google Apps for Business – Zoho

I am working on a little project with a friend over at BrightVape.com so I went to sign up for a Google Apps for Business account in order to get both of us some business email addresses. For those of you who don’t know, this service allows businesses to use the Google Apps suite of products with their custom domain name instead of @gmail.com.

To my surprise Google has stopped offering their free 10 user accounts back in December and I began looking for hosted alternatives as I did not want to configure a mail-server on my VPS hosting.

After doing some research I ended up signing up with Zoho. In addition to email, Zoho offers a large number of business products ranging from bug tracking to recruiting. However, their free email service is significantly more limiting than the Google suite as it is limited to 3 user accounts and does not provide any funcionality that is included with their other tools. In comparison Google had offered Mail, Calendar, Talk, etc.  Since I was looking for email accounts I was all set and moved forward with signing up.

I found the signup process a lot more confusing that it should have been. First you need to verify that you own the domain through modifying CNAME records or uploading a file – pretty standard. But then I was first asked to create an account name and was informed this was going to be used as my email address, but there was oddly a min of 6 characters and it said my name had already been taken. I was perplexed for a moment and then figured out I was not actually creating my email address here, I was actually creating a Zoho username.

Once that was set I had my account set up and was able to simply add my 3 users and be done. When logging in to retrieve your email, you have to enter that Zoho account username that was created as part of the signup process, but after I have learned this it has been pretty smooth.

The email UI for Zoho is a pretty decent looking and quick for webmail but it is surely no GMail. That being said, I’m pretty disappointed that Google has shut down their service, but I can’t complain too much since I use a ton of free Google products every day.

Installing Xen or Xen Cloud Platform from USB

When downloading Xen or Xen Cloud Platform you get an iso which I initially tried loading on my usb stick using unetbootin which is my typical go-to for linux installations. However, I was having troubles and wasn’t able to boot into the installation.

I found the following directions from darkod on the Ubuntu forums here which enabled me to successfully complete the installation.

1. Open the usb stick and in the root rename syslinux.cfg to syslinux.old
2. In the folder boot/isolinux, find and rename isolinux.bin to syslinux.bin, isolinux.cfg to syslinux.cfg
3. Go back and rename the whole folder isolinux to syslinux

Boot VMWare Workstation from USB using Plop

I found the guide below when trying to boot a VMWare Workstation virtual machine from a USB stick with a bootable image of XenServer that I created using the great utility UNetbootin.

VMWare does not have an option in the BIOS to boot from a USB device so in order to accomplish that I followed the instructions below by Vladan Seget which explains how the use the Plop boot manager.

01. Download boot manager from PLoP
02. Use the Iso in the boot manager as a boot device to boot your VM
03. Add an USB adapter to your VM (if not already done).
04. Insert your USB stick with ESXi 4 installed in it.
05. When your VM boots from that ISO, just select USB from the menu.

How to Enable mod_rewrite with Apache2 on Ubuntu

When I want to setup a webserver on a fresh virtual machine for testing I use the standard command to install of Apache2, php5, and mysql:

sudo apt-get install apache2 php5-mysql libapache2-mod-php5 mysql-server phpmyadmin

I am currently playing around with CakePHP which requires mod_rewrite to be enabled. In order to turn this on you need to enter the following commands from any location in the terminal:

sudo a2enmod rewrite


And then just restart the apache2 service:

sudo service apache2 restart

PS3 Media Server on Ubuntu

I have my fileserver set up to run a variety of tasks since it is always on. One of the things I like is the ability to stream a variety of videos to my PS3. Natively the PS3 has limited file support for streaming so transcoding using a great open source program called PS3 Media Server is necessary.

A member of the PS3 Media Server forum, Paissad put together this script below (that is no longer hosted on the forums, so I have a mirror below) that goes through the entire installation process.

The only configuration that needs to be done is going to /etc/pms-linux/PMS.conf and specifying what folders you want to share.

Here you can find the script that goes into the init.d folder to auto-start PS3 MS upon bootup if it is not placed there automatically.

Installing Ventrilo Server on Ubuntu 10.10

I found a great guide to installing Ventrilo on Ubuntu 9.10, I followed the steps and it worked perfectly on my installation of 10.10 as well. It fills in all the gaps that official ventrilo installation guide has.

Source: Brandon Williams @ http://rocketeerbkw.com/content/installing-ventrilo-server-ubuntu-910-karmic-koala

If you’re running a 64bit version of Ubuntu, you must install the 32bit libs

# sudo apt-get install ia32-libs

Create a user for ventrilo to run under

# sudo useradd ventrilo

Download the linux version to your home directory (or another temp directory of your choosing), extract the files and change current directory to what we just extracted

# tar -xzf ventrilo_srv-3.0.3-Linux-i386.tar.gz
# cd ventsrv

Move the vent binaries to /usr/bin and make them executable

# sudo mv ventsrv/ventrilo_srv /usr/bin/ventrilo_srv
# sudo mv ventsrv/ventrilo_status /usr/bin/ventrilo_status
# sudo chmod +x /usr/bin/ventrilo_srv /usr/bin/ventrilo_status

Make a directory for the config files and then move them there.
Give ventrilo user access

# sudo mkdir /etc/ventrilo
# sudo mv ventrilo_srv.ini /etc/ventrilo/ventrilo_srv.ini
# sudo chown -R ventrilo:ventrilo /etc/ventrilo

Make vent start when computer boots

  • Create the init.d script
  • Copy the contents of  this init.d script to that file
  • Make it executable and add it to boot sequence

    # sudo nano /etc/init.d/ventrilo
    # sudo chmod 755 /etc/init.d/ventrilo
    # sudo update-rc.d ventrilo defaults

Test to see if it works

# sudo /etc/init.d/ventrilo start

You should see something like the following, where 21626 will be the process ID of vent server

* Starting VOIP server ventrilo
21626: old priority 0, new priority -5
[ OK ]

MediaPortal

MediaPortal on Windows Home Server

MediaPortal is a PVR/media application that handled TV recording as well as media management like Windows Media Center. It is a free open source program that can be found here.

I initially thought it would be very simple to install the TV Server portion of the applicaiton on my WHS in order to handle the recording and streaming, but unfortunately WHS is not supported by MediaPortal and there are a few hoops to jump through in order to get this to work.

I downloaded the latest version of MediaPlayer and when trying to install it said that WHS (recognized as Windows Server 2003 SP2) was not supported, but lets you continue with the installation anyway. I selected ‘advanced installation’ so that I can just install the ‘Dedicated TV-Server (master)’ component and not the MediaPortal client application. During the installation it says you need to install Windows Media Player 11, since WMP 11 is not supported by WHS you will need to follow the directions below in order to successfully install it.

To install Media Player 11:

  1. Download wmp11-windowsxp-x86-enu.exe
  2. Open this file in an extraction program such as WinZip or 7-Zip (I used 7-Zip)
  3. Extract the wmfdist11.exe and wmp11.exe and place them in separate folders on the C: drive of your WHS (not on a share). (this step was adapted from instructions I was following elsewhere – I’m not certain of the separate folders requirement, but I did it anyway)
  4. From the WHS admin desktop, right-click the wmfdist11.exe file and click properties.
  5. Go to the Compatibility tab and ticket the “Run this program in compatibility mode for:” box, and select Windows XP from the drop down.
  6. Click OK, and run the wmfdisk11.exe. Choose not to restart at the end.
  7. Repeat 4-7 for the wmp11.exe

Source: Jay Schlackman

After this is complete, run through the MediaPortal installer, if you have any issues check the ones that I ran into (below) for my solutions.  Once installation is complete, launch the “TV-Server Configuration” and now you can follow the official guide for setting up a MediaPortal TV-Server or various other guide that you can find online.

I will post back with my thoughts on MediaPortal after I have some time to play around with it.

Issues along the way

Failed to startup tvserviceSystem.Net.Sockets.SocketException

At the end of the installation or when I try to launch the TV-Server configuration, I got the following lengthy error message (my PC’s IP address is blacked out). I tried a number of suggestions that I found online but to no avail. After a number of hours troubleshooting this issue, I decided to revert to version 1.0.1 which can be found on their SourceForge page and everything worked fine.

Failed to startup tvserviceSystem.Net.Sockets.SocketException

Your platform is not supported by MediaPortal

Whenever you try to launch the application you will get an error message saying that the platform is not supported, but you can ignore this message.

mySQL – set password error: 1

Since I ran into some issues getting Media Portal installed on WHS I ended up going through the install/uninstall process a number of times. While doing this I ran into an error message when installing MySQL that said “mySQL – set password error: 1” and quit the installation. In order to fix this you must uninstall MySQL from the Control Panel>Add/Remove Programs and the navigate to the C:\Program Files\MySQL directory and delete it. After this, reboot your PC and try the installation again and it should work just fine. If you are still having issues, in the advanced installation you can choose too install Microsoft SQL Express 2005 as your database instead of MySQL to circumvent this message.

WHS v2 Vail

From what I have read MediaPortal should install without much hassle on the newer version of WHS codename Vail. The beta is out for WHSv2, but I do not have the extra hardware to run those tests at this time.