diff --git a/.bash_completion.d/server-backup b/.bash_completion.d/server-backup
new file mode 100644
index 0000000000000000000000000000000000000000..54b91cda9e77a4ffa88abedc062f8d984cf4d2ac
--- /dev/null
+++ b/.bash_completion.d/server-backup
@@ -0,0 +1,14 @@
+# vim: ft=bash
+
+_server_backup() {
+    local cur prev words cword opts
+    _init_completion || return
+    opts='-c'
+
+    if [[ $cur == -* ]]
+    then
+        COMPREPLY=($(compgen -W "$opts" -- "$cur"))
+    fi
+}
+
+complete -F _server_backup server-backup
diff --git a/Documents/bin/server-backup b/Documents/bin/server-backup
new file mode 100755
index 0000000000000000000000000000000000000000..21e02f8a758c233f0a6ab4dad0c457fcc5426f46
--- /dev/null
+++ b/Documents/bin/server-backup
@@ -0,0 +1,24 @@
+#!/bin/sh
+set -eu
+
+usage() {
+    echo "$(basename "$0") [-c]"
+}
+
+if [ "$#" -eq 0 ]
+then
+    ssh -t host01.shore.co.il -o \
+        "RemoteCommand tmux new-session -As backup sudo sh -c 'mount /dev/sdb1 /mnt && offsite-backup /mnt && umount /mnt'"
+elif [ "$1" = '-c' ]
+then
+    if ssh host01.shore.co.il tmux has-session -t backup 2>/dev/null
+    then
+        echo 'Backup is still running.'
+    else
+        echo 'Backup has finished.'
+        exit 1
+    fi
+else
+    usage
+    exit 1
+fi