Ubuntu & HP Microserver Setup Guide

pocketmonkey

Active Member
Ubuntu HP Microserver Guide

I hope this will be useful to other people who are also new to the world of media servers and Ubuntu. After spending 3 painful weeks trying to get my new Microserver set up I felt the need to bring all this information into one place in the hope that it will save someone else a bit of time! Obviously not all the information will apply to everyone, this is just based on my current setup running on my HP N54L..

If you have any questions, comments or corrections please feel free to post.


Some basic terminology,

The “dock” is the bar down the left hand side of the Ubuntu desktop with short cuts to selected programs and folders.

The “dash” is the top short cut on the dock and can be used to search for installed programs and other files.

The “USC” is the Ubuntu Software Centre and is the orange icon with a capital “A” that can be found in the dock. It is usually the easiest way to install and uninstall commonly used software

A “Terminal”, once you know what your doing, is the easiest way to edit files buried within the operating system. It can be found by typing “terminal” into the dash.

“NFS” is the file sharing system used by most Linux computers and is not easily accessible to Windows computers.

“Samba” is a file sharing system accessible from Linux and Windows computers.



Installing Ubuntu, auto-login and using a static IP address

I'm assuming that you have successfully installed Ubuntu on your pc and are able to access the desktop, I'm using Ubuntu 14.04 which I first installed off of a USB stick. If you're using Windows you just need to download the Ubuntu ISO and then use a program like Universal USB Installer to write the ISO to a USB stick to create a bootable USB stick.
If you have a DVD drive or your pc doesn't support booting from a USB drive then you can also burn the ISO straight to a disc.

The install process is mostly automatic and should take roughly 30mins. To begin with I would choose a password that is easy to remember/type as your going to need to use it a lot while your setting up your pc. Ubuntu can be configured to auto-login by changing the setting in User Accounts (search for "User Accounts" in the dash).

It is also quite likely that you will want to give your pc a fixed IP address if your router allows it. This will make it much easier to find the pc over the network. This should be easy enough to find by looking to the top right of the desktop and clicking on the network icon right up in the corner.

Choose your IP address and enter the default gateway and DNS server addresses.



Mounting Hard Drives

The following process will have you editing the Fstab. Always take care while doing this as any errors created can prevent the pc from booting. Always create a backup before you start, and keep your installation disc or USB stick handy.


Once you're onto your desktop, in order to access files stored on your hard drives they first need to be mounted. When using the Ubuntu desktop this is done automatically when you click on them, however they may not auto-mount when accessing from another computer. To mount them and then share them over the network it may be necessary to auto-mount the drives at startup.


The UUID must be used to identify the drive and can be found using blkid. The UUID of the drive is a unique identification number and should never change so this is the best way of pointing to the files that you want.

Open a terminal and type in:


sudo blkid


This will give you a list of your drives and their UUID's. Find the one that you want to use and then edit the fstab by typing this into the terminal:


gksudo gedit /etc/fstab


gksudo must be installed first for this to work, alternatively you can avoid this by typing in:


sudo nano /etc/fstab


be warned though, the nano text editor is a little less intuitive for beginners.
This example is for NTFS drives that are required to be read/write


UUID=(UUID of Drive) /media/(User)/(Folder) ntfs-3g defaults,windows_names,locale=en_GB.utf8 0 0


In the Fstab using the guide above your entry will look something like this,


UUID=96BA5328BA5303E1 /media/tom/DriveA1 ntfs-3g defaults,windows_names,locale=en_GB.utf8 0 0



Sharing Folders


To share the the folders on the network it is then necessary to mount them in the home directory where they become property of the user rather than root.


/media/(User)/(Folder) /home/(User)/(Folder that you want to be shared on network)/ none bind 0 0


Again in the Fstab your entry should look something like this,



/media/tom/DriveA1/Movies /home/tom/Movies/ none bind 0 0



You can see that some of this entry is similar to the previous entry (/media/tom/DriveA1). The folder DriveA1 is my 1TB drive with a UUID of 96BA5328BA5303E1 and is mounted in /media/tom. I have then chosen to share the Movies folder that is stored on DriveA1 (/media/tom/DriveA1/Movies). This is then shared by binding it to a folder in the home directory (/home/tom/Movies). This way I have control over which folders on my hard drives are shared on the network. I have repeated this for TV, Music, etc.


Sharing over NFS or Samba are the most useful options. It is possible to share a directory over both NFS and Samba but its is not advisable due to potential issues with permissions. I ignored this warning and have mine up and running with NFS shares for my Raspberry Pi to access and Samba shares for everything else.




NFS



NFS Kernel Server must first be installed and can be found in the USC. The nfs options built in to Nautilus (the Ubuntu file browser) are a little hit and miss (right click a folder and choose local network share to access them).

Instead it is easier to edit the exports files using:


gksudo gedit /etc/exports


Sharing the folder from the last example, this line must be added to the file:


/home/tom/Movies 192.168.1.0/24(rw,nohide,insecure,no_subtree_check,async)


where the first part is the path of the folder I want to share followed by the network the pc is on, note that this is not the address of the pc itself.

You can add as many folders in your home directory as you need this way and you can edit the exports file any time you want to change them.



Samba


Its is possible to configure samba from a GUI program and in my case this seemed to work more consistently. Both parts are available through the USC.

First install "Samba (SMB/CIFS file,print, and login server for Unix)" to enable sharing

and then install the program "Samba (Create, modify, and delete samba shares)" to edit your shares through a GUI.

The folders can then be selected and shared using the Samba program.



Turning the pc into a media player


At this point the pc was setup and sharing media files around my house. However I also wanted to use it as a media player in my lounge. The Hp Microserver by default is not able to output sound and video output is by VGA only. I chose a Zotac Geforce 210 Synergy Edition 1GB DDR3 as it came with a low profile bracket, it only draws a small amount of power from the low power PCI-E socket and the heatsink comfortably fit in the already cramped case. This will output 5.1 audio through HDMI. In Sound Settings there are only a few options including balance, fade, subwoofer out level and a choice of stereo or 5.1 LPCM audio. I chose to continue using the default Pulseaudio despite the lack of bitstreaming capability as my AV Receiver does not support HD audio. It is possible to disable Pulseaudio and just use ALSA if you need your movie soundtracks bitstreamed instead.




Useful software



XBMC/Kodi


This is straightforward to install from the USC. To run it at boot you can either log out and then sign in straight to Kodi or more convenient for me, add it to the start up programs with this added in the command box (open the dash and search for Startup Applications)


/usr/bin/kodi -d 5 –standalone -fs



X11VNC Server


For remote desktop access. This is slightly more difficult to start at boot.

These instructions have been taken from MrGrey1 on Ubuntu forums


After installing X11VNC Server from the USC set the VNC password (saved in ~/.vnc/passwd):


x11vnc -storepasswd


Copy and paste password file to /etc/directory:


sudo cp ~/.vnc/passwd /etc/x11vnc.pass


Create and edit the conf file /etc/init/x11vnc.conf:


sudo gedit /etc/init/x11vnc.conf


paste in:



start on login-session-start
script
x11vnc -xkb -noxrecord -noxfixes -noxdamage -display :0 -auth /var/run/lightdm/root/:0 -forever -bg -o /var/log/x11vnc.log -rfbauth /etc/x11vnc.pass -rfbport 5900 -localhost
end script


The original instructions can be found here: ubuntuforums.org/showthread.php?t=2039022



SSH Server


Accessing the pc over SSH may sometimes be useful too especially if there is no monitor attached. The basic text interface can be confusing for first time users but there are plenty of guides out there if you need to do something specific. In my case that was mainly for replacing a particular file which I had edited causing Ubuntu to boot with only a black screen.


Using the USC search for openssh-server and install. A little more information can be found here: ubuntuhandbook.org/index.php/2014/04/enable-ssh-ubuntu-14-04-trusty-tahr/



Tweak tool


Download tweak tool from USC to alter what happens when you press the power button (among other things).



Optional Software



Steam


Steam can be installed from the USC and if required can be run during startup by editing the preferences within Steam itself. In my case I have used an add on to allow me to start Steam in big picture mode from within Kodi when I wish to stream games from my gaming pc to my lounge. The required files for the Steam Launcher can be found at forum.kodi.tv/showthread.php?tid=157499



Nvidia Drivers


If you go down the Nvidia route then you can find the latest drivers on the Nvidia website. The basic drivers installed with Ubuntu are perfectly fine but if you want to output anything fancy on your screen the you're going to need these. They will also allow you to save the EDID information from your TV/Monitor/Amp if you have booting issues.

Saving your EDID file

If you're using the HDMI output and you want the pc to start without a monitor turned on, or with no monitor attached then it will probably be necessary to obtain the EDID information for your setup and save it in a file on your pc. The full instructions for this process are available at kodi.wiki/view/Creating_and_using_edid.bin_via_xorg.conf

Make sure you ignore step 2 of “Generating & using edid.bin” unless you really need it. I didnt read it properly and it gave me a black screen instead of a desktop every time I created a file with it!


I followed the instructions and ended up entering these commands into a terminal:


cp /etc/X11/xorg.conf /etc/X11/xorg.conf.bak


This backs up your xorg.conf file, then:


cd ~

sudo X -verbose 6 > ~/xlog.txt 2>&1



This process need cancelling after a few second with Ctrl+C. Check the output that you have just generated. The xlog.txt file should be located in your home folder (In my case, /home/tom/xlog.txt)

If it says “fatal server error” or something similar follow an additional set of instructions in the troubleshooting section below before continuing.

If your xlog.txt file has worked correctly you should be able to determine which Assigned Display Device DFP number is assigned to your main video output. It should be something like DFP-0 or DFP-1. Next in a terminal enter:



sudo nvidia-xconfig --extract-edids-from-file=/home/xbmc/xlog.txt –extract-edids-output-file=/etc/X11/edid.bin



This will transfer the contents of your xlog.txt to a an EDID file. Next edit the xorg.conf file by typing:


sudo gedit /etc/X11/xorg.conf


Add these lines to “Section “Device”” where the ? in DFP-? is replaced with the number you discovered earlier:


Option "ConnectedMonitor" "DFP-?"
Option "CustomEDID" "DFP-?:/etc/X11/edid.bin"
Option "IgnoreEDID" "false"
Option "UseEDID" "true"



The Kodi wiki provides more in-depth instructions so you should have a read through of that first, as getting it wrong can lead to problems getting to your desktop.



Gparted Partition Manager


This is useful for managing partitions, formatting, and labelling, all through a GUI interface. You can also use it to find the UUID or each of your hard drives.



To do list



MySQLserver


For Kodi to use a centrally stored library file that will be used by all computers running Kodi on the network.



Backup


Use Clonezilla to backup the boot drive.



LIRC


To enable all of the buttons on my remote to work with Kodi.



Troubleshooting




Problems creating your xlog.txt file


If you had trouble creating your xlog.txt file, and find that you just generate errors instead of EDID information you may have to kill the desktop and use an old fashioned terminal.



Press Ctrl+Alt+F1 to go to a full screen terminal.


Login with your username and then input your password.


Type:


sudo service /etc/init.d/lightdm stop


Now repeat the lines from earlier:


cd ~

sudo X -verbose 6 > ~/xlog.txt 2>&1



Press Ctrl+C after a few seconds to stop this.


Type:


sudo service /etc/init.d/lightdm start


This starts up your desktop service again, and press Ctrl+Alt+F7 to return to it. You may have to restart to get it all working again.



Problems booting to the desktop


If you're using an HP Microserver remember to unplug your USB stick with your Ubuntu installer on it once you've installed Ubuntu, otherwise it will keep trying to boot from the USB stick.


Keep hold of the USB/disc until tweaking you pc is complete as the live boot feature is quite helpful for undoing any errors you have made. If you have any problems getting to your desktop try to boot up Ubuntu Live and you can reverse any changes you have made to folders/files. Note that when running Ubuntu Live you may have to open a terminal and use the command “gksudo nautilus” to open up a file browser with root privileges before you can delete/replace any files.


If you need to access the GRUB boot loader to get at the recovery options during boot repeatedly press shift while the pc is starting up. It should show up right after the cpu/motherboard has finished initializing.
 

mickevh

Distinguished Member
If one use Windows client devices, xRDP is an alternate to VNC for remote GUI access. It allows Windows machines to connect using MSTSC which I believe ships in all versions of Windows since XP thereby negating the need to install a VNC client if one doesn't want to.
 
Last edited:

The latest video from AVForums

Podcast: Sony A90J Thoughts, madVR Processor & Sonus faber Lumina II Reviews + Movie & TV roundup
Subscribe to our YouTube channel
Support AVForums with Patreon

Top Bottom