Compare commits

...

6 Commits

Author SHA1 Message Date
9451d8f923 Update manual icon 2025-07-24 00:13:04 -04:00
a7e1cc4a70 Update manual icon 2025-07-24 00:12:06 -04:00
e188a66334 chmod manual links 2025-07-23 23:49:37 -04:00
cd18a0abad Make manual install safer 2025-07-23 23:38:23 -04:00
56481c584a Update script-deploy-manual 2025-07-23 23:32:33 -04:00
16fbd908a2 Fix links to manual 2025-07-23 22:55:47 -04:00
6 changed files with 29 additions and 50 deletions

View File

@@ -14,8 +14,6 @@
ssh-copy-id -i ~/.ssh/id_rsa_4096.pub username@hartmanlab.genetics.uab.edu
```
Users may need to add their keypair to PuTTy/Filezilla/WinSCP manually.
## `ssh`
Connect to the server remotely using the command line.
@@ -25,8 +23,8 @@ Connect to the server remotely using the command line.
* Windows
* [PuTTY](http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html)
* Android
* JuiceSSH
* Termux
* [JuiceSSH](https://juicessh.com/)
* [Termux](https://termux.dev/)
### X forwarding
@@ -46,14 +44,16 @@ Browse and manage files stored on the server.
* Linux/OSX/Windows
* [Filezilla](https://filezilla-project.org/download.php?type=client)
![Filezilla](docs/imgs/filezilla.gif)
![Filezilla](docs/imgs/filezilla.png)
* [sshfs](https://www.digitalocean.com/community/tutorials/how-to-use-sshfs-to-mount-remote-file-systems-over-ssh)
* Windows
* [WinSCP](https://winscp.net/eng/index.php)
## `samba`
Samba file shares can be mounted cross-platform as if th server data existed locally. The server provides two shares:
Mount `samba` file shares on any platform as if the server data was on a local drive.
The server provides two `samba` shares:
1. Shared data array (`/mnt/data`): `\\username\\data`
2. User's `$HOME` directory: `\\username\\username`
@@ -62,7 +62,9 @@ The default `samba` credentials are the same as your server username and passwor
## `x2goclient`
Users can access an X2Go remote desktop session using `x2goclient` from a client. `x2goclient` is available for Linux/OSX/Windows from the [X2Go website](http://wiki.x2go.org/doku.php) or by installing the `x2goclient` package.
![x2go_desktop](docs/imgs/x2go_desktop.png)
Access an X2Go remote desktop session using the X2Go `x2goclient` available for Linux/OSX/Windows from the [X2Go website](http://wiki.x2go.org/doku.php) or by installing the `x2goclient` package.
X2Go sessions can be paused or suspended from the X2Go client window. Multiple sessions can be created on the client, making it possible to select alternate quality settings based on location and bandwidth.
@@ -91,7 +93,7 @@ X2Go sessions can be paused or suspended from the X2Go client window. Multiple s
## Robot computer remote desktop access
In an X2Go session, go to *Applications>Internet>Remote Viewer>Connection>New* and enter `vnc://192.168.16.101:5900`
In an X2Go session, go to *Applications>Internet>Remote Viewer>Connection>New* and enter [`vnc://192.168.16.101:5900`](vnc://192.168.16.101:5900)
## Webcam robot monitoring

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

BIN
docs/imgs/filezilla.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

BIN
docs/imgs/x2go_desktop.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

View File

@@ -1,57 +1,34 @@
#!/usr/bin/env bash
# This script installs the Hartman Lab Server Manual to each user's desktop
# Usage: script-deploy-manual USERNAME|--all
# Copyright 2021-2025 Bryan C. Roessler
# Licensed under the Apache License, Version 2.0
p="${BASH_SOURCE[0]%/*}"; [[ -r $p/script-functions ]] && . "$p"/script-functions || exit 1
script-deploy-manual() {
local user_arg="$1"
local manual_url="https://docs.google.com/document/d/1K_KwAlv8Zljmy-enwmhT6gMTFutlAFglixvpLGBx0VY"
local remove=("manual.pdf" "manual.odt" "Notes.pdf" "Notes.odt" \
manual_url="https://github.com/UAB-Hartman-Lab/server"
remove=("manual.pdf" "manual.odt" "Notes.pdf" "Notes.odt" \
"README.html" "Link to Manual.desktop" "manual-images" \
"manual.html" "Manual.desktop" "manual.desktop")
local users=()
if [[ -z "$user_arg" || "$user_arg" == "--help" ]]; then
cat <<-EOF
Usage: script-deploy-manual USERNAME|--all
USERNAME: Specify a single user's name.
--all: Deploy the manual to all users with a Desktop directory.
EOF
return 1
fi
is_root
if [[ "$user_arg" == "--all" ]]; then
for d in /home/*; do [[ -d $d ]] && users+=("${d##*/}"); done
else
users+=("$user_arg")
fi
for user in "${users[@]}"; do
desktop="/home/$user/Desktop"
[[ -d $desktop ]] || continue
echo "Scanning $desktop for old manuals"
for f in "${remove[@]}"; do
if [[ -e $desktop/$f || -L $desktop/$f ]]; then
echo "Removing $desktop/$f"
rm -f "${desktop:?}/$f"
fi
done
echo "Installing manual to $desktop/manual.desktop"
for desktop in /home/*/Desktop; do
[[ -d $desktop ]] || continue
echo "Removing old manuals from $desktop"
for f in "${remove[@]}"; do
[[ -z $f ]] && continue
if [[ -e $desktop/$f || -L $desktop/$f ]]; then
echo "Removing $desktop/$f"
rm -f -- "${desktop:?}/$f"
fi
done
echo "Installing manual to $desktop/manual.desktop"
cat <<-EOF > "$desktop/manual.desktop"
[Desktop Entry]
Encoding=UTF-8
Name=Hartman Lab Server Manual
Type=Link
URL=$manual_url
Icon=text-html
Icon=help-browser
EOF
done
}
# Allow script to be safely sourced
if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then
script-deploy-manual "$@"
exit
fi
chmod 644 "$desktop/manual.desktop"
done

View File

@@ -136,7 +136,7 @@ print_motd() {
cat <<-EOF
Links (ctrl+click to follow)
Server Manual.........: https://tinyurl.com/jjz9h6fr
Server Manual.........: https://github.com/UAB-Hartman-Lab/server
Cockpit (for admins)..: http://localhost:9090
Robot Camera..........: http://localhost:9999
JupyterLab............: http://localhost:8888