think about what you know about networking
make sure you have putty if using windows
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
Look over build/explore ideas if you plan to do any.
{“lesson_part”: “activity”,“ac_type”:“prepare”}
Read the 3 bulleted examples of why use a cluster from HPC carpentry.
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.
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?
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.
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?
configure ssh keys for your github account
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.
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.