<<

Viewing and editing text files

Print entire content of file ​ ​ file Similar to , but with additional features Lighthouse Cheat Sheet ​ Guide to general () and Slurm commands file Print first 10 lines of file ​ ​ ​ ​ ​ ​ ​

file Print last 10 lines of file ​ ​ ​ Accessing Lighthouse nano Simple, easy to use text editor

Logging in from a (Duo required) vim Minimalist yet powerful text editor ssh [email protected] ​ ​ emacs Extensible and customizable text editor

Transferring files between Lighthouse and your system scp source [email protected]:target ​ ​ ​ Advanced file management scp -r source [email protected]:target ​ ​ ​ scp [email protected]:source target Change read//execute permissions ​ ​ ​ ​ ​

cmd List the full file of a command GUI Clients ​ cmd List all related file paths (binary, source, PuTTY SSH client for Windows ​ manual, etc.) of a command WinSCP SCP client for Windows List size of and its subdirectories ​ FileZilla FTP client for Windows, Mac, and Linux Find file in a directory

Basic Linux file management Aliases and system variables man command Display the manual page for command ​ ​ Create to command Print out the present Lists all environment variables List the files in the current directory export var=val Create $var with value ​ ​ ​ ​ ​ ls -lh Show long, human-readable listing val ls dir List files inside directory dir $var Print the value of variable $var ​ ​ ​ ​ file Delete file .bashrc File that defines aliases and variables ​ ​

dir Create empty directory called dir ​ ​ Input and output redirection dir Remove empty directory dir ​ ​ $(command) Runs command first, then inserts output to the rm -r dir Remove directory dir and all contents ​ ​ ​ ​ ​ ​ ​ ​ rest of the overall command dir Change working directory to dir ​ ​ < Standard input redirection cd .. Change working directory to parent > Standard output redirection cd Change working directory to home 2> Standard error redirection ls List the files in the current directory 2>&1 Standard error to standard output redirection file1 file2 file1 as file2 cmd1 | cmd2 Pipe the output of cmd1 to cmd2 ​ ​ ​ ​ ​ ​ ​ ​ ​ cp file1 dir Copy file1 into directory dir ​ ​ ​ ​ Filters file1 file2 Rename file1 as file2 ​ ​ ​ ​ Word, line, and character count mv file1 dir file1 into directory dir ​ ​ ​ ​ Find and text matching a regular ~ (tilde) expression . (period) Current (working) directory Sort input .. (2 periods) Parent directory Filter duplicate lines wget URL Download a file from Internet URL ​ ​ Cut specific fields or columns unzip file.zip Extract a ZIP file ​ ​ Stream editor for search and xzf file Extract a gzip compressed tarball (common ​ Extensive tool for complex filtering tasks extensions, .tar.gz and .tgz) ​ ​ ​ ​ arc-ts.umich.edu/lighthouse Revised 1/2020 ​ Lighthouse directories #SBATCH directives and #PBS counterparts

/home/uniqname For use with running jobs, 80 GB quota #SBATCH #PBS Description ​ --job-name=name -N name Job name /tmp Small file reads/writes, deleted after 10 days ​ ​ --account=name -A name Account to charge /scratch Large file reads/writes, purged periodically ​ ​ --partition=name -q name Submit to partition /afs Only on login node, 10 GB backed up ​ ​ (different for each PI)

--=-hh:mm:ss -l walltime=time Time limit (walltime) Lmod ​ ​ --nodes=count -l nodes=count Number of nodes module keyword string Search for module names or ​ ​ ​ descriptions matching string --tasks-per-node=count -l ppn=count Processes per node ​ ​ ​ module spider string Search for modules matching string --cpus-per-task=count n/a CPU cores per ​ ​ ​ module avail Show modules that can be loaded --mem=count -l mem=count RAM per node (e.g. ​ ​ now 1000M, 1G)

module load module Load module in the environment --mem-per-cpu=count -l pmem=count RAM per CPU core ​ ​ ​ ​ ​ module show module Show the and variables set by --gres=gpu:count -l gpus=count GPUs per node ​ ​ ​ module --nodelist=nodes -l nodes=nodes Request nodes ​ ​ module list List currently loaded modules --array=arrayspec -t arrayspec Define job array ​ ​ module unload module Remove module from environment --output=%x-%j.log -o filepath Standard output in run ​ ​ ​ ​ ​ directory, formatted: module purge Remove all modules from jobName-jobID.log environment --error=%x-%j-E.log -e filepath Standard error log module save collection Save all currently loaded modules to ​ ​ ​ collection --export=ALL -V Copy environment

--export=var=val -v var=val Copy env variable module savelist Return all saved module collections ​ ​ ​ ​ ​ ​ --depend=var:jobid - Job dependency states module describe Return all modules in collection ​ ​ ​ ​ depend=var:jobid (var): after, afterok, collection ​ ​ ​ ​ ​ afterany, afternotok module restore Restore all modules from collection ​ ---user=email -M email Email for job alerts collection ​ ​ --mail-=type -m type Email alert types: BEGIN, ​ ​ END, NONE, FAIL, Slurm REQUEUE

sbatch Submit a job script filename --exclude=nodes n/a Nodes to avoid ​ ​ ​ squeue -u uniqname Show job queue for user uniqname ​ ​ scancel jobid Delete job jobid ARC-TS custom commands ​ ​ scontrol hold jobid Hold job jobid my_usage Usage in CPU minutes ​ ​ scontrol release jobid Release job jobid my_accounts Show account membership and ​ ​ resource limits sinfo Cluster status home-quota Show user disk quota and usage srun Launch parallel job step maxwalltime Show walltime available for jobs sacct Display job accounting information (including upcoming maintenance)

Slurm Environment Variables ARC-TS Documentation & Support

SLURM_JOBID Job ID Lighthouse User Guide: https://arc-ts.umich.edu/lighthouse/user-guide SLURM_SUBMIT_DIR Job submission directory Email [email protected] for further Lighthouse support SLURM_SUBMIT_HOST from which job was submitted ​ ​ ​ Sensitive data should not be stored or processed on Lighthouse SLURM_JOB_NODELIST Node names allocated to job ​ ​

SLURM_ARRAY_TASK_ID Task ID within job array SLURM_JOB_PARTITION Job partition

arc-ts.umich.edu/lighthouse Revised 1/2020 ​