V jednom z našich předchozích blogových příspěvků jsme se zabývali tím, jak nainstalovat ownCloud na CentOS 6 VPS, dnes uvidíme, jak nainstalovat ownCloud na server Ubuntu 12.04 pomocí automatického bash skriptu.
#!/bin/bash # # Install owncloud # This script assumes you already have installed Apache & MySQL # # Change me MYSQL_ROOT_PASSWD="YOUR MYSQL ROOT PASSWORD" # Path to your localhost www="/var/www" # Apache User wwwdata="www-data" # Make sure only root can run our script if [ "$(id -u)" != "0" ]; then echo "This script must be run as root" 1>&2 exit 1 fi # Check arguments if [ $# -ne 1 ]; then echo "Usage $0 domainName" exit 1 fi # Create MySQL database MYSQL_OC_PASSWD=$(</dev/urandom tr -dc A-Za-z0-9 | head -c 8) Q1="CREATE DATABASE IF NOT EXISTS owncloud;" Q2="GRANT ALL PRIVILEGES ON owncloud.* TO 'owncloud'@'localhost' IDENTIFIED BY '$MYSQL_OC_PASSWD';" Q3="FLUSH PRIVILEGES;" SQL="${Q1}${Q2}${Q3}" mysql -uroot -p$MYSQL_ROOT_PASSWD -e "$SQL" > /dev/null 2>&1 # Check if the database is created if [ $? -ne 0 ]; then echo "Cannot connect to the MySQL database server" exit 1 fi # Create the file with VirtualHost configuration echo "<VirtualHost *:80> DocumentRoot $www/owncloud ServerName $1 ServerAlias $1 <Directory $www/owncloud> Options Indexes FollowSymLinks MultiViews +Includes AllowOverride All Order allow,deny allow from all </Directory> </VirtualHost>" > /etc/apache2/sites-available/$1 # Update System apt-get -y update > /dev/null 2>&1 # Install PHP modules apt-get -y install php5 php5-json php-xml php-mbstring php5-zip php5-gd php5-sqlite php5-mysql curl libcurl3 libcurl3-dev php5-curl php-pdo > /dev/null 2>&1 # Download and extract the latest version wget -qO- -O tmp.tar.bz2 http://owncloud.org/releases/owncloud-latest.tar.bz2 && tar -C $www -xjf tmp.tar.bz2 && rm tmp.tar.bz2 # Set owner chown $www-data: -R $www/owncloud # Enable the site a2ensite $1 > /dev/null 2>&1 # Reload Apache2 /etc/init.d/apache2 restart > /dev/null 2>&1 # Output clear echo "Open your web browser and navigate to your ownCloud instance" echo "Url: $1" echo "Database: owncloud" echo "Database user: owncloud" echo "Database user password: $MYSQL_OC_PASSWD"
Co skript udělá?
- Zkontrolujte, zda je skript spuštěn jako uživatel root
- Zkontrolujte, zda je počet argumentů správný
- Vytvořte databázi MySQL
- Zkontrolujte, zda je databáze vytvořena
- Vytvořte soubor s konfigurací VirtualHost
- Nainstalujte potřebné moduly PHP
- Stáhněte si a extrahujte nejnovější verzi ownCloud
- Nastavte vlastníka, povolte web a restartujte Apache
- Zobrazit název databáze, uživatele a heslo
Uložte skript výše jako installOwncloud.sh
(pokud jste to ještě neudělali), změňte „VAŠE KOŘENOVÉ HESLO MYSQL“ na své kořenové heslo MySQL a poté zadejte následující příkazy:
a+x installOwncloud.sh ./installOwncloud.sh your.domainname.com
Nakonec otevřete webový prohlížeč a přejděte do své instance ownCloud
Tento skript by měl fungovat i v Debianu.
PS. Pokud se vám tento příspěvek líbil, sdílejte jej se svými přáteli na sociálních sítích pomocí tlačítek vlevo nebo jednoduše zanechte odpověď níže. Děkuji.