Globus Connect Personal enables you to share and transfer files to and from your Linux laptop or desktop computer — even if it’s behind a firewall. Watch our Globus Connect Personal tutorial or follow the steps below to turn your personal computer into a Globus Endpoint.

Prerequisites

If you want to use the graphical interface, you must have Tcl/Tk installed. Without Tcl/Tk, you can still use Globus Connect Personal, but you will only be able to use it in command-line mode.

Globus Connect Personal’s graphical setup tool does not require Tcl/Tk. Only the interface for configuring and managing an installation once it is setup has this limitation.

You can install Tcl/Tk using these instructions:

$ sudo apt-get install tk tcllib
$ sudo yum install tk tcllib
Note

If you encounter an error about tcllib not being available, it can be found here and installed manually: http://www.tcl.tk/software/tcllib/
$ sudo zypper install tk tcllib

Installation

  1. Download Globus Connect Personal

    gcp download linux

    You can also download Globus Connect Personal directly using wget or curl:

    $ wget https://downloads.globus.org/globus-connect-personal/linux/stable/globusconnectpersonal-latest.tgz
  2. Extract the files from the downloaded tarball.

    $ tar xzf globusconnectpersonal-latest.tgz
    # this will produce a versioned globusconnectpersonal directory
    # replace `x.y.z` in the line below with the version number you see
    $ cd globusconnectpersonal-x.y.z
  3. Start Globus Connect Personal. Since this is the first time you are running it, you must complete setup before you can run the full application.

    $ ./globusconnectpersonal

    This will interactively guide you through the setup process.

  4. Follow the on-screen install instructions. If a graphical environment is detected, a window will appear, like the one shown below

    gcp linux 2

    Otherwise, you will be given text prompts for the relevant information.

    Tip

    You can control globusconnectpersonal with command-line options. Use ./globusconnectpersonal -h to show detailed help text.

    There are additional options for performing setup, specifically, which can be viewed by running ./globusconnectpersonal -setup --help for more details.

  5. At the end of the installation, the setup will exit with a message stating it was successfully set up and the main Globus Connect Personal application will launch

    Note

    The configuration for Globus Connect Personal is stored in ~/.globusonline. A unique host certificate is stored here and must be kept private. By default, it is not readable by any other user.

Running

Once the installation is complete, you may prefer to start the application in the background:

# you can also run with 'nohup' to make it easier to detach Globus Connect
# Personal from your shell
$ ./globusconnectpersonal &

click the 'Connect' button to establish connection to Globus. You should see the status reflected below.

gcp linux 3

The green light indicates that Globus Connect Personal is running properly and is connected to Globus. You may minimize or hide this status window once Globus Connect Personal has connected successfully.

Running with no GUI

If you want to start Globus Connect Personal, but avoid use of the Tcl/Tk GUI, you can explicitly start up in command-line mode with the -start flag, as in:

$ ./globusconnectpersonal -start &

Running with -debug

If you have any problems connecting, you may start the application using the -debug option, as in ./globusconnectpersonal -start -debug, to get more information.

Seeing the Status of Globus Connect Personal

The status of Globus Connect Personal running in the background can be seen using the -status or -trace options. The -trace option provides more detailed information:

$ ./globusconnectpersonal -status
Globus Online: connected
Transfer Status: idle
$ ./globusconnectpersonal -trace
gridftp 1
#gsissh connected
#gridftp 1
#gsissh connected
#gridftp 1
[...]

More Options

You can see more detailed options for running Globus Connect Personal with

$ ./globusconnectpersonal -h

This will display help-text including options for relocating the configuration directory, pausing and un-pausing Globus Connect Personal, and stopping (shutting down) any running Globus Connect Personal process.

Removing Globus Connect Personal

  1. Shut down Globus Connect Personal using the stop command:

    $ ./globusconnectpersonal -stop
  2. Delete the old Globus Connect Personal install directory.

  3. Delete the old Globus Connect Personal config with this command:

    $ rm -r ~/.globusonline/
  4. Globus Connect Personal is now removed from your system.


Using Globus Connect Personal with the Globus CLI

Warning

Globus Connect Personal should not be confused with the Globus CLI. They are separate applications — while they may both be useful to you, globusconnectpersonal and globus commands are distinct.

There is one command in the Globus CLI which interfaces directly with Globus Connect Personal: globus endpoint local-id. By default, this command shows the ID of a Globus Connect Personal endpoint whose configuration is located in the default directory.

The result is that globus endpoint local-id is useful for substitution in subshells. For example, here’s an ls command run against the current Globus Connect Personal:

# this will only work if Globus Connect Personal is connected
$ globus ls "$(globus endpoint local-id)"

Running Globus Connect Personal as a Systemd User Unit

Many Linux distributions have moved to systemd as their preferred init system. One of the benefits this offers is the ability to run services which belong to particular users under per-user systemd instances.

A great deal of excellent documentation on this subject can be found in The Arch Linux Wiki entry about Systemd User Units.

These are instructions for using this configuration to configure Globus Connect Personal to run automatically in the background.

Warning

This section of the documentation is for advanced users who are already familiar with systemd.
  1. Download and unpack Globus Connect Personal following the instructions above

  2. Complete the setup but do not launch Globus Connect Personal, as in

    $ ./globusconnectpersonal -setup
  3. Move the install to a canonical directory from which you would like to run it. For example:

    $ mv globusconnectpersonal-*.*.*/ ~/.globusconnectpersonal
  4. Create a new user unit file in your home directory

    mkdir -p ~/.config/systemd/user/

    And write the following content in ~/.config/systemd/user/globusconnectpersonal.service

    [Unit]
    Description=Globus Connect Personal
    [Service]
    ExecStart=%h/.globusconnectpersonal/globusconnectpersonal -start -debug
    [Install]
    WantedBy=default.target
    Note

    The names and exact commands used here are recommendations. You may want to make adjustments to suit your usage.
  5. Start and enable the new service, and check its status

    $ systemctl --user start globusconnectpersonal
    $ systemctl --user enable globusconnectpersonal
    $ systemctl --user status globusconnectpersonal

If you want your user units to start on boot and persist after you logout, enable "lingering" for your user:

$ sudo loginctl enable-linger $USER

Managing Globus Connect Personal Directory Permissions via the Config File

Tip

If you have a removable drive - such as a USB drive - you will need to configure the Accessible Directories settings for your endpoint as discussed below to be able to access it via your endpoint.

When using Globus Connect Personal, you will only be able to transfer files to and from directories that are set to be accessible. If you are using the GUI, you can view and modify this configuration via a menu. However, if you are not using the GUI, you can still control this configuration by editing the relevant config file.

To configure which directories are accessible to Globus Connect Personal, edit the ~/.globusonline/lta/config-paths file and restart Globus Connect Personal.

This file is a headerless CSV with fields defined as follows.

<path>,<sharing flag>,<R/W flag>
<path>,<sharing flag>,<R/W flag>
...
Path

An absolute path to be permitted. Only paths which are present in the config file can be accessed. Tilde (~) can be used to represent the home directory of the user running Globus Connect Personal.

Sharing Flag

Enable or disable sharing. This field must be 1 or 0. 1 allows sharing for the path and 0 disallows sharing.

R/W Flag

Enable or disable write-access. This field must be 1 or 0. 1 allows read/write access and a 0 allows read-only access. The permissions set by this field are in addition to any other permissions and restrictions, e.g. file system permissions. For additional details, see information on effective share permissions.

Note

Sharing is a premium feature, so the endpoint must be covered by a subscription to use sharing. For additional details, see the sharing HowTo.

When Globus Connect Personal is first run, it will generate a ~/.globusonline/lta/config-paths file with the following contents:

~/,0,1

This configuration means read-write access to the user’s home directory is allowed, and sharing is disabled.

To configure the user’s home directory to be read-only change config-paths like so:

~/,0,0

To make additional directories accessible, each new path must be added as a line in the config-paths file. For example, to enable read-write access to the /data/tables directory, add the following line:

/data/tables,0,1

After making a change to ~/.globusonline/lta/config-paths, stop and restart Globus Connect Personal in order for the changes to take effect. For example,

$ ./globusconnectpersonal -stop

$ ./globusconnectpersonal -start &

In all cases, it is important to note that a user cannot access a directory or a file via Globus Connect Personal for which they do not have proper permissions. Unix file permissions must be considered along with the permissions specified in the config-paths file to determine accessibility for a given file or directory.

Note

There are some caveats concerning how Globus Connect Personal handles symlinks found in accessible paths. Please read more about that in the following FAQ: How Does Globus Handle Symlinks?

Updating Globus Connect Personal

  1. If Globus Connect Personal for Linux is running, kill it:

    $ killall gc-ctrl.py
  2. Delete the old Globus Connect Personal install directory.

  3. Download and extract the new Globus Connect Personal for Linux package.

  4. Start Globus Connect Personal from the new install directory just as you started it before.

If you should encounter problems when attempting your upgrade and cannot resolve them, then feel free to contact support@globus.org for help.

Troubleshooting

If you need help installing or using Globus Connect Personal, please see our Globus Connect Personal troubleshooting guide or contact support@globus.org.