Guest User

Untitled

a guest
Jun 24th, 2018
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.96 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. ############ SETTINGS ############
  4. pfx="mmc"
  5. backup_prefix="/mnt/sda2"
  6. #DISTNAME="arm-soft-$pfx-master"
  7. DISTNAME="arm-soft-$pfx-mini"
  8. ##################################
  9.  
  10. if ! [[ -f $backup_prefix/dist/$DISTNAME.tgz ]]; then
  11. echo "distribution not found: \"$DISTNAME.tgz\"";
  12. exit 1
  13. fi
  14.  
  15. if ! [[ -d /$pfx ]]; then
  16. echo "mountpoint $pfx not present?";
  17. exit 1;
  18. fi
  19.  
  20. if [[ -d /$pfx/home ]]; then
  21. echo "moving home folder from $pfx to $backup_prefix";
  22. #[[ -d $backup_prefix/home ]] && echo "$backup_prefix/home exists, remove or rename it" && exit 1;
  23. cp -rf /$pfx/home $backup_prefix/home
  24. fi
  25.  
  26. if [[ -d /$pfx/bin/go ]]; then
  27. echo "moving bin/go from $pfx to $backup_prefix";
  28. [[ -d $backup_prefix/$pfx-go ]] && echo "$backup_prefix/$pfx-go exists, remove or rename it" && exit 1;
  29. mv /$pfx/bin/go $backup_prefix/$pfx-go
  30. fi
  31.  
  32. if [[ -d /$pfx/go ]]; then
  33. echo "moving go workdir from $pfx to $backup_prefix";
  34. mv /$pfx/go $backup_prefix/$pfx-gowork
  35. fi
  36.  
  37. echo "Removing all files/folders in $pfx";
  38. cd /
  39. rm -rf /$pfx/*
  40. rm -f /$pfx/.*
  41.  
  42. echo "Extracting $DISTNAME.tgz to /$pfx"
  43. cd $backup_prefix/dist
  44. /bin/tar -xf $DISTNAME.tgz -C /$pfx
  45.  
  46. sleep 1;
  47.  
  48. if [[ -d $backup_prefix/home ]]; then
  49. echo "Putting home folder back";
  50. mv $backup_prefix/home /$pfx/home
  51. echo "Done"
  52. fi
  53.  
  54. if [[ -f $backup_prefix/profile ]]; then
  55. echo "Restoring profile";
  56. cp -f $backup_prefix/profile /$pfx/etc/profile
  57. fi
  58.  
  59. if [[ -d $backup_prefix/$pfx-go ]]; then
  60. echo "Restoring go install";
  61. mv $backup_prefix/$pfx-go /$pfx/bin/go
  62. fi
  63.  
  64. if [[ -d $backup_prefix/$pfx-gowork ]]; then
  65. echo "Restoring go work directory";
  66. mv $backup_prefix/$pfx-gowork /$pfx/go
  67. fi
  68.  
  69. #cp -f $backup_prefix/profile profile
  70.  
  71. cd /opt/etc
  72. mv profile profile.opt
  73. ! [[ $? -eq 0 ]] && echo "profile DNE?" && exit 1;
  74. if ! [[ -f profile ]]; then
  75. ln -s /mmc/etc/profile profile
  76. else
  77. echo "/opt/etc/profile could not be moved";
  78. exit 1;
  79. fi
  80. #cd /opt/etc
  81. #mv profile profile.opt
  82. #ln -s /$pfx/etc/profile profile
  83.  
  84. echo; echo;
  85. echo 'All done!';
  86. echo; echo;
  87.  
  88.  
  89. exit 0;
Add Comment
Please, Sign In to add comment