Advertisement
Guest User

Untitled

a guest
Dec 21st, 2014
141
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.64 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. ###########################################################################
  4. # (c) Patrick Geselbracht <Patrick.Geselbracht@hsrw.org>
  5. ###########################################################################
  6.  
  7. SCRIPT_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
  8.  
  9. LOG="$SCRIPT_DIR/log"
  10.  
  11. debuglog() {
  12. echo "$1" 2>&1 | tee -a $LOG
  13. }
  14.  
  15. ################################################################################
  16. # Show specified error message and exit the application w/ specified exit code
  17. # Option vars referenced in this function hold the function's parameter values
  18. # and should not be confused with the shell script's parameter variables.
  19. # Option 1: Error message
  20. # Option 2: Exit code
  21. # Function writes the error message to stdout and to the ERRORLOG file
  22. ################################################################################
  23. die() {
  24. echo "$1" 2>&1 | tee -a $LOG
  25. exit $2
  26. }
  27.  
  28. # UPDATE APT LISTS
  29. echo "Updating apt lists ..."
  30. sudo apt-get update -y &&
  31. echo "Updating apt lists ... Done"
  32.  
  33. echo
  34. echo
  35.  
  36. # UPGRADE APT PACKAGES
  37. echo "Upgrade APT packages before installing? [y|n]"
  38. read aptupgrade_yn
  39. case "$aptupgrade_yn" in
  40. y)
  41. echo "Upgrading packages handled by apt ..."
  42. sudo apt-get upgrade -y &&
  43. echo "Upgrading packages handled by apt ... Done"
  44. echo
  45. echo
  46. ;;
  47. n)
  48. ;;
  49. esac
  50.  
  51. # INSTALL APACHE2
  52. echo "Install Apache? [y]"
  53. read apache_yn
  54. case "${apache_yn:-y}" in
  55. y)
  56. echo "Installing apache2 ..."
  57. sudo apt-get install -y apache2
  58. # Fixes apache's "fully qualified domain name" nagging
  59. echo "ServerName localhost" | sudo tee "/etc/apache2/conf-available/fqdn.conf"
  60. sudo a2enconf fqdn
  61. sudo service apache2 reload
  62. APACHE_INSTALL_LOCATION=`which apache2`
  63. echo
  64. echo "Installing apache2 ... Done"
  65. ;;
  66. n)
  67. #die "You chose not to install apache2" 2
  68. ;;
  69. esac
  70.  
  71. # INSTALL PHP5 MODULE
  72. echo "Install php? [n]"
  73. read php_yn
  74. case "${php_yn:-n}" in
  75. y)
  76. if [ -z "$APACHE_INSTALL_LOCATION" ];
  77. then
  78. die "Apache has not been installed. Please install it before attempting to install the php module." 3
  79. fi
  80. echo "Installing php5 module ..."
  81. sudo apt-get install -y libapache2-mod-php5
  82. sudo a2enmod php5
  83. echo
  84. echo "Installing php5 module ... Done"
  85. ;;
  86. n)
  87. ;;
  88. esac
  89.  
  90. # INSTALL MYSQL
  91. echo "Install MySQL? [n]"
  92. read mysql_yn
  93. case "${mysql_yn:-n}" in
  94. y)
  95. if [ -z "$APACHE_INSTALL_LOCATION" ];
  96. then
  97. die "Apache has not been installed. Please install it before attempting to install the MySQL module" 4
  98. fi
  99. echo "Installing MySQL module ..."
  100. sudo apt-get install -y mysql-server libapache2-mod-auth-mysql php5-mysql
  101. echo
  102. echo "Installing MySQL module ... Done"
  103. echo
  104. ;;
  105. n)
  106. ;;
  107. esac
  108.  
  109. sudo service apache2 restart
  110.  
  111. exit 0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement