Skip to content

Latest commit

 

History

History
315 lines (201 loc) · 13 KB

faq.md

File metadata and controls

315 lines (201 loc) · 13 KB

FAQ

What is my Sid username and password?

Your Sid credentials are your HarvardKey e-mail address and password.

Can I FTP files between Sid and my local computer using FileZilla or some other FTP program?

No. Please use Google Drive to transfer data into and out of your Sid session.

How do I run a batch job?

Sid will support classical batch-style processing in a future release. Currently, batch-style jobs can run indefinitely in the background without user input within an interactive job.

How do I run a scheduled job?

Scheduled jobs (CRON type jobs) are a special case of the above mentioned batch jobs. These jobs are currently not supported.

Alternatively, you could run cron jobs in Sid Desktop by first installing the cron daemon (sudo dnf -y install cronie) and then creating a crontab (crontab -e), but this will cease to operate when her Sid job is terminated.

How do I read a network file in R?

Use the httr GET function, e.g.,

library(httr)

# Example World Health data
url <- 'https://pastebin.com/raw/V7DEMiDu';
r <- GET(url)
fil <- tempfile("data")
write(content(r, "text"), fil)
WHS_data <- read.table(fil, sep="\t", header=TRUE, quote="")

summary(WHS_data[,c(1,4,10)])
pairs(WHS_data[,c(1,4,10)])

How much [ephemeral] storage does my job have?

Use df -h to display disk size. E.g., in the below example, the job has 92G of disk storage under Avail.

$ df -h $HOME
Filesystem      Size  Used Avail Use% Mounted on
overlay         105G   14G   92G  14% /

How do I cut and paste to and from my Sid Desktop?

Select Site Settingsin your Sid Desktop browser tab:

Site settings in Google Chrome browser

Select Clipboard -> Allow

Clipboard settings: Ask, Allow, and Block

Different operating systems and keyboard configurations map copy and paste differently; but it is generally one of Ctrl-C, Option-C, Alt-C, or ⌘-C for copy (and Ctrl-V, Option-V, Alt-V, or ⌘-V for paste).

How do I connect my Google Drive to my Sid Job?

In the job launcher, select Google Drive under Connected Storage:

Screencast for a demonstration of attaching a Google Drive to a Sid job:

How to connect Google Drive to Sid Job

Will requesting more resources slow my job's performance?

No. A CPU is a CPU and RAM is RAM. Sid does not allocate cheaper, worse-performing hardware based on request size. Additionally, running multiple jobs will not degrade performance. Sid users can run up to eleven jobs without any performance degradation (as each is allocated dedicated resources from AWS).

How do I launch an app from the Sid Dashboard?

When Sid has completed provisioning your desktop environment, a link to it will appear below Access Url in the dashboard:

The Sid Desktop runs LxQT, The Lightweight Qt Desktop Environment. Like all desktop environments, the left-hand corner opens a menu of useful GUI X Windows applications including web browsers, terminal emulators, text editors, LaTeX editors, and more.

System Tools

QTerminal is available under System Tools. It is a multi-tab terminal emulator, which can run command-line applications.

Several terminal emulators, e.g., QTerminal, XTSerm, rxvt are in the System Tools Fedora menu.

Education

GNU Octave is a free alternative to MATLAB available in the Education menu.

GNU Octave and QGIS Desktop in the Fedora Education menu

Office

LyX and TeXstudio are LaTeX authoring tools for academic papers.

LyX and TeXstudio in the Fedora Office menu

Programming

Emacs is a popular text editor available in the Programming menu.

Emacs text editor in the Programming Fedora menu

Internet

The Firefox browser is available in the Internet menu.

Firefox in the Internet Menu

What command-line tools are available in the Sid Desktop?

The Sid Desktop has hundreds of commands pre-installed such as the following:

R
docbook
emacs
gcc
git
gnuplot
imageMagick
java
lua
make
octave
perl
python2
python3
rpm
rxvt
screen
tcl
texlive
texstudio
tix
tk
tmux
vim
zip

The YUM package manager can list, query, and add additional command-line tools to the Sid Desktop.

How do I access my Google Drive files?

For all applications, Sid mounts your Google Drive to the same location: /mnt/google-drive. Each Sid application has similar commands for navigating to this directory location.

{% hint style="warning" %} Google Drive in Sid does not currently support symbolic links. {% endhint %}

Desktop

From QTerminal,cd to your Google Drive's mount point:

QTerminal supports basic POSIX commands

Start your application (e.g., R) and access your Google Drive data files:

Run R language applications from your QTerminal

RStudio

setwd to the attached Google Drive:

setwd to /mnt/google-drive

Your Google Drive files are now visible from the File->Open menu:

RStuduio Open File menu

Jupyter

Python 3

From within a Python Notebook,cd (or %bookmark) to the mount point for your Google Drive:

cd or %bookmark your Google Drive from the Jupyter environment

You are now in your Google Drive's working directory for reading data, e.g.,

Julia

From within a Julia Notebook,cdto the mount point for your Google Drive:

cd to the mount point for your Google Drive

R

From within an R Notebook, setwd to the mount point for your Google Drive:

setwd to the mount point for your Google Drive

How do I manage my Git repository in Google Drive?

Are you sure you don't want to use a Git hosting provider such as GitHub, BitBucket, or BeanStalk? If not, open the directory of your Google Drive File Stream:

The folder icon in the Google Drive File Stream app points to your synced Google Drive

From inside your Google Drive directory on your local computer, you can use standard git commands, and all of the git metadata in your repository will be synced in Google Drive, e.g.,

/Volumes/GoogleDrive/My Drive/my-repo $ git init
Initialized empty Git repository in /Volumes/GoogleDrive/My Drive/my-repo/.git/
/Volumes/GoogleDrive/My Drive/my-repo $ echo 1 2 3 > foo.txt
/Volumes/GoogleDrive/My Drive/my-repo $ git add foo.txt
/Volumes/GoogleDrive/My Drive/my-repo $ git commit -m "Add foo.txt"
[master c947c83] Add foo.txt
 1 file changed, 1 insertion(+)
 create mode 100644 foo.txt
/Volumes/GoogleDrive/My Drive/my-repo $

{% hint style="warning" %} Warning: you can not run git commands of any kind on your Git/Drive repository from within Sid due to limitations of rclone. {% endhint %}

{% hint style="warning" %} Google Drive File Stream will only connect to Google Drive accounts that are part of an enterprise G Suite (for example g.harvard.edu). If you need assistance with accessing Google Drive using some other method you can contact us for support. {% endhint %}

Screen cast showing Git + Google Drive workflow:

Screen cast showing Git + Google Drive workflow:

Is Google Drive essentially a POSIX-compatible file system?

Google Drive in Sid is an object storage system synced by rclone to resemble a file system, but it is lacking some features of a standard POSIX file system (such as symbolic links and file permissions).

Because the features of Google Drive in Sid are not at parity with some POSIX file systems, you may encounter the following problems:

Unexpected File Modifications in Version Control

File modifications between Git and Google Drive may disagree, so for example:

$ git status
Your branch is up to date with 'origin/master'.
nothing to commit, working tree clean

The same directory used in Google Drive shows modifications to a file in Git:

$ git status
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
    modified:   foo

The above discrepancy is due to the different handling of file permissions:

Non-Google drive:

-rwxr-xr-x 1 jane staff 6991 Nov 25 17:04 foo

Google drive (note the differing file permissions):

-rw------- 1 jane staff 6991 Nov 25 17:05 foo

Shebang Issues

Running a script containing a shebang line from your Google Drive directory can cause bad interpreter: Permission denied errors. For example, the below code runs fine in $HOME:

$ cat hello.sh
#!/usr/bin/bash
echo "hello" 
$ ./hello.sh 
hello

The same code fails in Google Drive with bad interpreter: Permission denied:

$ cat /mnt/google-drive/hello.sh
#!/usr/bin/bash
echo "hello"
$ /mnt/google-drive/hello.sh
sh: /mnt/google-drive/hello.sh: /usr/bin/bash: bad interpreter: Permission denied

One workaround is to invoke the shebang from the shell, instead of the first line (#! ) of the script:

$ bash /mnt/google-drive/hello.sh
hello

How do I use rJava in Sid RStudio?

Install the requisite system library packages, install rJava, and run javareconf:

system('sudo apt-get update')
system('sudo apt-get -y install default-jre default-jdk libpcre3-dev liblzma-dev libbz2-dev zlib1g-dev libicu-dev')
install.packages('rJava')
system('sudo R CMD javareconf')

Before you can use rJava, you need to restart R.

To restart R in Rstudio, click the Session menu and select Restart R.

Now you can use rJava:

library('rJava')