Welcome on-line!

Course punchline

  • Move from being a Linux novice to an UPPMAX expert.

Course aim

  • UPPMAX application experts want to share their skills in a 4-day series of lectures.

  • If you already have the fundamentals down, you are still sure to enjoy the tips and tricks in the later parts of the course.

  • Hence we’ve made it possible to sign up only for the days that are interesting to you.

Learning outcomes

  • Get overview of UPPMAX and NAISS

  • Work with your files in a LINUX environment

  • Learn to use the UPPMAX resources in a good way

  • Learn the basics in the Python programming language

Lesson material


Questions requiring more effort to explain or answer


  • Exercises may be solved individually or in small groups in breakout rooms for online students.

Type along

  • You will be able to follow along using the built-in terminals in all OS:s.

    • Linux/Mac Terminal

    • Windows: Powershell or command prompt

  • For your day-to-day work you may benefit from other applications, see the Login session

Example of arrangement for your screen(s)!

First screen or first half of screen

  • ZOOM view

    • presentation

    • terminal from teacher

Second screen or second half of screen

  • your web browser for copy-pasting

  • your own terminal

(zoom chat + HackMD)

Lesson Modules

Linux I at 9-12 Monday

  • Overview

  • Logging in to UPPMAX

  • Linux basics

  • Using the command line

Intro to UPPMAX 13-16 Monday

  • Organisation

  • HPC computing

  • SNIC

  • Bianca cluster

  • Using software and tools

  • Submitting jobs to calculation nodes (intro)

Linux II 9-12 Tuesday

  • Using the command line level 2

  • Input, output and pipes

  • Wildcards

  • The find command

  • Links

Linux III 13-16 Tuesday

  • The grep command

  • Using the command line level 3

  • Variables, parameters and $(…)

  • Filenames

Bash Scripts 9-12 Wednesday

  • Bash scripting, why’s and basics

  • Parameters

  • The IF statement

  • File tests

  • FOR and WHILE loops

  • Background processes and job control

Slurm at UPPMAX 13-16 Wednesday

  • A workload manager

  • Queuing

  • Monitoring

  • in queue

  • while running

  • when finished

  • Job testing within the interactive or “devel” mode

  • Scripting

Python I 9-12 Thursday

  • Introduction

  • Basics

  • Data types

  • Control structures

  • Writing and executing a program

Python II 13-16 Thursday

  • Creating a program

  • Functions

Icebreaker in HackMD