User Tools

Site Tools


skill-tree:use:1:5:b

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
skill-tree:use:1:5:b [2020/06/05 17:06] – external edit 127.0.0.1skill-tree:use:1:5:b [2025/03/10 19:24] (current) – external edit 127.0.0.1
Line 1: Line 1:
-# USE1.5-B Remote Access +# USE1.5 Overview: Software Environment
-# Background+
  
-HPC system is accessed remotely and has its own file systems that contain data and programs to execute+HPC systems have generally installed multiple versions of several essential software tools and software environments. 
-Learning the ways of general interaction with the remote system and tools involved is essential for newcomers.+Package management tools provide access to this wide variety of software
 +A user has to load the software for the current shell session to make commands available.
  
-Users must connect to a HPC system typically using the Secure Shell (SSH) which then starts a shell and allows for interactive access. +The widely available software tools are: 
-When the user disconnects such a session is terminated. +  * Environment modules 
-Starting of a server-sided session that persists after disconnection enables to execute long-running programs remotely and allows to seamlessly continue on a  previous session. +  * Spack
-Data transfer between a local users system (e.g., desktop or laptop) and remote system requires special tools and allows even for interactive access.+
  
-Tools discussed are generally valid for user systems using Linux, Mac, and Windows but also mobile devices.+## Learning Outcomes 
 +  * Understand shell variables relevant for executing and building software. 
 +  * Query available software using the package manager. 
 +  * Select the appropriate versions for deployment in the session environment. 
 +  * Describe the general dependency structure of software. 
 +  * Describe how a package manager makes software available. 
 +  * Use the export command to print shell variables. 
 +  * Understand shell variables relevant for executing and building software: 
 +    * PATH for executables 
 +    * LD\_LIBRARY\_PATH for libraries 
 +    * MANPATH for manual pages (man command) 
 +    * PKG\_CONFIG\_PATH for pkg-config 
 +  * Manipulate shell variables to include additional software: 
 +    * Setting shell variables for a single program by prefixing or by using export.
  
-Aim +## Subskills 
-  * To understand how to access a remote server and transfer data. +  * [[skill-tree:use:1:5:1:b]] 
- +  * [[skill-tree:use:1:5:2:b]] 
-Outcomes +  * [[skill-tree:use:1:5:3:b]]
-  * Describe how SSH-authentication works +
-    - Password authentication +
-    - Public-Key authentication +
-    - The role of an authentication agent and the security implications +
-  * Generate an SSH public/private key under Linux +
-  * Registering a key for public-key authentication using ssh-copy-id +
-  * Perform a remote login from Linux using SSH +
-  * Know when to use and how to create a config file +
-  * Utilize tools to transfer data between local and remote system +
-    scp +
-    - sftp +
-    - rsync (-avz) +
-  * Describing how SSHFS allows to mount a remote directory to a local directory for interactive usage (Mac/Linux only) +
-  * Utilizing screen and tmux to preserve a session between logins +
-    - creation of a session +
-    - detaching from the current session +
-    - resuming a previous session +
- +
-# Subskills+
  
skill-tree/use/1/5/b.1591369587.txt.gz · Last modified: 2020/06/05 17:06 by 127.0.0.1