Getting started on Windows

Revision as of 19:59, 31 March 2021 by (talk | contribs) (Windows Subsystem for Linux (WSL))

Windows computers work a little different to Linux and Mac, which both share a common UNIX ancestry. While you can achieve similar results using Power Shell in Windows to Bash in Linux/Mac, the way it works is completely different so you have to learn a new way of doing things when connecting to facilities like NCI. For that reason we recommend setting up a Linux-like environment on your Windows computer, so that everything works in a similar way.

You should be able to:

  • Connect to NCI to access models and data
  • Develop, test and run Python, Fortran etc. programs locally
  • Use a common interface on your local computer and NCI

For more information on how to use the terminal and Bash, check out the Software Carpentry Bash course

NCI Virtual Desktop (VDI)

NCI's virtual desktops (VDI) are an easy way to connect to NCI facilities from desktop computers. VDI provides a Linux desktop in a window, running on NCI's cloud

Check NCI's VDI documentation for the current installation and setup instructions


  • Access to NCI's /g/data filesystem
  • Conda and Matlab (see NCI documentation) available
  • No compute time/SU charge
  • Doesn't require a powerful home computer


  • VDI servers are shared between multiple users
  • Requires network connection

Windows Subsystem for Linux (WSL)

Windows subsystem for Linux (WSL) is a way to have a Linux environment on your Windows computer, without having to install and switch between different operating systems.

For up-to-date WSL installation instructions, see Microsoft's documentation at There are a few different Linux variants you can install, a good starting point is Ubuntu if you can't decide.

Once you have WSL and a Linux environment set up you can use Linux commands to install further programs, e.g. for Ubuntu {code} sudo apt install vim {code} will install the vim text editor.


  • Runs on your own computer
  • Install whatever programs you need


  • Large size (~2GB for base install)
  • Remote X11 windows can be slow if you have a bad connection

Windows Terminal

Windows Terminal is a nicer command line interface for Windows than the default Power Shell program, with more customisation options. It integrates with WSL, letting you use it to start Bash terminal sessions

Windows terminal can be installed through the Windows app store, further details at


In order to show remote windows from Gadi on your own screen you'll need an X11 server program running on your computer.

If X11 isn't running, you will get errors when starting programs that bring up a new window, e.g:

saw562@gadi-login-04 ~ $ xclock
Error: Can't open display:

There are a few different X11 server programs available for Windows, including:


VSCode & Power Shell SSH

VS Code is a nice code editor that can run on Windows, Mac and Linux. You can edit code locally, or use plugins to remotely connect to servers over SSH. It also integrates with WSL allowing you to edit code in the Linux environment, and with Anaconda, letting you run Python programs in different environments.

Windows includes its own version of SSH that you can use directly from Power Shell. Visual Studio Code can use this to connect to Gadi from your Windows computer. You will need some special options when creating a SSH key with Power Shell SSH:

ssh-keygen -t ecdsa -b 521 -f .ssh/id_ecdsa

The Power Shell SSH config file is stored in your user directory, e.g. C:\Users\Scott\.ssh

You can also use the Power Shell SSH to connect to Gadi, bypassing WSL, but that may have problems running X11 windows

Anaconda Python / Rstudio

We recommend using Anaconda if you're working with Python on your own computer. This makes it easy to install packages like numpy and netCDF4, which depend on binary libraries. Anaconda uses the same system we use for the Conda environments at NCI. Anaconda also supports Rstudio if you work with R.

You can install the Windows native version, or the Linux version in WSL. Normally more packages are available for Linux, but commonly used ones will be available for either. We recommend enabling the 'conda-forge' package repository, you will find a wider variety of packages there and they are generally well supported.


Check with your local IT for information on how to use Matlab, they will have information on how to connect to their Matlab license server.

You can also use Matlab on NCI's systems via VDI, however you need to use your university license.

Other Alternatives


Putty is an alternative SSH implementation for Windows


Cygwin works similarly to WSL, it lets you run Linux programs on a Windows computer