Set up Ubuntu 16.04 with xfce and VNC server

I was installing vCenter on my ESXi server.  Since this was my first time installing vCenter, I decided that installing via UI was a far better choice than install from the CLI.  But then that meant I needed to get a UI on to the Ubuntu VM I had stood up to do the install from.  So this is what I did.

  1. Install the xfce4 and tightvnc packages.  Xfce is a desktop environment for Unix and Unix-like OS’s.  We will use Xfce, but you could use a different desktop environment if you want.
    sudo apt install xfce4 xfce4-goodies tightvncserver
  2. Validate that the server can be started and create an access password for view and control (you can also setup a separate password for view only)
    vncserver
  3. Configure vncserver to always use Xfce
    The configurations for vncserver are kept in the ~/.vnc/xstartup file.  Out of the box, it looks like this:

    #!/bin/sh
    
    xrdb $HOME/.Xresources
    xsetroot -solid grey
    #x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
    #x-window-manager &
    # Fix to make GNOME work
    export XKL_XMODMAP_DISABLE=1
    /etc/X11/Xsession

    We need to change this so it uses Xfce instead of GNOME.  You could edit the xstartup file directly (not recommended) or make a back up of it and start fresh with:

    #!/bin/bash
    
    xrdb $HOME/.Xresources
    startxfce4 &
  4. Make the startup script executable
    sudo chmod +x ~/.vnc/xstartup
  5. Start VNC server
    vncserver
  6. Test from a Mac OS X machine.
    1. Open an ssh session with port forwarding
      ssh -L 5901:127.0.0.1:5901 -N -f -l username server_ip_address
    2. Open Screen Sharing
      1. From Safari or from Spotlight, type:
        vnc://server_ip_address:5901
    3. You should see something like this:
  7. Daemonize the VNC Server
    1. Create the service
      sudo vi /etc/systemd/system/vncserver@.service

      Add the following to it.  Replace $user with your username

      [Unit]
      Description=Start TightVNC server at startup
      After=syslog.target network.target
      
      [Service]
      Type=forking
      User=$user
      PAMName=login
      PIDFile=/home/$user/.vnc/%H:%i.pid
      ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1
      ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x800 :%i
      ExecStop=/usr/bin/vncserver -kill :%i
      
      [Install]
      WantedBy=multi-user.target
    2. Register the service with the system
      sudo systemctl daemon-reload
      sudo systemctl enable vncserver@1.service
    3. Kill any currently running instances
      vncserver -kill :1
    4. Start the service
      sudo systemctl start vncserver@1
References:
  1. https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-vnc-on-ubuntu-16-04

Come together

I love the Beatles.  Always have, always will.  Come together is one of the greatest songs ever.

But I don’t like politics.  And according to my friends, since I didn’t vote, technically I have abdicated my right to complain about the situation America is in.

They may be right, they may be wrong.  Who knows.  This will likely be the only post I ever write that is somewhat political in nature and I’m not really sorry for it.

I didn’t vote for a number of reasons, one of which is that while it is my right to vote, I also believe it is equally my right to not vote.  Another reason why I didn’t vote is because I couldn’t bring myself to vote for either candidate.  To my eyes, both candidates were the willing and also unwilling figureheads of a lot of hate and vitriol.  I was really appalled at it all and decided that instead of being forced to pick one side of hate and vitriol over another, I would simply not pick.  Yes, I could have picked the Libertarian party.  But apparently I was not alone in not voting.  Lowest voter turn out in 20 years.  That’s 5 elections.  That’s a lot of time.

I am just tired of the finger pointing and the typecasting and the rhetoric.  But is my silence just silent finger pointing?  I suppose one could look at it that way if they wanted to.  But you have to want to.  I don’t.  I’m just silent because I’m tired of the noise.  Judge me if you want.  And, I’m sure there will be plenty who do.  It’s easy to judge isn’t it?  Its easy to categorize and then categorically dismiss people.  I appreciate what Colbert said about us liking the taste of the poison.  I find that apropos.  We’ve all been a victim of judgement at some point in our lives, some more than others.  And when one has been a victim of that it makes that person want to return in kind.  Eye for an eye after all, right?

Or does it have to be?  Look, I’m not saying that I consistently demonstrate it.  I can feel the struggle within me to give the finger to the kid who was walking across the street that gave me the finger first.  And in that instance, I gave into my want for revenge.  I just wanted to get him back somehow for the injustice he supposedly caused me.  I wanted to turn around and harass him all the way home.  Make him feel fear.  But what does that do?  What did he really do after all?  Gave me the finger.  So what?  What does that matter?  It matters because I feel weak by not defending myself.

What ever happened to grace, forgiveness, and trust?

I will be a willing participant in constructive conversations.  I will be willing to offer the grace to listen to people’s opinions that I find offensive and hope that same grace is offered back.  I don’t know where things went wrong, but I suspect it really doesn’t matter.  In the end, it’s the future we have to come together on, not the past.

This may be a fool’s hope, but I really do hope we start to learn to show each other love and grace.  And I’m willing to start.

Hello world!

So this is my new blog.  I’ve been off the grid for like 10 years.  My old site which was hosted on geocities (yeah, remember that?) has been gone now for some time and is probably not a good modern representation.

Anyways, why did I start this?  After all, I’m relatively happy, stable and content.  Who wants to read crap like that when you have facebook to have everyone’s happiness thrust in your face?

I suppose the ultimate question is why does anyone write blogs?  Basically, I have a bunch of stuff I want to write about and if there are people out there who find my writings useful or helpful or entertaining, then that’s great but ultimately a blog is for me.  It is a cathartic process that exercises that all so important skill: communication to an invisible and unknown and generic audience.

So, here is my “hello world!”