Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
linux_wiki:crashplan_ui_config [2014/11/17 21:56] billdozor created |
linux_wiki:crashplan_ui_config [2019/05/25 23:50] (current) |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== CrashPlan UI Config ====== | ====== CrashPlan UI Config ====== | ||
- | **Distro(s):** All | + | **General Information** |
- | **Description: | + | Script to configure the CrashPlan UI to connect to your local system or a remote headless server running the CrashPlan service. |
- | < | + | Also fixes the GUI crash bug reported here(Crashplan Versions 3.5.3 to 3.6.4): [[ https:// |
+ | |||
+ | **Checklist** | ||
+ | * Distro(s): Any | ||
+ | * Other: Crashplan installed [[https:// | ||
+ | |||
+ | ---- | ||
+ | |||
+ | ===== Sources ===== | ||
+ | |||
+ | Used the following official documentation source to write this script: | ||
+ | * http:// | ||
+ | |||
+ | ---- | ||
+ | |||
+ | ===== The Script ===== | ||
+ | |||
+ | < | ||
# | # | ||
- | echo -e " | + | ## Title: |
+ | ## Description: | ||
+ | ## Also fixes a UI crash bug in certain versions. | ||
+ | ## Author: Bill Howe | ||
+ | ## Date: 08/09/2015 | ||
+ | ## Recent Changes: Re-designed into functions, added root and version checking. | ||
- | echo -e "Use CrashPlan UI to connect to:" | + | ## Required, check for root permissions ## |
- | echo -e "1) Local system" | + | check_root=$(id -u) |
- | echo -e "2) Remote headless system" | + | if [ $check_root != 0 ];then |
- | echo -e "3) Fix UI Crash Bug" | + | echo ">> |
+ | exit 1 | ||
+ | fi | ||
+ | |||
+ | ## Setting up variables - Configure to Crashplan' | ||
+ | CPROOT="/ | ||
+ | |||
+ | ## Store Crashplan version ## | ||
+ | CPVERSION=" | ||
+ | |||
+ | ## Functions ## | ||
+ | function initial_symlink_setup { | ||
+ | # check to see if either ui file does not exist | ||
+ | if [[ ! -f / | ||
+ | # local file does not exist, create it | ||
+ | echo ">> | ||
+ | sudo cp -v / | ||
+ | fi | ||
+ | |||
+ | if [[ ! -f / | ||
+ | echo ">> | ||
+ | echo -e " | ||
+ | read INITIALSYSTEM | ||
+ | echo -e " | ||
+ | read INITIALUSER | ||
+ | |||
+ | echo -e ">> | ||
+ | sudo scp ${INITIALUSER}@${INITIALSYSTEM}:/ | ||
+ | sudo sed -i ' | ||
+ | |||
+ | # set to local initially | ||
+ | sudo ln -fs / | ||
+ | fi | ||
+ | } | ||
+ | |||
+ | function configure_local { | ||
+ | echo -e " | ||
+ | |||
+ | if [[ ${CPNEW} == " | ||
+ | # Version >= 4.3.0, change symlink | ||
+ | sudo ln -sf / | ||
+ | else | ||
+ | # Version < 4.3.0, edit ui.properties | ||
+ | sed -i " | ||
+ | fi | ||
+ | |||
+ | | ||
+ | } | ||
+ | |||
+ | function configure_remote { | ||
+ | echo -e " | ||
+ | |||
+ | echo -e " | ||
+ | read REMOTESYSTEM | ||
+ | echo -e " | ||
+ | read REMOTEUSER | ||
+ | |||
+ | if [[ ${CPNEW} == " | ||
+ | # Version >= 4.3.0, change symlink | ||
+ | sudo ln -sf / | ||
+ | else | ||
+ | # Version < 4.3.0, edit ui.properties | ||
+ | sed -i " | ||
+ | fi | ||
+ | |||
+ | echo -e ">> | ||
+ | echo -e ">> | ||
+ | ssh -L 4200: | ||
+ | } | ||
+ | |||
+ | function fix_ui_bug { | ||
+ | # Check if CP Version is >= 3.5.3 | ||
+ | if [[ $(echo | awk -v n1=${CPVERSION} -v n2=3.5.3 | ||
+ | UITEST1=" | ||
+ | else | ||
+ | UITEST1=" | ||
+ | fi | ||
+ | # Check if CP Version is <= 3.6.4 | ||
+ | if [[ $(echo | awk -v n1=${CPVERSION} -v n2=3.6.4 | ||
+ | UITEST2=" | ||
+ | else | ||
+ | UITEST2=" | ||
+ | fi | ||
+ | |||
+ | # If both true, fix the bug | ||
+ | if [[ ${UITEST1} == " | ||
+ | echo ">> | ||
+ | echo -e " | ||
+ | sed -i "/ | ||
+ | echo ' | ||
+ | echo -e ">> | ||
+ | else | ||
+ | echo ">> | ||
+ | fi | ||
+ | } | ||
+ | |||
+ | ### Main Program ### | ||
+ | |||
+ | # Check to see if Crashplan version is 4.3.0 or greater, if so, initalize symlinks setup | ||
+ | if [[ $(echo | awk -v n1=${CPVERSION} -v n2=4.3.0 | ||
+ | CPNEW=" | ||
+ | initial_symlink_setup | ||
+ | else | ||
+ | CPNEW=" | ||
+ | fi | ||
+ | |||
+ | ## Main Menu ## | ||
+ | echo -e "===== CrashPlan UI Configuration =====" | ||
+ | echo -e "----- Your Version: ${CPVERSION} -----\n" | ||
+ | |||
+ | echo -e " | ||
+ | echo -e " | ||
+ | echo -e " | ||
+ | echo -e "3) Fix UI Crash Bug (CP vers 3.5.3 to 3.6.4)" | ||
echo -e "q) Quit" | echo -e "q) Quit" | ||
echo -e " | echo -e " | ||
- | read SYSTEM | + | read CHOICE |
- | case $SYSTEM | + | case ${CHOICE} |
1) | 1) | ||
# Configure for local | # Configure for local | ||
- | | + | |
- | sed -i " | + | |
- | echo -e " | + | |
exit 0 | exit 0 | ||
;; | ;; | ||
Line 31: | Line 164: | ||
2) | 2) | ||
#Configure for remote | #Configure for remote | ||
- | | + | |
- | echo -e " | + | |
- | read REMOTESYSTEM | + | |
- | + | ||
- | echo -e " | + | |
- | read REMOTEUSER | + | |
- | + | ||
- | echo -e "Login via ssh below, then launch CrashPlanDesktop from non-ssh session on local system.\n" | + | |
- | echo -e " | + | |
- | + | ||
- | sed -i " | + | |
- | ssh -L 4200: | + | |
;; | ;; | ||
3) | 3) | ||
#Fix UI Crashing | #Fix UI Crashing | ||
- | | + | |
- | sed -i "/ | + | |
- | echo ' | + | |
- | echo -e " | + | |
exit 0 | exit 0 | ||
;; | ;; |