Update README
This commit is contained in:
140
README.md
140
README.md
@@ -2,54 +2,66 @@
|
|||||||
|
|
||||||
## First-time login
|
## First-time login
|
||||||
|
|
||||||
1. Ensure an admin has enabled your user account and provided you a username.
|
1. Obtain your username and temporary password from an admin.
|
||||||
2. Login via [`ssh`](#ssh-remote-login): **`ssh username@hartmanlab.genetics.uab.edu`** (default password is your *username*)
|
2. Change your temporary password.
|
||||||
3. You will be prompted to create a new password and then logged out.
|
* Login via [`ssh`](#ssh-remote-login): **`ssh username@hartmanlab.genetics.uab.edu`**
|
||||||
4. Login again using your new password: **`ssh username@hartmanlab.genetics.uab.edu`**
|
* Set a new password when prompted — you will be logged out automatically.
|
||||||
5. Change the default `samba` password (default password is also your *username*): `smbpasswd`
|
3. Change your temporary samba password.
|
||||||
6. *Optional*: Generate a public-private keypair on your client and copy it to the server for faster and more secure logins.
|
* Login via [`ssh`](#ssh-remote-login): **`ssh username@hartmanlab.genetics.uab.edu`**
|
||||||
|
* Change your `samba` password (default: *same temporary password*): `smbpasswd`
|
||||||
|
4. *Optional*: Set up key-based authentication for faster, more secure logins:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa_4096
|
ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa_4096
|
||||||
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
|
||||||
```
|
```
|
||||||
|
5. Read the `ssh` login message for server status updates. See [Troubleshooting](#troubleshooting) and [GitHub Resources](#github-resources) for help.
|
||||||
|
|
||||||
## Notes
|
## `x2goclient` remote desktop
|
||||||
|
|
||||||
* Read the `ssh` login message for ongoing server status updates.
|
Connect to a persistent remote desktop using [`x2goclient`](https://wiki.x2go.org/doku.php/download:start) (Linux/Windows/OSX).
|
||||||
* See [Troubleshooting](#troubleshooting) and [Resources](#github-resources) for help.
|
|
||||||
* Change your user password: `passwd`
|
Sessions can be paused or suspended from the client window. Create multiple sessions with different quality settings for different network conditions.
|
||||||
* Change your samba password: `smbpasswd`
|
|
||||||
|
### `x2goclient` configuration
|
||||||
|
|
||||||
|
* **Session tab**
|
||||||
|
* Session name: Hartman Lab Server
|
||||||
|
* Host: `hartmanlab.genetics.uab.edu`
|
||||||
|
* Login: *`username`*
|
||||||
|
* SSH port: `22`
|
||||||
|
* Session type: **[MATE](https://mate-desktop.org/)** (provides the best experience with X2Go)
|
||||||
|

|
||||||
|
|
||||||
|
* **Connection tab**
|
||||||
|
* Set connection speed to **LAN** (on-campus) or **WAN** (off-campus); leave compression as *adaptive*.
|
||||||
|
* **Input/output tab**
|
||||||
|
* If automatic resizing fails (common on HiDPI), set a manual startup resolution. For scaling issues, try DPI 96.
|
||||||
|
* For keyboard mapping issues (e.g., broken arrow keys), select *Configure Keyboard* and keep the defaults.
|
||||||
|
* **Media tab**
|
||||||
|
* Disable sound support to prevent pulseaudio log spam.
|
||||||
|
* **Shared folders tab**
|
||||||
|
* Browse to a folder, add it to the share, and select *automount*. Shared folders appear at `/media/disk/<share_name>`.
|
||||||
|

|
||||||
|
|
||||||
## `ssh` remote login
|
## `ssh` remote login
|
||||||
|
|
||||||
Connect to the server remotely using the command line.
|
* Linux/OSX: **`ssh username@hartmanlab.genetics.uab.edu`**
|
||||||
|
* Windows: [PuTTY](http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html)
|
||||||
* Linux/OSX
|
* Android: [JuiceSSH](https://juicessh.com/) or [Termux](https://termux.dev/)
|
||||||
* **`ssh username@hartmanlab.genetics.uab.edu`**
|
|
||||||
* Windows
|
|
||||||
* [PuTTY](http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html)
|
|
||||||
* Android
|
|
||||||
* [JuiceSSH](https://juicessh.com/)
|
|
||||||
* [Termux](https://termux.dev/)
|
|
||||||
|
|
||||||
### `ssh` X forwarding
|
### `ssh` X forwarding
|
||||||
|
|
||||||
Launch graphical programs locally on a client that execute on the server.
|
Run graphical programs on the server with local display output.
|
||||||
|
|
||||||
|
* Linux/OSX: `ssh -X username@hartmanlab.genetics.uab.edu`
|
||||||
|
* Windows: Install [Xming](http://www.straightrunning.com/XmingNotes/) and enable X11 forwarding in [PuTTY](http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html) options.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
* Linux/OSX
|
|
||||||
* Enable X forwarding during ssh login: `ssh -X username@hartmanlab.genetics.uab.edu`
|
|
||||||
* Windows
|
|
||||||
* Install [Xming](http://www.straightrunning.com/XmingNotes/) and enable X11 forwarding in the [PuTTY](http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html) options.
|
|
||||||
|
|
||||||
## `sftp` remote filesharing
|
## `sftp` remote filesharing
|
||||||
|
|
||||||
Browse and manage files stored on the server.
|
* File manager (*Caja*): enter `sftp://username@hartmanlab.genetics.uab.edu/home/username` in the URL bar
|
||||||
|
|
||||||
* File manager
|
|
||||||
* Enter the `sftp://` address into your file manager's url bar, such as: `sftp://username@hartmanlab.genetics.uab.edu/home/username`
|
|
||||||
|
|
||||||

|

|
||||||
* [Filezilla](https://filezilla-project.org/download.php?type=client) (Linux/OSX/Windows)
|
* [Filezilla](https://filezilla-project.org/download.php?type=client) (Linux/OSX/Windows)
|
||||||
@@ -60,58 +72,28 @@ Browse and manage files stored on the server.
|
|||||||
|
|
||||||
## `samba` remote filesharing
|
## `samba` remote filesharing
|
||||||
|
|
||||||
Another method to browse and manage files stored on the server.
|
The server provides two `samba` shares (credentials: server username/password):
|
||||||
|
|
||||||
The server provides two `samba` shares:
|
|
||||||
|
|
||||||
1. Shared data array (`/mnt/data`): `\\username\\data`
|
1. Shared data array (`/mnt/data`): `\\username\\data`
|
||||||
2. User home directory (`/home/username`): `\\username\\username`
|
2. User home directory (`/home/username`): `\\username\\username`
|
||||||
|
|
||||||
The default `samba` credentials are the same as your server username and password (unless modified with `smbpasswd`).
|
**Note:** Samba shares are only available on-campus. For off-campus access, use SSH tunneling: `ssh -L 1445:localhost:445 user@remote-server`
|
||||||
|
|
||||||
**Note:** Samba share are only available on-campus unless also using ssh tunneling: `ssh -L 1445:localhost:445 user@remote-server`
|
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
## `x2goclient` remote desktop
|
## Robot computer remote desktop
|
||||||
|
|
||||||
Launch a persistent remote desktop session for graphical applications using [`x2goclient`](https://wiki.x2go.org/doku.php/download:start) (Linux/Windows/OSX).
|
* In X2Go, open *Applications > Internet > Remote Viewer*, enter [`vnc://robot:5900`](vnc://robot:5900) in *Connection Address*, and click Connect.
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
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.
|
|
||||||
|
|
||||||
### `x2goclient` configuration
|
|
||||||
|
|
||||||
* Session tab
|
|
||||||
* Session name: Hartman Lab Server
|
|
||||||
* Host: `hartmanlab.genetics.uab.edu`
|
|
||||||
* Login: *`username`*
|
|
||||||
* SSH port: `22`
|
|
||||||
* Session type: **[MATE](https://mate-desktop.org/)** (provides the best experience with X2Go)
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
* Connection tab
|
|
||||||
* Set the connection speed to LAN when connecting from within the UAB network and WAN when outside of the UAB network
|
|
||||||
* Compression settings should be left unchanged or set to *adaptive*.
|
|
||||||
* Input/output tab
|
|
||||||
* If automatic window resizing is not working properly (common on HiDPI monitors), set the desired startup window resolution size manually. For full screen sessions, this should match your client display. In case of scaling issues, play with the DPI setting, 96 is a sane starting value.
|
|
||||||
* If there are any issues with keyboard mapping (ex. the arrow keys are not working), select *Configure Keyboard* and leave the default selected settings.
|
|
||||||
* Media tab
|
|
||||||
* Disable sound support. This will prevent pulseaudio from spamming the server logs.
|
|
||||||
* Shared folders tab
|
|
||||||
* Select folders on the client to be shared with the server during a session. Browse to the chosen folder, add it to the share, and select *automount*.
|
|
||||||
* These folders will then appear on the server under `/media/disk/<share_name>`.
|
|
||||||

|
|
||||||
|
|
||||||
## Robot computer remote desktop access
|
|
||||||
|
|
||||||
* In an X2Go session go to *Applications>Internet>Remote Viewer>Connection Address* and enter [`vnc://192.168.16.101:5900`](vnc://192.168.16.101:5900).
|
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
## Webcam robot monitoring
|
## Robot computer remote filesharing
|
||||||
|
|
||||||
|
* In X2Go, open *Applications > System Tools > Caja*, enter [`ftp://robot`](ftp://robot) in the Location bar. Open a second Caja window to drag and drop projects to `/mnt/data`.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Robot webcam
|
||||||
|
|
||||||
* In an X2Go session, via a web browser at [`http://localhost:9999`](http://localhost:9999)
|
* In an X2Go session, via a web browser at [`http://localhost:9999`](http://localhost:9999)
|
||||||
* Locally via a web browser via an SSH tunnel: `ssh -f username@hartmanlab.genetics.uab.edu -L 9999:localhost:9999 -N`
|
* Locally via a web browser via an SSH tunnel: `ssh -f username@hartmanlab.genetics.uab.edu -L 9999:localhost:9999 -N`
|
||||||
@@ -137,7 +119,7 @@ X2Go sessions can be paused or suspended from the X2Go client window. Multiple s
|
|||||||
* [`distrobox`](https://github.com/89luca89/distrobox) for custom environments
|
* [`distrobox`](https://github.com/89luca89/distrobox) for custom environments
|
||||||
* ...and much more (see `dnf list --installed` for installed packages). [Open an issue](https://github.com/UAB-Hartman-Lab/server/issues) for missing or out-of-date software.
|
* ...and much more (see `dnf list --installed` for installed packages). [Open an issue](https://github.com/UAB-Hartman-Lab/server/issues) for missing or out-of-date software.
|
||||||
|
|
||||||
## Backing up your data
|
## Backing up data
|
||||||
|
|
||||||
`/mnt/data` is snapshotted daily to `/mnt/backup/data-backup` and rolling backups are retained for six months.
|
`/mnt/data` is snapshotted daily to `/mnt/backup/data-backup` and rolling backups are retained for six months.
|
||||||
|
|
||||||
@@ -146,29 +128,29 @@ X2Go sessions can be paused or suspended from the X2Go client window. Multiple s
|
|||||||
* Copy a user's `$HOME` directory locally to `/home-backup` from a client: `rsync -azH --delete username@hartmanlab.genetics.uab.edu:/home/username/ home-backup/`
|
* Copy a user's `$HOME` directory locally to `/home-backup` from a client: `rsync -azH --delete username@hartmanlab.genetics.uab.edu:/home/username/ home-backup/`
|
||||||
* Copy a shared directory locally to the current directory from a client: `rsync -azh username@hartmanlab.genetics.uab.edu:/mnt/data/scans/20250723_roessler_project .`
|
* Copy a shared directory locally to the current directory from a client: `rsync -azh username@hartmanlab.genetics.uab.edu:/mnt/data/scans/20250723_roessler_project .`
|
||||||
|
|
||||||
Backups can also be initiated *from* the server using a variety of pre-installed backup tools (`rsnapshot`, `borgbackup`, ...).
|
Backups can also be run from the server using pre-installed tools (`rsnapshot`, `borgbackup`, ...).
|
||||||
|
|
||||||
## Troubleshooting
|
## Troubleshooting
|
||||||
|
|
||||||
Read the `ssh` login message (`cat /etc/motd`) for server status and updates. [Open an issue](https://github.com/UAB-Hartman-Lab/server/issues) if there is one.
|
Read the `ssh` login message (`cat /etc/motd`) for server status and updates. [Open an issue](https://github.com/UAB-Hartman-Lab/server/issues) if there is one.
|
||||||
|
|
||||||
* Can't login via `ssh`
|
* Can't login via `ssh`
|
||||||
* Make sure that you are using the correct username and caps lock is off.
|
* Verify your username and that caps lock is off.
|
||||||
* Three consecutive failed logins from an off-campus computer will ban the IP for one hour.
|
* Three consecutive failed logins from off-campus will ban the IP for one hour.
|
||||||
* Request an administrator to run: `sudo script-user-unban <ip_address>` to unban your IP address
|
* Have an admin run: `sudo script-user-unban <ip_address>`
|
||||||
* Request an administrator to run: `sudo script-user-reset-password <username>` to reset your login password
|
* Have an admin run: `sudo script-user-reset-password <username>`
|
||||||
* Can't login via X2Go
|
* Can't login via X2Go
|
||||||
* Login via `ssh` and reset corrupt X2Go sessions: `script-user-reset-x2go`
|
* Login via `ssh` and reset corrupt X2Go sessions: `script-user-reset-x2go`
|
||||||
* X2Go desktop is corrupted (desktop not similar to [screenshot](#x2goclient-remote-desktop))
|
* X2Go desktop is corrupted (desktop not similar to [screenshot](#x2goclient-remote-desktop))
|
||||||
* Login via ssh and reset your desktop: `script-user-reset-desktop`
|
* Login via ssh and reset your desktop: `script-user-reset-desktop`
|
||||||
* File permissions issues
|
* File permissions issues
|
||||||
* Use `ls -al` or add permissions columns to your file manager to double-check the file permissions.
|
* Check permissions with `ls -al` or your file manager.
|
||||||
* `/mnt/data` uses shared group permissions, usually:
|
* `/mnt/data` uses shared group permissions, usually:
|
||||||
* Group: `smbgrp`
|
* Group: `smbgrp`
|
||||||
* User: *username* that created/owns the file (or `smbgrp`)
|
* User: *username* that created/owns the file (or `smbgrp`)
|
||||||
* Permissions: `2775`
|
* Permissions: `2775`
|
||||||
* To change: `chown -R username:smbgrp <dir> && chmod 2775 <dir>`
|
* To change: `chown -R username:smbgrp <dir> && chmod 2775 <dir>`
|
||||||
* If you do not have sufficient privileges to alter shared file permissions, ask an admin to fix or make a copy.
|
* If you lack the necessary privileges, ask an admin to fix permissions or make a copy.
|
||||||
* Program runs slowly in paused X2Go session
|
* Program runs slowly in paused X2Go session
|
||||||
* Run program via `ssh` in a [`tmux`](https://en.wikipedia.org/wiki/Tmux) or [`screen`](https://www.gnu.org/software/screen/) session instead.
|
* Run program via `ssh` in a [`tmux`](https://en.wikipedia.org/wiki/Tmux) or [`screen`](https://www.gnu.org/software/screen/) session instead.
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 27 KiB |
BIN
docs/imgs/robot_fileshare.png
Normal file
BIN
docs/imgs/robot_fileshare.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 534 KiB |
Reference in New Issue
Block a user