Difference between revisions of "Introduction to Linux in HPC/Linux Directory Structure"

From HPC Wiki
Introduction to Linux in HPC/Linux Directory Structure
Jump to navigation Jump to search
m (Fix menu location)
m (Tweak category sorting)
 
(16 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[Category:Tutorials]]
+
[[Category:Tutorials|Linux Directory Structure]]<nowiki />
{{DISPLAYTITLE:<span style="position:absolute; top:-9999px;">Introduction to Linux in HPC/</span>Directory structure}}
+
{{DISPLAYTITLE:Linux Directory Structure}}<nowiki />
{{Infobox_linux_introduction}}
+
{{Syllabus Introduction to Linux}}<nowiki />
 
 
 
__TOC__
 
__TOC__
  
 +
This part of the tutorial introduces the directory structure on a Linux system and shows how to navigate in it. It explains how a path looks like in Linux, which standard directory structure is shared by most systems and how to navigate from one directory to another.
  
 +
=== Video === <!--T:5-->
  
=== Video === <!--T:5-->
+
<youtube width="600" height="340" right>rV7Hwi__zZo</youtube>
  
<youtube width="600" height="400" right>7O0Fa0stBsQ</youtube>
+
([[Media:HPC.NRW_Introduction_to_Linux_in_HPC_03_Linux_Directory_Structure.pdf|Slides as pdf]])
  
 
=== Quiz === <!--T:5-->   
 
=== Quiz === <!--T:5-->   
Line 24: Line 25:
 
||  
 
||  
 
-  <code>C:\</code>
 
-  <code>C:\</code>
||  
+
|| That's Windows
 
</quiz>
 
</quiz>
 
{{hidden end}}
 
{{hidden end}}
Line 30: Line 31:
  
 
{{hidden begin  
 
{{hidden begin  
|title = 2. The command <code>cd</code> without arguments : if you start in <code>var/log/</code> and run <code>cd</code> with no arguments, what do you expect will happen?
+
|title = 2. The command <code>cd</code> without arguments: if you start in <code>/var/log/</code> and run <code>cd</code> with no arguments, what do you expect will happen?
 
}}
 
}}
 
<quiz display=simple>
 
<quiz display=simple>
Line 46: Line 47:
 
||
 
||
 
- The shell prompt turns into a shark and eats you
 
- The shell prompt turns into a shark and eats you
 +
||
 +
</quiz>
 +
{{hidden end}}
 +
 +
 +
{{hidden begin
 +
|title = 3. Which of these oversimplifications describes the directory structure in a Linux system best?
 +
}}
 +
<quiz display=simple>
 +
{
 +
|type="()"}
 +
- Everything is a directory
 +
||
 +
+ Everything is a file
 +
|| Explanation: In Linux, directories are files with a directory flag. There are even more "special" files, like <code>/dev/null/</code>, <code>/proc/cpuinfo/</code> or links.
 +
- Directories are files and files are directories
 +
|| Explanation:  Directories are files, but files are not directories
 +
- All of the above
 
||
 
||
 
</quiz>
 
</quiz>
Line 53: Line 72:
 
{{Warning|mode=warn|text= '''no undo and make sure what you want to do (page 48)'''}}
 
{{Warning|mode=warn|text= '''no undo and make sure what you want to do (page 48)'''}}
  
 +
=== Exercises in Terminal=== <!--T:5-->
  
=== Exercises in Terminal (slide 49)=== <!--T:5-->
+
  4. Go to a specific subfolder of a folder (example: <code>cd Documents/courses/</code>) and get back to the home directory using <code>cd</code> command. List 3 different ways to do it using one command. Check after every action your path with <code>pwd</code> command.
 
 
  1. Go to a specific subfolder of a folder (example: <code>cd Documents/courses/</code> ) and get back to the home directory using <code>cd</code> command. List 3 different ways to do it using one command. check after every action your path with <code>pwd</code> command.
 
 
   {| role="presentation" class="wikitable mw-collapsible mw-collapsed"
 
   {| role="presentation" class="wikitable mw-collapsible mw-collapsed"
 
     | <strong>Answer:</strong>
 
     | <strong>Answer:</strong>
Line 64: Line 82:
 
       <code>cd ~</code>
 
       <code>cd ~</code>
 
       <code>cd $HOME</code>
 
       <code>cd $HOME</code>
         the last option $HOME is an enviornment variable. You will learn about enviornment variables later.
+
         the last option $HOME is an environment variable. You will learn about environment variables later.
 
     |}
 
     |}
 
        
 
        
  2. Go to the directory <code>/tmp</code> and jump between <code>/tmp</code> and your home directory back and forth. check after every action your path with <code>pwd</code> command.
+
  5. Go to the directory <code>/tmp</code> and jump between <code>/tmp</code> and your home directory back and forth. Check after every action your path with <code>pwd</code> command.
 
   {| role="presentation" class="wikitable mw-collapsible mw-collapsed"
 
   {| role="presentation" class="wikitable mw-collapsible mw-collapsed"
 
     | <strong>Answer:</strong>
 
     | <strong>Answer:</strong>
Line 77: Line 95:
 
     |}
 
     |}
  
<div style='text-align: left;float:left;width:33%;'>{{Clickable button|[[Introduction_to_Linux_in_HPC/The_Command_Line | Previous Page]]|color=white}}</div>
+
 
<div style='text-align: center;float:left;width:33%;'>{{Clickable button|[[Introduction_to_Linux_in_HPC | Main Menu Page]]|color=white}}</div>
+
{{hidden begin
<div style='text-align: right;float:left;width:33%;'>{{Clickable button|[[Introduction_to_Linux_in_HPC/Files | Next Page]]|color=white}}</div>
+
|title = Bonus question: How do you copy and paste in the Linux terminal?
 +
}}
 +
<quiz display=simple>
 +
{
 +
|type="()"}
 +
- Ctrl-C & Ctrl-V
 +
|| That's Windows
 +
- <code>yy</code> & <code>pp</code>
 +
|| That's vim
 +
+ Middle Mouse
 +
|| Alternative Solution: Ctrl-Shift-C & Ctrl-Shift-V
 +
-You can't, that's a Windows feature.
 +
||
 +
</quiz>
 +
{{hidden end}}
 +
 
 +
 
 +
{{Tutorial Navigation
 +
| previous = [[Introduction_to_Linux_in_HPC/The_Command_Line | The Command Line ]]
 +
| main = [[Introduction_to_Linux_in_HPC | Overview ]]
 +
| next = [[Introduction_to_Linux_in_HPC/Files | Files ]]
 +
}}

Latest revision as of 17:20, 4 December 2020

Tutorial
Title: Introduction to Linux in HPC
Provider: HPC.NRW

Contact: tutorials@hpc.nrw
Type: Multi-part video
Topic Area: HPC Platforms
License: CC-BY-SA
Syllabus

1. Background and History
2. The Command Line
3. Linux Directory Structure
4. Files
5. Text display and search
6. Users and permissions
7. Processes
8. The vim text editor
9. Shell scripting
10. Environment variables
11. System configuration
12. SSH Connections
13. SSH: Graphics and File Transfer
14. Various tips

This part of the tutorial introduces the directory structure on a Linux system and shows how to navigate in it. It explains how a path looks like in Linux, which standard directory structure is shared by most systems and how to navigate from one directory to another.

Video

(Slides as pdf)

Quiz

1. Which one is the top directory in Linux?

/
/home
C:\


2. The command cd without arguments: if you start in /var/log/ and run cd with no arguments, what do you expect will happen?

Nothing it stays in /var/log/
It goes to your home directory
It goes to the filesystem root
The shell stops having a working directory
It’s an error
The shell prompt turns into a shark and eats you


3. Which of these oversimplifications describes the directory structure in a Linux system best?

Everything is a directory
Everything is a file
Directories are files and files are directories
All of the above


Warning:  no undo and make sure what you want to do (page 48)

Exercises in Terminal

4. Go to a specific subfolder of a folder (example: cd Documents/courses/) and get back to the home directory using cd command. List 3 different ways to do it using one command. Check after every action your path with pwd command.
5. Go to the directory /tmp and jump between /tmp and your home directory back and forth. Check after every action your path with pwd command.


Bonus question: How do you copy and paste in the Linux terminal?

Ctrl-C & Ctrl-V
yy & pp
Middle Mouse
You can't, that's a Windows feature.



<< The Command Line

Overview

Files >>