Connecting to a Remote Server and Installing GNU Project Dependancies

Connecting to a Remote Server

Connecting to a remote server is an interesting process, we'll use
  1. ssh keys
  2. the ssh command
  3. -p, option to specify a port number
  4. -i, option to specify where to find your private key
Below you'll find the command modifications that will allow you to successfully connect.

Little Note: I'm using JSFiddle to embed some commands into this post. They will have the heading "Javascript" but they are actually UNIX command line commands!

You must first create a public and private key using ssh-keygen



For example, to connect to the Seneca Xerxes server (an X86_64 Server)



lajellu here is my username
ehl.cdot.systems is the name of the server that I'm trying to connect to

The above command can only be used to connect using a port, because the server is outside of the organization and the DNS server must use the port to resolve the hostname. Therefore, you must also add the port number when connecting to some servers with the ssh-copy-id command.

Again, to copy an id to the Seneca Xerxes server (an X86_64 Server)



This command appends your public key to the file ~/.ssh/authorized_keys on the remote server.
  • This file is always called authorized_keys and is usually placed in a hidden folder called ~/.ssh.
This allows you to sign in to the remote server and access your files remotely with a passphrase.

In the case of the Software Optimization and Portability class (SPO600), students do not need to run ssh-copy-id user@hl.cdot.systems because this was done on the server by an administrator.

To connect while inside of the organization's network (Eg. When you're connected to the internet inside the organization), use:



xerxes.internal.cdot.systems is the name of the server that I'm trying to connect to

You can then use the following command to create an alias to that command, so that you don't have to type the whole thing in every time. Notice the -i option, this is used to specify the path to your private key.



Installing glib

Description:

glib is an event loop and utility library for C programming. It contains functions that are handy for software portability problems, so it may be perfect for Software Portability purposes!

License : LGPLv2+
Arch : x86_64

Installation Process:

First I tried using apt-get, but no cigar:



Apt-get is not installed either!

Once I found a package manager that will work on Xerxes (yum), I tried the command again:



This time, the package wasn't found:

Redirecting to '/usr/bin/dnf install libglib2.0-dev' (see 'man yum2dnf')
No package libglib2.0-dev available.
Error: Unable to find a match.

So what if we try a more general version of glib? Also, notice that the command is redirecting to the command dnf. So what if we use dnf directly?:



It worked! Dependancies were resolved on its own, it did some tests after the installation and I got a success message!

Installing Autogen

Description:

tool to simplify creating and maintaining programs that contain large amounts of repetitious text. Especially if these blocks of text must be kept synchronized.

License : GPLv3+
Arch : x86_64

Installation Process:

This time the process was much simpler! Using the command as before:



The install took care of the dependancies and tests and gave me a success message!
To test that our installation worked, we can try:



And we get the man pages!

Comments

Popular Posts