Category: Uncategorized

Ubuntu 16.04 — Restore

This is my first post in the series for installing Ubuntu 16.04 on my Inspiron 17R laptop. In this step, I am mainly just restoring files and putting the data back after formatting the drive.

Series Navigation:

I didn’t take screenshots of the install process. I just basically accepted the defaults.

Restoring files

These are the directories that I restored.  Maybe it will give you an idea of things you may want to restore if you do the same thing.

  • ~/.ssh: The keys for my remote ssh connections — most important because of backuppc restoring
  • ~/Documents: This is where I put all my document files
  • ~/Pictures: I have Shotwell pointed at this directory, so it contains all the pictures from my cell phone and digital camera
  • ~/GideonTaylor: I keep my work files in a different directory
  • ~/.config/google-chrome: The settings for Chrome (extensions, bookmarks, etc)  (or, ~/.config/google-chrome-beta)
  • ~/.local/share/keyrings: My saved passwords
  • ~/.Skype: Skype history
  • ~/.remmina: The settings for my remote connections
  • ~/.local/share/shotwell: The settings and thumbnails for my photos
  • ~/.sword: The downloaded Bible files for Xiphos (and the underlying Sword library)
  • ~/.filezilla: The settings for my FTP connections
  • ~/.sqldeveloper: The connection settings for SQL developer
  • ~/.vim: stores the plugins installed in Gvim
  • ~/.vimrc: preferences for Gvim
  • /etc/NetworkManager/system-connections: this saves all of my wireless connections and VPN connections

My backup this time was located on an external USB drive.  I also had a BackupPC installation, but I didn’t restore a lot from it.  For smaller directories/files, just copy and paste works fine.  For larger directories, it was better to use grsync, which I installed from Ubuntu Software.

Shortcuts / Menu Entries

I had a couple of items that I had added to help me get to Vmware View machines.  Unfortunately, I didn’t remember the exact commandline.  Instead of looking it up again, I found that I could copy the .desktop files from the directory:

  • ~/.local/share/applications

BackupPC

I’m not going through the whole configuration of the server.  In this case, I just need it to connect and begin to back up the laptop after my install.

I checked the version of my apps:

$rsync --version
rsync version 3.1.1 protocol version 31

First, SSH is not enabled on Ubuntu 16.04 by default.  I had to install it:

sudo apt-get install openssh-server

Then, I generated the keys with this command (left the passphrase blank)

sudo ssh-keygen -t rsa

On my backup server, the backuppc user’s home directory is /var/lib/backuppc (you can confirm in the /etc/passwd file).  Using vi, I copied the contents of  /root/.ssh/id_rsa.pub on the client to /var/lib/backuppc/.ssh/known_hosts.  I’m not sure this step worked … on my test I had to remove the pistachio key (maybe I should have done that first):

ssh-keygen -f "/var/lib/backuppc/.ssh/known_hosts" -R pistachio

Then, I opened up /root/.ssh/authorized_keys2 on my laptop (client) and pasted the contents of /var/lib/backuppc/.ssh/id_rsa.pub from the server. In the end, Copy and Paste in a text editor wasn’t good enough. I had to scp the file across between the computers.

I verified security on the directory:

sudo chmod -R go-rwx /root/.ssh

Finally, I tested as the backuppc user on the backup server:

sudo su backuppc
ssh -l root pistachio whoami

To troubleshoot, I ran the server with debugging messages as root:

service ssh stop
/usr/sbin/sshd -d

Next time, I will configure Backup PC to backup the root .ssh directory to avoid having to reconfigure all of this.

Next Steps

If you want to follow along with my install process, you can check out the next post: Ubuntu 16.04 — Internet.

 

Resources

Ubuntu 15.04 — Programming

This is a continuation of my series of notes on my install of Ubuntu 15.04 on my laptop. The full list of posts is on this page. Previously, in the last post, I installed some media programs. In this post, I’ll install the programming tools that I use.

Gvim

I really like using the Gvim text editor for many editing tasks.  It’s not a full fledged IDE, but it’s great for single files. It’s a simple install from the Software Center — the vim-gnome package.

I have some plugins in my plugin directories and a customized configuration.  So, I restored my ~/.vim directory and /.vimrc.  I changed the directory for the backup files as well.  I have this in my .vimrc:

set bdir=~/.vimtmp
set directory=~/.vimtmp

So, I needed to create a ~/.vimtmp directory.

Git

I use Git for tracking my source code changes for a few projects. I don’t work in it that much, so it is nice to have a GUI for certain things. The git-cola package has done that nicely in the past. Installing it also installs the actual git application.

Brackets

I used WebUpd8’s repository to install Brackets:

sudo add-apt-repository ppa:webupd8team/brackets
sudo apt-get update
sudo apt-get install brackets

After installing the main application, I installed the “Brackets Git” plugin.

Node JS

I have been doing a bit of web programming, and Node JS seems to come up constantly. For example, everything wants to be installed with bower. I tried to use Bower PHP for a bit, but I quite fighting it. I’ll just install bower even if I don’t have it on my website. I shouldn’t be developing there anyway.

So, this installs: Node JS, the NPM installer, Bower, and Protractor

sudo apt-get install nodejs
sudo ln -s /usr/bin/nodejs /usr/bin/node
sudo apt-get install npm
sudo npm install bower -g
sudo npm install -g protractor

Note: For some reason, the package installs node as nodejs. I had to run the ln command to make a link to node. Bower wouldn’t work without that.

Here are the versions:

$ nodejs --version
v0.10.25
$ bower --version
1.5.2
$ protractor --version
Version 2.2.0

I found that version 0.12 is released, and there are some nice instructions for installing that. I didn’t go down that path.

Java

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
sudo apt-get install oracle-java8-installer

I installed the Oracle 8 installer because SQL Developer says it needs it.

Soap UI

Downloaded from the Soap UI website. Ran

sh SoapUI-x64-5.2.0.sh

Note: didn’t use sudo.

To test from the command-line:
/bin/sh “/home/skp/SmartBear/SoapUI-5.2.0/bin/SoapUI-5.2.0”

I got a core dump, so I tried this:

JAVA_TOOL_OPTIONS=""  /bin/sh "/home/skp/SmartBear/SoapUI-5.2.0/bin/SoapUI-5.2.0"

I updated my shortcut with MenuLibre to include that variable:
Installing Soap UI on Ubuntu 15.04

After that, it worked just fine.

JavaFX Scene Builder

Apparently, the Scene Builder from Oracle is gone. Instead Gluon has taken on maintaining a fork of the Scene Builder. They now offer a Linux Deb file on their Download Page.

Ubuntu Make: Eclipse & Android

Since the last time I installed Eclipse, Ubuntu has now come out with Ubuntu Make. So, I decided to give that a whirl.

I ran these commands

sudo apt-get install ubuntu-make
umake ide eclipse
umake android

The only question that it asked was the path where to install…
Choose installation path: /home/skp/tools/ide/eclipse
Choose installation path: /home/skp/tools/android/android-studio

I was a little disappointment. On the Eclipse Download page, it looks like the version is a little behind.
Eclipse Version

After opening Eclipse, I installed the plugins from Help > Install New Software. (using Luna – http://download.eclipse.org/releases/luna):

  • Collaboration > Command Line Interface for Java Implementation of Git
  • Collaboration > Eclipse Git Team Provider
  • Collaboration > Eclipse GitHub Integration with task focused interface
  • Collaboration > Java Implementation of Git
  • Collaboration > Java Implementation of Git – optional Java 7 libraries
  • Collaboration > Mylyn Context Connector: Eclipse IDE
  • Collaboration > Mylyn Context Connector: Java Development
  • Collaboration > Mylyn Context Connector: Plug-in Development
  • Collaboration > Mylyn Task List
  • Collaboration > Mylyn Task-Focused Interface
  • Collaboration > Mylyn Versions Connector: Git
  • General Purpose Tools > Swing Designer
  • General Purpose Tools > Swing Designer Documentation
  • Web, XML, Java EE and OSGi Enterprise Development > Eclipse Web Developer Tools
  • Web, XML, Java EE and OSGi Enterprise Development > Eclipse Java Web Developer Tools
  • Web, XML, Java EE and OSGi Enterprise Development > Eclipse XML Editors and Tools
  • Web, XML, Java EE and OSGi Enterprise Development > Javascript Development Tools
  • Web, XML, Java EE and OSGi Enterprise Development > PHP Development Tools

Finally, to make developing with Java FX easier, I installed the e(fx)clipse plugin for Eclipse.  Their install page is pretty good and detailed.

I just added two sites to Window > Preferences under Install/Update > Available Software:

  • http://download.eclipse.org/efxclipse/updates-released/2.1.0/site
  • http://download.eclipse.org/modeling/tmf/xtext/updates/composite/releases/
  • http://download.eclipse.org/efxclipse/updates-released/2.0.0/site
  • http://download.eclipse.org/efxclipse/updates-released/1.2.0/site

On the Install Dialog (Help > Install Software), I picked e(fx)clipse – install > e(fx)clipse – IDE.  Then, I just let it do it’s thing.

I can’t get the 2.0 or the 2.1 versions to install in Luna. I had to install the 1.2 version.

SQL Developer

I downloaded SQL Developer from Oracle’s SQL Developer website.  They are on version 4.1.1.19.59 now.  I downloaded the “Other Platforms” version.  Then, I used the sqldeveloper-package program to install it.

sudo apt-get install sqldeveloper-package
make-sqldeveloper-package -b output \
       sqldeveloper*.zip
sudo dpkg -i sqldeveloper*all.deb

Note: on my first attempt, I got this error:

dpkg-checkbuilddeps: Unmet build dependencies: debhelper (>= 7)

I fixed that with:

sudo apt-get install build-essential

Meld

Meld is an important tool for comparing text files. I use it mostly for comparing source code or programming-related projects, so it fell under this category. It’s an easy install from the Software Center.

Resources

SmartBear Community: Soapui not starting on Ubuntu 15.04
WebUpd8: FIX MISSING LIBGCRYPT11 CAUSING SPOTIFY, BRACKETS AND OTHER APPS NOT TO WORK / INSTALL IN UBUNTU 15.04
Stackoverflow: Where is the JavaFX scene builder gone?
WebUpd8: UBUNTU DEVELOPER TOOLS CENTER RENAMED TO UBUNTU MAKE, SEES NEW RELEASE
Ubuntu Wiki: ubuntu-make
StackOverflow: Installing Bower on Ubuntu

Installing Ubuntu 15.04

Labor Day Weekend made for the perfect time to get my laptop updated.  I know Ubuntu 15.04 (Vivid Vervet) has been out for a while, but I am just now getting it installed.  Here are my notes.

Installation

I didn’t take screenshots of all of the steps.  They were pretty straight forward.  The one thing that I did change was the partitioning.  I read that having the Swap partition on the SSD drive will wear it out, so I went ahead and moved it onto the regular drive.

So, here’s what it looked like:

Install_003

BackupPC

In previous installs, I was using Duplicity/Deja Dup.  This time, I have been using BackupPC for backups.  It is a nice centralized solution that de-dups and compresses nicely.

Now, to restore… The BackupPC FAQ: SSH Setup is a good place to start.

To troubleshoot, I went to the backuppc server, and ran:

$ ssh pistachio
ssh: connect to host pistachio port 22: Connection refused

That tells me that the ssh server is not installed. So, I ran:

sudo apt-get install ssh

On the BackupPC server, I had already run the keygen. So, I just had to open the id_rsa.pub file and copy it’s contents.

sudo vi /var/lib/backuppc/.ssh/id_rsa.pub

Then, on my laptop, I pasted it onto the end of the authorized_keys2 files (which, in my case I had to create):

$ sudo mkdir /root/.ssh
$ sudo vi /root/.ssh/authorized_keys2

Next, I tried to connect to my laptop of the backuppc user on the server:

sudo su - backuppc
sudo ssh root@pistachio

I had to run:

ssh-keygen -f "/var/lib/backuppc/.ssh/known_hosts" -R pistachio

List of Restores

These are the directories that I restored from my backup:

  • ~/Documents: This is where I put all my document files
  • ~/Pictures: I have Shotwell pointed at this directory, so it contains all the pictures from my cell phone and digital camera
  • ~/GideonTaylor: I keep my work files in a different directory
  • ~/app: This has all of my programming stuff (“application development”)
  • ~/.config/google-chrome-beta: The settings for Chrome (extensions, bookmarks, etc)
  • ~/.local/share/keyrings: My saved passwords, see below for more information
  • ~/.Skype: Skype history
  • ~/.remmina: The settings for my remote connections
  • ~/.ssh: The keys for my remote ssh connections
  • ~/.local/share/shotwell: The settings and thumbnails for my photos
  • ~/.sword: The downloaded Bible files for Xiphos (and the underlying Sword library)
  • ~/.filezilla: The settings for my FTP connections
  • ~/.sqldeveloper: The connection settings for SQL developer
  • ~/.vim: stores the plugins installed in Gvim
  • ~/.vimrc: preferences for Gvim  (for my settings, I also had to create the ~/.vimtmp directory)
  • /etc/NetworkManager/system-connections: this saves all of my wireless connections and VPN connections
  • ~/.VirtualBox: The settings for my virtual machines

Next

From here, you can see all the steps that I took in this series, or the next step is the Utilities and Configuration.

Resources