From bff68aa4e1225f601e04f489944765fe74709316 Mon Sep 17 00:00:00 2001 From: Bryan Roessler Date: Thu, 24 Jul 2025 01:46:47 -0400 Subject: [PATCH] Add manual to skel --- README.md | 8 ++++---- config/etc/skel/Desktop/manual.desktop | 6 ++++++ docs/imgs/samba.png | Bin 0 -> 22016 bytes scripts/usr/local/bin/script-user-add | 13 +++++++------ 4 files changed, 17 insertions(+), 10 deletions(-) create mode 100644 config/etc/skel/Desktop/manual.desktop create mode 100644 docs/imgs/samba.png diff --git a/README.md b/README.md index 9484be33..0daf65db 100644 --- a/README.md +++ b/README.md @@ -2,9 +2,9 @@ ## First-time login -1. Ensure an admin has enabled your user account and provided a username. +1. Ensure an admin has enabled your user account and provided you a username. 2. Login via [`ssh`](#ssh): `ssh username@hartmanlab.genetics.uab.edu` (default password is your *username*) -3. You will be prompted to create a new password and then logged out +3. You will be prompted to create a new password and then logged out. 4. Login again using your new password: `ssh username@hartmanlab.genetics.uab.edu` 5. Change the default `samba` password (default password is also your *username*): `smbpasswd` 6. *Optional*: Generate a public-private keypair on your client and copy it to the server for faster and more secure logins. @@ -123,7 +123,7 @@ In an X2Go session, go to *Applications>Internet>Remote Viewer>Connection Addres * [`distrobox`](https://github.com/89luca89/distrobox) for custom environments * ...and much more ([open an issue](https://github.com/UAB-Hartman-Lab/server/issues) for software requests) -## Data backup +## Data backups [`rsync`](https://linux.die.net/man/1/rsync) is recommended for periodically backing up user files to a local client. @@ -147,7 +147,7 @@ There are other tools installed for initiating backups *from* the server, such a * [Explainshell](https://explainshell.com/) * [UAB Cheaha](https://docs.uabgrid.uab.edu/wiki/Cheaha_GettingStarted) -## Platform +## Hardware Platform * AlmaLinux 9.6 w/ Linux 6.1 LTS Hyperscale SIG kernel * Intel Xeon X99 E5-2650v4 12-core CPU diff --git a/config/etc/skel/Desktop/manual.desktop b/config/etc/skel/Desktop/manual.desktop new file mode 100644 index 00000000..6e0abb3e --- /dev/null +++ b/config/etc/skel/Desktop/manual.desktop @@ -0,0 +1,6 @@ +[Desktop Entry] +Encoding=UTF-8 +Name=Hartman Lab Server Manual +Type=Link +URL=https://github.com/UAB-Hartman-Lab/server +Icon=help-browser diff --git a/docs/imgs/samba.png b/docs/imgs/samba.png new file mode 100644 index 0000000000000000000000000000000000000000..830ce16e0ef482c1106d5332a4e1942563a2c065 GIT binary patch literal 22016 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 literal 0 HcmV?d00001 diff --git a/scripts/usr/local/bin/script-user-add b/scripts/usr/local/bin/script-user-add index f6f7b60d..401d36bf 100755 --- a/scripts/usr/local/bin/script-user-add +++ b/scripts/usr/local/bin/script-user-add @@ -4,14 +4,13 @@ # Licensed under the Apache License, Version 2.0 p="${BASH_SOURCE[0]%/*}"; [[ -r $p/script-functions ]] && . "$p"/script-functions || exit 1 -echo "Usage: sudo $0 [username] [password]" +echo "Usage: sudo $0 [username]" is_root case $# in - 0) user=$(prompt user); password=$(prompt password) ;; - 1) user="$1"; password=$(prompt password) ;; - 2) user="$1"; password="$2" ;; + 0) user=$(prompt user) ;; + 1) user="$1" ;; *) echo "Too many arguments provided"; exit 1 ;; esac @@ -19,9 +18,12 @@ useradd_cmd=(useradd -m -U) if id -u "$user" &>/dev/null; then ask_ok "User $user exists. Run script-user-remove first?" || exit $? - "$p/script-user-remove" "$user" || exit $? + script-user-remove "$user" || exit $? fi +# Generate random temporary password to provide to user +password=$(tr -dc 'A-HJ-NP-Za-km-z2-9'