Table of Contents

Setting up File Sharing in X2GoClient

On some older Linux distributions, it was required that you add your users to the fuse group on your server. Newer distributions do away with this requirement. So if your server does not have a group called fuse, you should not need to create (and populate) it. Only populate it with your users if it already exists, to avoid Cargo Cult Programming.

The following screenshots were made using X2GoClient for Windows 4.0.5.1-2016.08.18. The design of the session tabs may vary slightly in later versions, however, the principle stays the same.

Attention: There is a bug in X2GoClient 4.0.5.2 that causes Folder Sharing to fail in some, if not all use cases. If you need this feature, please upgrade to the latest X2GoClient release or downgrade to X2GoClient 4.0.5.1

Session Setup

First, let's create a New Session

For this example, we'll be using MATE as Desktop Environment (see List of supported Desktop Environments). Feel free to use any other of the supported DEs, or Published Application/Single Application mode.

Adding Shared Folders

Go to the "Shared Folders" tab and Click on the Folder Icon

For this example, we'll be using the Downloads folder of the Windows user account named WindowsUserAccount, located at C:\Users\WindowsUserAccount\Downloads. Feel free to use any other folder that your local Windows user account has access to. Click Select Folder to confirm your selection.

Add the Selected Folder to the List of Available Shares

If you've ever used PuTTY and its port forwarding feature, this step might already be familiar to you. You need to add the folder you just selected to the list of available shares (the large, empty field that the red arrow points to). Do this by clicking the Add button.

Use Automount and Port Forwarding

Make sure you've checked the Automount checkbox as well as the one that says Use SSH port forwarding…. The latter should be enabled by default.

If you decide against automounting, see Manually mounting Shared Folders on Demand below for manual mounting instructions.
Unless you really know what you are doing, do not un-check Use SSH port forwarding… for Folder Sharing, especially if you're a beginner and are trying to get your first connection with Folder Sharing working. While the connection will still be encrypted due to the use of SSH on the reverse connections, it will likely cause problems that result in Folder Sharing not working at all.


In theory, it should be possible to un-check this box if there is no firewall or NAT routing between the Windows client and the Linux server. Note that firewall in this case refers to both hardware firewalls build into routers or bridges, as well as to software firewalls running on the Windows Client - like the built-in one that comes with every Windows since Windows XP ServicePack 2, or one belonging to an Internet Security Suite you might be running, and/or on the Linux Server, like iptables.

In reality, though, we've seen it fail more often than not, even when these conditions were met.


The one reason why you might want to un-check it is a slight performance increase due to saving some overhead, especially when running over a VPN connection (wrapping TCP in TCP, just to wrap it in TCP again is of course less than ideal), but at present, it just isn't worth the additional setup and debug effort for the average user.


TL;DR: If you don't have the faintest idea what the above paragraphs mean, don't un-check that box.

Optionally activate Filename Charset Translation

Unless you're using the same charset on both the Windows client and the Linux server, you should check this box so filenames with special characters in them don't get mangled.

Running the Session

Once you're connected, you should see a symlink media in your home directory, assuming you followed our suggestion to use the Automount feature. Follow that symlink.

If you decided against automounting, see Manually mounting Shared Folders on Demand below for manual mounting instructions.

Locate your Shared Folders

Inside the media folder are several sub-folders, one of them is named disk. Navigate there. Inside the disk folder, you will see every mounted shared folder, the name always starting with _cygdrive_. Note that folder names are abbreviated, so in our example, C:\Users\WindowsUserAccount\Downloads becomes _cygdrive_C_Users_WINDOW1_DOWNLO1.

Compare Folder Contents

You can now navigate to one of the shared folders and access it like it was a local folder. All changes will be replicated instantly. Note that on the Linux side, you will always see file extensions (like .bmp in our example) as well as files that may be present, but hidden from you due to system settings on the Windows side. This behavior can be changed on the Windows side and is not specific to X2Go. Default behavior of Windows is to hide known file extensions as well as entire files with file system attributes hidden and/or system.

Manually mounting Shared Folders on Demand

If you've decided against using the Automount feature, you will need to mount the Shared Folder(s) manually before you can use them.

How you mount them manually depends on what checkboxes you checked under Options/Settings/General in X2GoClient:

If you set X2GoClient to minimize into the system tray (any of the Hide… options in the screenshot above), then:

Right-click the session icon next to the clock, select the session name (in our example: MATE-FileSharing test), then Share folder ….

If, instead, you have the X2GoClient window on your screen even with an active connection (noticeable by the two X2Go-related items in your taskbar, as highlighted by the two red arrows in the screenshot), click on the small folder icon, that's the left of the three icons Folder, Pause, Power marked in the red box in the screenshot.

From there, the steps are the same again for both variants:

Click the name of the share (in our example: C:\Users\WindowsUserAccount\Downloads) in the window that has opened, then click the share button to confirm your selection.