Differences
This shows you the differences between two versions of the page.
linux_wiki:crashplan_ui_config [2016/03/18 22:58] billdozor [CrashPlan UI Config] |
linux_wiki:crashplan_ui_config [2019/05/25 23:50] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== CrashPlan UI Config ====== | ||
- | **General Information** | ||
- | |||
- | 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 ===== | ||
- | |||
- | <code bash crashplan_ui_config.sh> | ||
- | # | ||
- | |||
- | ## Title: CrashPlan UI Config | ||
- | ## Description: | ||
- | ## Also fixes a UI crash bug in certain versions. | ||
- | ## Author: Bill Howe | ||
- | ## Date: 08/ | ||
- | ## Recent Changes: Re-designed into functions, added root and version checking. | ||
- | |||
- | ## Required, check for root permissions ## | ||
- | check_root=$(id -u) | ||
- | if [ $check_root != 0 ];then | ||
- | 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 | ||
- | |||
- | echo -e ">> | ||
- | } | ||
- | |||
- | 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 "1) Connect to Local system" | ||
- | echo -e "2) Connect to Remote headless system" | ||
- | echo -e "3) Fix UI Crash Bug (CP vers 3.5.3 to 3.6.4)" | ||
- | echo -e "q) Quit" | ||
- | echo -e " | ||
- | |||
- | read CHOICE | ||
- | |||
- | case ${CHOICE} in | ||
- | |||
- | 1) | ||
- | # Configure for local | ||
- | configure_local | ||
- | exit 0 | ||
- | ;; | ||
- | |||
- | 2) | ||
- | #Configure for remote | ||
- | configure_remote | ||
- | ;; | ||
- | |||
- | 3) | ||
- | #Fix UI Crashing | ||
- | fix_ui_bug | ||
- | exit 0 | ||
- | ;; | ||
- | |||
- | q) | ||
- | #Quit | ||
- | echo -e " | ||
- | exit 0 | ||
- | ;; | ||
- | |||
- | *) | ||
- | #Unknwon response, quit | ||
- | echo -e " | ||
- | exit 1 | ||
- | ;; | ||
- | esac | ||
- | </ |