SMITH utilities for local-server interaction
This set of commands are made to make SMITH access easier. All of these are coded in python so it is compatible with both linux, macos, and windows (via wsl).
KNOWN ADVANTAGES:
- You have an ssh shortcut
- Remote working is smoother due to local rendering/processing as opposed to being rendered in smith
- Personal software (Visual studio code) and environment (python environment and compilers) is used.
- SMITH file system can be mounted as a network drive.
KNOWN DISADVANTAGES: 1.
- SSHFS
- FUSERMOUNT/MACFUSE
- PYTHON
- SSH
- Registered sshid
For mac OS,
SSHFS and MACFUSE can be downloaded and installed using the guide https://sbgrid.org/corewiki/faq-sshfs.mdFor Linux, Just use the command
sudo apt install -y sshfs fuse
For macos' SSHFS and FUSERMOUNT go to https://sbgrid.org/corewiki/faq-sshfs.md and https://osxfuse.github.io/
For Linux and WSL, use package manager to install these (i.e. apt install
)
Miniconda is a good python installer.
$ git clone https://github.com/kimrojas/smith_utils
$ echo 'export PATH=/home/user/smith_utils:$PATH' >> ~/.bashrc
The utility software will ask you for details. Simply use the command to initialize your login details:
$ smith_user_setup
The rough diagram of the ssh connection based on user input is:
- smith_help
- smith_user_setup
- smith_connect
- smith_share
- smith_kstat
- smith_avail
Description:
Shows Basic Utility descriptions
Usage:
smith_help
Description:
Creates a configuration file about ssh login details to smith
Usage:
smith_user_setup
Description:
Initiates an ssh login to smith with smart switch between using a local vs global ssh command, prioritizing local if both are avaialale.
Note: Global ssh command requires a running `smith_tunnel` instance in another window.
Usage:
smith_connect
Description:
Creates a connection instance to Osaka University network thus creating a tunnel that allows connection to smith. A running instance of `smith_tunnel` is required for out-of-university logins.
Usasge:
smith_tunnel
Description:
Mounts the user's HOME DIRECTORY in smith to the local machine ($HOME/smith_server). This reduces the amount of lag experienced when using X11 forwarding from smith
(i.e. xcrysden from smith forwards image, with smith_share smith only forwards the file
but uses local machine's xcryden).
The user also has the advantage of using personal environment
(i.e. local python environment or text editor usage for data processing)
Usage:
smith_share [ mount | unmount ]
Description:
Sends a query command to smith about the status of the user's jobs.
COMMAND = 'qstat -u <username>'
Usage:
smith_kstat
Description:
Sends a query command to smith check on available nodes.
Usage:
smith_avail
Description:
Sends a qsub command to smith with explicit login. Use in conjunction with smith_share.
Usage:
smith_qsub [qsub options]