1. think about what you know about networking

  2. make sure you have putty if using windows

  3. get the big ideas of hpc, by reading this IBM intro page and some hypothetical people who would attend an HPC carpentry workshop. Make a list of key terms as an issue comment

  1. Look over build/explore ideas if you plan to do any.

{“lesson_part”: “activity”,“ac_type”:“prepare”}

  1. Read the 3 bulleted examples of why use a cluster from HPC carpentry.

  2. Read this discussion of why using a remote server

16. How can I work on a remote server?#

16.1. How can I authenticate more securely from a terminal?#

16.2. What are remote servers and HPC systems?#

Today we will connect to a remote server and learn new bash commands for working with the content of files.

16.3. Connecting to Seawulf#

We connect with secure shell or ssh from our terminal (GitBash or Putty on windows) to URI’s teaching High Performance Computing (HPC) Cluster Seawulf.

This cluster is for course related purposes at URI, if you want to use a HPC system of some sort for a side project, consider Amazon Web Services, Google Cloud, or Microsoft Azul services, you can get some allocation for free a a student.

If you are doing research supervised by a URI professor, there are other servers on campus and URI participates in a regional HPC resource as well.

Our login is the part of your uri e-mail address before the @ and I will tell you how to find your default password if you missed class (do not want to post it publicly). Comment on your experience report PR to ask for this information.

ssh -l ayman_sandouk seawulf.uri.edu

When it logs in it looks like this and requires you to change your password. They configure it with a default and with it past expired.

The authenticity of host 'seawulf.uri.edu (131.128.217.210)' can't be established.
ECDSA key fingerprint is SHA256:RwhTUyjWLqwohXiRw+tYlTiJEbqX2n/drCpkIwQVCro.
Are you sure you want to continue connecting (yes/no/[fingerprint])? y
Please type 'yes', 'no' or the fingerprint: yes
Warning: Permanently added 'seawulf.uri.edu,131.128.217.210' (ECDSA) to the list of known hosts.
ayman_sandouk@seawulf.uri.edu's password:
You are required to change your password immediately (root enforced)
WARNING: Your password has expired.
You must change your password now and login again!
Changing password for user ayman_sandouk.
Changing password for ayman_sandouk.
(current) UNIX password:
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
Connection to seawulf.uri.edu closed.

You use the default password when prompted for your username’s password. Then again when it asks for the (current) UNIX password:. Then you must type the same, new password twice.

Choose a new password you will remember, we will come back to this server

after you give it a new password, then it logs you out and you have to log back in.

We have logged into our home directory which is empty

ls

it is bash, so we can use regular bash commands

pwd
/home/ayman_sandouk
whoami
ayman_sandouk

Notice that the prompt says uriusername@seawulf to indicate that you are logged into the server, not working locally.

16.4. Downloading files#

wget allows you to get files from the web.

we are going to download some genetics data that is compressed as a practice tool

wget http://www.hpc-carpentry.org/hpc-shell/files/bash-lesson.tar.gz
ls
bash-lesson.tar.gz

then we can unzip it:

tar -xvf bash-lesson.tar.gz

we can use the man command to learn about a command from the “man(ual) page”

16.5. Working with large files#

One of these files, contains the entire genome for the common fruitfly, let’s take a look at it: \

cat dmel-all-r6.19.gtf

We see that this actually take a long time to output and is way tooo much information to actually read. In fact, in order to make the website work, I had to cut that content using command line tools, my text editor couldn’t open the file and GitHub was unhappy when I pushed it.

For a file like this, we don’t really want to read the whole file but we do need to know what it’s strucutred like in order to design programs to work with it.

head lets us look at the first 10 lines.

head dmel-all-r6.19.gtf

We can use the -n parameter to change the number.

And, tail shows the last few.

tail dmel-all-r6.19.gtf

which in this case looks mostly the same

2L	FlyBase	exon	782124	782181	.	+	.	gene_id "FBgn0041250"; gene_symbol "Gr21a"; transcript_id "FBtr0331651"; transcript_symbol "Gr21a-RB";
2L	FlyBase	exon	782238	782441	.	+	.	gene_id "FBgn0041250"; gene_symbol "Gr21a"; transcript_id "FBtr0331651"; transcript_symbol "Gr21a-RB";
2L	FlyBase	exon	782495	782885	.	+	.	gene_id "FBgn0041250"; gene_symbol "Gr21a"; transcript_id "FBtr0331651"; transcript_symbol "Gr21a-RB";
2L	FlyBase	start_codon	781297	781299	.	+	0	gene_id "FBgn0041250"; gene_symbol "Gr21a"; transcript_id "FBtr0331651"; transcript_symbol "Gr21a-RB";
2L	FlyBase	CDS	781297	782048	.	+	0	gene_id "FBgn0041250"; gene_symbol "Gr21a"; transcript_id "FBtr0331651"; transcript_symbol "Gr21a-RB";
2L	FlyBase	CDS	782124	782181	.	+	1	gene_id "FBgn0041250"; gene_symbol "Gr21a"; transcript_id "FBtr0331651"; transcript_symbol "Gr21a-RB";
2L	FlyBase	CDS	782238	782441	.	+	0	gene_id "FBgn0041250"; gene_symbol "Gr21a"; transcript_id "FBtr0331651"; transcript_symbol "Gr21a-RB";
2L	FlyBase	CDS	782495	782821	.	+	0	gene_id "FBgn0041250"; gene_symbol "Gr21a"; transcript_id "FBtr0331651"; transcript_symbol "Gr21a-RB";
2L	FlyBase	stop_codon	782822	782824	.	+	0	gene_id "FBgn0041250"; gene_symbol "Gr21a"; transcript_id "FBtr0331651"; transcript_symbol "Gr21a-RB";
2L	FlyBase	3UTR	782825	782885	.	+	.	gene_id "FBgn0041250"; gene_symbol "Gr21a"; transcript_id "FBtr0331651"; transcript_symbol "Gr21a-RB";

We can also see how much content is in the file wc give a word count and with its -l parameter gives us the number of lines.

wc -l dmel-all-r6.19.gtf
542048 dmel-all-r6.19.gtf

Over five hundred forty thousand lines is a lot.

How can we get the number of lines in each of the .fastq files?

remember other times we have used patterns

wc -l *.fastq

when it does work, we also get the total.

We can use redirects as before to save these to a file:

wc -l *.fastq > linecounts.txt
cat linecounts.txt
   20000 SRR307023_1.fastq
   20000 SRR307023_2.fastq
   20000 SRR307024_1.fastq
   20000 SRR307024_2.fastq
   20000 SRR307025_1.fastq
   20000 SRR307025_2.fastq
   20000 SRR307026_1.fastq
   20000 SRR307026_2.fastq
   20000 SRR307027_1.fastq
   20000 SRR307027_2.fastq
   20000 SRR307028_1.fastq
   20000 SRR307028_2.fastq
   20000 SRR307029_1.fastq
   20000 SRR307029_2.fastq
   20000 SRR307030_1.fastq
   20000 SRR307030_2.fastq
  320000 total

We can also search files, without loading them all into memory or displaying them, with grep:

grep Act5c dmel-all-r6.19.gtf
grep mRNA dmel-all-r6.19.gtf

this output a lot, so the output is truncated here

X	FlyBase	mRNA	19961689	19968479	.	+	.	gene_id "FBgn0031081"; gene_symbol "Nep3"; transcript_id "FBtr0070000"; transcript_symbol "Nep3-RA";
2L	FlyBase	mRNA	781276	782885	.	+	.	gene_id "FBgn0041250"; gene_symbol "Gr21a"; transcript_id "FBtr0331651"; transcript_symbol "Gr21a-RB";

and we can combine grep with wc to count occurences.

grep mRNA dmel-all-r6.19.gtf | wc -l
34025

16.6. File permissions#

Let’s make a small script, recalling what we have learned so far:

echo "echo 'script works'" >> demo.sh

We can confirm that the script looks like a we expected

cat demo.sh
echo 'script works'

One thing we could do is to run the script using ./

./demo.sh

but we get a permission denied error

-bash: ./demo.sh: Permission denied

By default, files have different types of permissions: read, write, and execute for different users that can access them. To view the permissions, we can use the -l option of ls.

ls -l
total 138452
-rw-r--r--. 1 ayman_sandouk spring2022-csc392 12534006 Apr 18  2021 bash-lesson.tar.gz
-rw-r--r--. 1 ayman_sandouk spring2022-csc392       20 Mar  8 13:12 demo.sh
-rw-r--r--. 1 ayman_sandouk spring2022-csc392 77426528 Jan 16  2018 dmel-all-r6.19.gtf
-rw-r--r--. 1 ayman_sandouk spring2022-csc392   721242 Jan 25  2016 dmel_unique_protein_isoforms_fb_2016_01.tsv
-rw-r--r--. 1 ayman_sandouk spring2022-csc392 25056938 Jan 25  2016 gene_association.fb
-rw-r--r--. 1 ayman_sandouk spring2022-csc392      447 Mar  8 13:07 linecounts.txt
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625262 Jan 25  2016 SRR307023_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625262 Jan 25  2016 SRR307023_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625376 Jan 25  2016 SRR307024_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625376 Jan 25  2016 SRR307024_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625286 Jan 25  2016 SRR307025_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625286 Jan 25  2016 SRR307025_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625302 Jan 25  2016 SRR307026_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625302 Jan 25  2016 SRR307026_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625312 Jan 25  2016 SRR307027_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625312 Jan 25  2016 SRR307027_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625338 Jan 25  2016 SRR307028_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625338 Jan 25  2016 SRR307028_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625390 Jan 25  2016 SRR307029_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625390 Jan 25  2016 SRR307029_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625318 Jan 25  2016 SRR307030_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625318 Jan 25  2016 SRR307030_2.fastq

For each file we get 10 characters in the first column that describe the permissions. The 3rd column is the username of the owner, the fourth is the group, then size date revised and the file name.

We are most interested in the 10 character permissions. The fist column indicates if any are directories with a d or a - for files. We have no directories, but we can create one to see this.

mkdir results
ls -l
total 138452
-rw-r--r--. 1 ayman_sandouk spring2022-csc392 12534006 Apr 18  2021 bash-lesson.tar.gz
-rw-r--r--. 1 ayman_sandouk spring2022-csc392       20 Mar  8 13:12 demo.sh
-rw-r--r--. 1 ayman_sandouk spring2022-csc392 77426528 Jan 16  2018 dmel-all-r6.19.gtf
-rw-r--r--. 1 ayman_sandouk spring2022-csc392   721242 Jan 25  2016 dmel_unique_protein_isoforms_fb_2016_01.tsv
-rw-r--r--. 1 ayman_sandouk spring2022-csc392 25056938 Jan 25  2016 gene_association.fb
-rw-r--r--. 1 ayman_sandouk spring2022-csc392      447 Mar  8 13:07 linecounts.txt
**drwxr-xr-x. 2 ayman_sandouk spring2022-csc392       10 Mar  8 13:16 results**
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625262 Jan 25  2016 SRR307023_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625262 Jan 25  2016 SRR307023_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625376 Jan 25  2016 SRR307024_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625376 Jan 25  2016 SRR307024_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625286 Jan 25  2016 SRR307025_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625286 Jan 25  2016 SRR307025_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625302 Jan 25  2016 SRR307026_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625302 Jan 25  2016 SRR307026_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625312 Jan 25  2016 SRR307027_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625312 Jan 25  2016 SRR307027_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625338 Jan 25  2016 SRR307028_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625338 Jan 25  2016 SRR307028_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625390 Jan 25  2016 SRR307029_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625390 Jan 25  2016 SRR307029_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625318 Jan 25  2016 SRR307030_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625318 Jan 25  2016 SRR307030_2.fastq

We can see in the bold line, that the first character is a d.

The next nine characters indicate permission to read, write, and execute a file. With either the letter or a - for permissions not granted, they appear in three groups of three, three characters each for owner, group, anyone with access.

If we want to run the file, we can instead use bash directly, but this is limited relative to calling our script in other ways.

bash demo.sh
script works

Instead, to add execute permission, we can use chmod

chmod +x demo.sh
ls -l
total 138452
-rw-r--r--. 1 ayman_sandouk spring2022-csc392 12534006 Apr 18  2021 bash-lesson.tar.gz
-rwxr-xr-x. 1 ayman_sandouk spring2022-csc392       20 Mar  8 13:12 demo.sh
-rw-r--r--. 1 ayman_sandouk spring2022-csc392 77426528 Jan 16  2018 dmel-all-r6.19.gtf
-rw-r--r--. 1 ayman_sandouk spring2022-csc392   721242 Jan 25  2016 dmel_unique_protein_isoforms_fb_2016_01.tsv
-rw-r--r--. 1 ayman_sandouk spring2022-csc392 25056938 Jan 25  2016 gene_association.fb
-rw-r--r--. 1 ayman_sandouk spring2022-csc392      447 Mar  8 13:07 linecounts.txt
drwxr-xr-x. 2 ayman_sandouk spring2022-csc392       10 Mar  8 13:16 results
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625262 Jan 25  2016 SRR307023_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625262 Jan 25  2016 SRR307023_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625376 Jan 25  2016 SRR307024_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625376 Jan 25  2016 SRR307024_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625286 Jan 25  2016 SRR307025_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625286 Jan 25  2016 SRR307025_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625302 Jan 25  2016 SRR307026_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625302 Jan 25  2016 SRR307026_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625312 Jan 25  2016 SRR307027_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625312 Jan 25  2016 SRR307027_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625338 Jan 25  2016 SRR307028_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625338 Jan 25  2016 SRR307028_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625390 Jan 25  2016 SRR307029_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625390 Jan 25  2016 SRR307029_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625318 Jan 25  2016 SRR307030_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625318 Jan 25  2016 SRR307030_2.fastq
./demo.sh
script works

We can add a bit more to our script to make it more interesting

nano demo.sh

note here nano is all we have withouth a lot of extra work

for VAR in *.gz
do
  echo $VAR
done


echo 'script works'

and note that that does not change the permission.

ls -l

That output is long, how could we make it shorter and more focused on what we want?

use grep!

ls
example
github-in-class-ayman_sandouk-1
kwl
seawulf
test
testobj.md
tiny-book
ssh -l ayman_sandouk seawulf.uri.edu
ayman_sandouk@seawulf.uri.edu's password: 
Last failed login: Thu Mar 30 12:53:35 EDT 2023 from pool-96-238-44-82.prvdri.fios.verizon.net on ssh:notty
There was 1 failed login attempt since the last successful login.
Last login: Thu Mar 30 11:54:40 2023 from pool-72-87-118-171.prvdri.fios.verizon.net
[ayman_sandouk@seawulf ~]$ pwd
/home/ayman_sandouk
[ayman_sandouk@seawulf ~]$ ls
bash-lesson.tar.gz                           SRR307024_2.fastq
bash-lesson.tar.gz.1                         SRR307025_1.fastq
demo.sh                                      SRR307025_2.fastq
dmel-all-r6.19.gtf                           SRR307026_1.fastq
dmel_unique_protein_isoforms_fb_2016_01.tsv  SRR307026_2.fastq
gene_association.fb                          SRR307027_1.fastq
linecounts.txt                               SRR307027_2.fastq
my_job.sh                                    SRR307028_1.fastq
results                                      SRR307028_2.fastq
slurm-23950.out                              SRR307029_1.fastq
SRR307023_1.fastq                            SRR307029_2.fastq
SRR307023_2.fastq                            SRR307030_1.fastq
SRR307024_1.fastq                            SRR307030_2.fastq
[ayman_sandouk@seawulf ~]$ mkdir example
[ayman_sandouk@seawulf ~]$ cd example/
[ayman_sandouk@seawulf example]$ pwd
/home/ayman_sandouk/example
[ayman_sandouk@seawulf example]$ mkdir ex2
[ayman_sandouk@seawulf example]$ cd ex2/
[ayman_sandouk@seawulf ex2]$ pwd
/home/ayman_sandouk/example/ex2
[ayman_sandouk@seawulf ex2]$ cd 
[ayman_sandouk@seawulf ~]$ ls -l
total 150704
-rw-r--r--. 1 ayman_sandouk spring2022-csc392 12534006 Apr 18  2021 bash-lesson.tar.gz
-rw-r--r--. 1 ayman_sandouk spring2022-csc392 12534006 Apr 18  2021 bash-lesson.tar.gz.1
-rwxr-xr-x. 1 ayman_sandouk spring2022-csc392       20 Oct 26 17:11 demo.sh
-rw-r--r--. 1 ayman_sandouk spring2022-csc392 77426528 Jan 16  2018 dmel-all-r6.19.gtf
-rw-r--r--. 1 ayman_sandouk spring2022-csc392   721242 Jan 25  2016 dmel_unique_protein_isoforms_fb_2016_01.tsv
drwxr-xr-x. 3 ayman_sandouk spring2022-csc392       24 Mar 30 12:59 example
-rw-r--r--. 1 ayman_sandouk spring2022-csc392 25056938 Jan 25  2016 gene_association.fb
-rw-r--r--. 1 ayman_sandouk spring2022-csc392      447 Mar  8  2022 linecounts.txt
-rw-r--r--. 1 ayman_sandouk spring2022-csc392       84 Mar  8  2022 my_job.sh
drwxr-xr-x. 2 ayman_sandouk spring2022-csc392       10 Mar  8  2022 results
-rw-r--r--. 1 ayman_sandouk spring2022-csc392       89 Mar  8  2022 slurm-23950.out
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625262 Jan 25  2016 SRR307023_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625262 Jan 25  2016 SRR307023_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625376 Jan 25  2016 SRR307024_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625376 Jan 25  2016 SRR307024_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625286 Jan 25  2016 SRR307025_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625286 Jan 25  2016 SRR307025_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625302 Jan 25  2016 SRR307026_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625302 Jan 25  2016 SRR307026_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625312 Jan 25  2016 SRR307027_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625312 Jan 25  2016 SRR307027_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625338 Jan 25  2016 SRR307028_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625338 Jan 25  2016 SRR307028_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625390 Jan 25  2016 SRR307029_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625390 Jan 25  2016 SRR307029_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625318 Jan 25  2016 SRR307030_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1625318 Jan 25  2016 SRR307030_2.fastq
[ayman_sandouk@seawulf ~]$ ls -l --block-size=M
total 148M
-rw-r--r--. 1 ayman_sandouk spring2022-csc392 12M Apr 18  2021 bash-lesson.tar.gz
-rw-r--r--. 1 ayman_sandouk spring2022-csc392 12M Apr 18  2021 bash-lesson.tar.gz.1
-rwxr-xr-x. 1 ayman_sandouk spring2022-csc392  1M Oct 26 17:11 demo.sh
-rw-r--r--. 1 ayman_sandouk spring2022-csc392 74M Jan 16  2018 dmel-all-r6.19.gtf
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1M Jan 25  2016 dmel_unique_protein_isoforms_fb_2016_01.tsv
drwxr-xr-x. 3 ayman_sandouk spring2022-csc392  1M Mar 30 12:59 example
-rw-r--r--. 1 ayman_sandouk spring2022-csc392 24M Jan 25  2016 gene_association.fb
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1M Mar  8  2022 linecounts.txt
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1M Mar  8  2022 my_job.sh
drwxr-xr-x. 2 ayman_sandouk spring2022-csc392  1M Mar  8  2022 results
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  1M Mar  8  2022 slurm-23950.out
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  2M Jan 25  2016 SRR307023_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  2M Jan 25  2016 SRR307023_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  2M Jan 25  2016 SRR307024_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  2M Jan 25  2016 SRR307024_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  2M Jan 25  2016 SRR307025_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  2M Jan 25  2016 SRR307025_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  2M Jan 25  2016 SRR307026_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  2M Jan 25  2016 SRR307026_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  2M Jan 25  2016 SRR307027_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  2M Jan 25  2016 SRR307027_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  2M Jan 25  2016 SRR307028_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  2M Jan 25  2016 SRR307028_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  2M Jan 25  2016 SRR307029_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  2M Jan 25  2016 SRR307029_2.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  2M Jan 25  2016 SRR307030_1.fastq
-rw-r--r--. 1 ayman_sandouk spring2022-csc392  2M Jan 25  2016 SRR307030_2.fastq
[ayman_sandouk@seawulf ~]$ exit

Remember to logout to be curtious to others who are sharing the resources with you. We don’t want to be reserving resources that we aren’t using.

logout
Connection to seawulf.uri.edu closed.

16.7. Experience Report Evidence#

16.8. Prepare for Next Class#

  • [ ] Ensure you can log into seawulf

16.9. Review today’s class#

Important

Today’s badges are integrative 2x badges.

16.10. Badges#

Important

This is an integrative 2x badge.

  1. File permissions are represented numerically often in octal, by transforming the permissions for each level (owner, group, all) as binary into a number. Add octal.md to your KWL repo and answer the following. Try to think through it on your own, but you may look up the answers, as long as you link to (or ideally cite using jupyterbook citations) a high quality source.

    1. Describe how to transform the permissions [`r--`, `rw-`, `rwx`] to octal, by treating each set as three bits.
    1. Transform the permission we changed our script to `rwxr-xr-x` to octal.
    1. Which of the following would prevent a file from being edited by other people 777 or 755 and why?
    
  2. Read through this rsa encryption demo site to review how it works. Find 2 other encyrption algorithms that could be used wiht ssh (hint: try man ssh or read it online) and compare them in encyryption_compare.md. Your comparison should be enough to advise someone which is best and why, but need not get into the details.

Important

This is an integrative 2x badge.

  1. File permissions are represented numerically often in octal, by transforming the permissions for each level (owner, group, all) as binary into a number. Add octal.md to your KWL repo and answer the following. Try to think through it on your own, but you may look up the answers, as long as you link to (or ideally cite using jupyterbook citations) a high quality source.

    1. Describe how to transform the permissions [`r--`, `rw-`, `rwx`] to octal, by treating each set as three bits.
    1. Transform the permission we changed our script to `rwxr-xr-x` to octal.
    1. Which of the following would prevent a file from being edited by other people 777 or 755 and why?
    
  2. configure ssh keys for your github account

  3. Read through this rsa encryption demo site site and use it to show what, for a particular public/private key pair (based on small primes) it would look like to pass a message, “It is spring now!” encrypted. (that is encypt it, and decrypt it with the site, show it’s encrypted version and the key pair and describe what would go where). Put your example in rsademo.md.

  4. Find 2 other encyrption algorithms that could be used wiht ssh (hint: try man ssh or read it online) and compare them in encyryption_compare.md. Your comparison should be enough to advise someone which is best and why, but need not get into the details.

16.11. Questions#