To start using Sherlock, you will need:
an active SUNet ID,
What is a SUNet ID?
A SUNet ID is a unique 3-8 character account name that identifies you as a member of the Stanford community, with access to the Stanford University Network of computing resources and services. Not to be confused with University ID (a 8-digit number that appears on your Stanford ID Card), your SUNet ID is a permanent and visible part of your Stanford identity and often appears in your Stanford email address (eg. email@example.com).
SUNet IDs are not managed by Research Computing. For more information, see https://accounts.stanford.edu/
SUNet ID service levels and external collaborators
Base-level service is sufficient for Sherlock accounts. External collaborators, or users without a SUNet ID, can be sponsored by a PI a get a sponsored SUNet ID at no cost. Please see the sponsorship page for more information.
- a SSH client,
- good understanding of the concepts and terms used throughout that documentation,
- some familiarity with Unix/Linux command-line environments, and notions of shell scripting.
How to request an account#
To request an account, the sponsoring Stanford faculty member should email firstname.lastname@example.org, specifying the names and SUNet IDs of his/her research team members needing an account.
Sherlock is open to the Stanford community as a computing resource to support departmental or sponsored research, thus a faculty member's explicit consent is required for account requests.
Sherlock is a resource for research
Sherlock is a resource to help and support research, and is not suitable for course work, class assignments or general-use training sessions.
There is no fee associated with using Sherlock, and no limit in the amount of accounts each faculty member can request. We will periodically ensure that all accounts associated with each PI are still active, and reserve the right to close any Sherlock account whose SUNet ID is expired.
Linux distributions usually come with a version of the OpenSSH client already installed. So no additional software installation is required. If not, please refer to your distribution's documentation to install it.
MacOS systems usually come with a version of the OpenSSH client already installed. So no additional software installation is required
Microsoft Windows doesn't provide any SSH client by default. To install one, you have several options, depending on the version of Windows.
Windows 10 provides a feature called the "Windows Subsystem for Linux" (WSL). Please refer to the official documentation or this howto for installation instructions. Once installed, you'll be able to use the
sshcommand from a Windows terminal to connect to Sherlock.
The Cygwin project predates WSL and provides similar features, which among other things, allow users to install a command-line SSH client on their Windows machines.
The two options above will ensure the best compatibility with the Sherlock environment. If you'd like to explore other avenues, many other SSH client implementations are available, but have not necessarily been tested with Sherlock, so your mileage may vary.
A full tutorial on using Unix/Linux is beyond the scope of this documentation. However, there are many tutorials for beginning to use Unix/Linux on the web.
A few tutorials we recommend are:
- Unix Tutorial for Beginners (University of Surrey, UK)
- Introduction to Unix (Imperial College, London)
- The Unix Shell (Software Carpentry)
More specifically about HPC and Research Computing:
- Intro to HPC (HPC Carpentry)
- HPC in a day (Software Carpentry}
- Research Computing Q&A (Ask.Cyberinfrastructure)
Multiple text editors are available on Sherlock. For beginners, we recommend the use of
nano. And for more advanced uses, you'll also find below some resources about using
- Nano guide (Gentoo wiki)
- Vim guide (Gentoo wiki)
Note: you can also create/edit files with the Sherlock OnDemand File editor
Compute jobs launched on Sherlock are most often initialized by user-written shell scripts. Beyond that, many common operations can be simplified and automated using shell scripts.
For an introduction to shell scripting, you can refer to: