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 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` ## `ssh`
Connect to the server remotely using the command line. Connect to the server remotely using the command line.
@@ -25,8 +23,8 @@ Connect to the server remotely using the command line.
* Windows * Windows
* [PuTTY](http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html) * [PuTTY](http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html)
* Android * Android
* JuiceSSH * [JuiceSSH](https://juicessh.com/)
* Termux * [Termux](https://termux.dev/)
### X forwarding ### X forwarding
@@ -46,14 +44,16 @@ Browse and manage files stored on the server.
* Linux/OSX/Windows * Linux/OSX/Windows
* [Filezilla](https://filezilla-project.org/download.php?type=client) * [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) * [sshfs](https://www.digitalocean.com/community/tutorials/how-to-use-sshfs-to-mount-remote-file-systems-over-ssh)
* Windows * Windows
* [WinSCP](https://winscp.net/eng/index.php) * [WinSCP](https://winscp.net/eng/index.php)
## `samba` ## `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` 1. Shared data array (`/mnt/data`): `\\username\\data`
2. User's `$HOME` directory: `\\username\\username` 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` ## `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. 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 ## 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 ## 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 #!/usr/bin/env bash
# This script installs the Hartman Lab Server Manual to each user's desktop # 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 # Copyright 2021-2025 Bryan C. Roessler
# Licensed under the Apache License, Version 2.0 # Licensed under the Apache License, Version 2.0
p="${BASH_SOURCE[0]%/*}"; [[ -r $p/script-functions ]] && . "$p"/script-functions || exit 1
script-deploy-manual() { manual_url="https://github.com/UAB-Hartman-Lab/server"
local user_arg="$1" remove=("manual.pdf" "manual.odt" "Notes.pdf" "Notes.odt" \
local manual_url="https://docs.google.com/document/d/1K_KwAlv8Zljmy-enwmhT6gMTFutlAFglixvpLGBx0VY"
local remove=("manual.pdf" "manual.odt" "Notes.pdf" "Notes.odt" \
"README.html" "Link to Manual.desktop" "manual-images" \ "README.html" "Link to Manual.desktop" "manual-images" \
"manual.html" "Manual.desktop" "manual.desktop") "manual.html" "Manual.desktop" "manual.desktop")
local users=()
if [[ -z "$user_arg" || "$user_arg" == "--help" ]]; then is_root
cat <<-EOF
Usage: script-deploy-manual USERNAME|--all
USERNAME: Specify a single user's name. for desktop in /home/*/Desktop; do
--all: Deploy the manual to all users with a Desktop directory. [[ -d $desktop ]] || continue
EOF echo "Removing old manuals from $desktop"
return 1 for f in "${remove[@]}"; do
fi [[ -z $f ]] && continue
if [[ -e $desktop/$f || -L $desktop/$f ]]; then
if [[ "$user_arg" == "--all" ]]; then echo "Removing $desktop/$f"
for d in /home/*; do [[ -d $d ]] && users+=("${d##*/}"); done rm -f -- "${desktop:?}/$f"
else fi
users+=("$user_arg") done
fi echo "Installing manual to $desktop/manual.desktop"
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"
cat <<-EOF > "$desktop/manual.desktop" cat <<-EOF > "$desktop/manual.desktop"
[Desktop Entry] [Desktop Entry]
Encoding=UTF-8 Encoding=UTF-8
Name=Hartman Lab Server Manual Name=Hartman Lab Server Manual
Type=Link Type=Link
URL=$manual_url URL=$manual_url
Icon=text-html Icon=help-browser
EOF EOF
done chmod 644 "$desktop/manual.desktop"
} done
# Allow script to be safely sourced
if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then
script-deploy-manual "$@"
exit
fi

View File

@@ -136,7 +136,7 @@ print_motd() {
cat <<-EOF cat <<-EOF
Links (ctrl+click to follow) 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 Cockpit (for admins)..: http://localhost:9090
Robot Camera..........: http://localhost:9999 Robot Camera..........: http://localhost:9999
JupyterLab............: http://localhost:8888 JupyterLab............: http://localhost:8888