OwnCloud
ownCloud ist eine Open-Source-Software zur sicheren Speicherung, Synchronisation und Freigabe von Dateien. Sie erlaubt es, eine eigene Cloud auf dem eigenen Server zu betreiben, unabhängig von externen Diensten wie Dropbox oder Google Drive. Wichtige Funktionen:
- Dateiverwaltung und -freigabe
- Benutzer- und Rechteverwaltung
- Kalender- und Kontakt-Synchronisation (CalDAV, CardDAV)
- Erweiterbar durch Plugins
- Datenschutz und volle Datenhoheit
Installation mit Bash-Skript
Die Installation erfolgte automatisiert mit folgendem Bash-Skript, das von ChatGPT mitentwickelt wurde:
#!/bin/bash
set -e
### === KONFIGURATION ===
DB_NAME="owncloud"
DB_USER="ownclouduser"
DB_PASSWORD="raspberry"
OWNCLOUD_DIR="/var/www/html/owncloud"
IP_ADDR="$(hostname -I | awk '{print $1}')"
echo "[1/7] System aktualisieren..."
apt update && apt upgrade -y
echo "[2/7] Benötigte Pakete installieren..."
apt install -y apache2 mariadb-server unzip wget curl \
php libapache2-mod-php php-mysql php-xml php-mbstring php-curl \
php-zip php-gd php-intl php-bcmath php-imagick
echo "[3/7] MariaDB konfigurieren..."
mysql -u root <<EOF
CREATE DATABASE ${DB_NAME};
CREATE USER '${DB_USER}'@'localhost' IDENTIFIED BY '${DB_PASSWORD}';
GRANT ALL PRIVILEGES ON ${DB_NAME}.* TO '${DB_USER}'@'localhost';
FLUSH PRIVILEGES;
EOF
echo "[4/7] OwnCloud herunterladen..."
cd /tmp
wget https://download.owncloud.org/community/owncloud-complete-latest.tar.bz2
tar -xjf owncloud-complete-latest.tar.bz2
rm -rf ${OWNCLOUD_DIR}
mv owncloud ${OWNCLOUD_DIR}
echo "[5/7] Berechtigungen setzen..."
chown -R www-data:www-data ${OWNCLOUD_DIR}
chmod -R 755 ${OWNCLOUD_DIR}
echo "[6/7] Apache konfigurieren..."
cat <<APACHECONF > /etc/apache2/sites-available/owncloud.conf
<VirtualHost *:80>
DocumentRoot ${OWNCLOUD_DIR}
ServerName ${IP_ADDR}
<Directory ${OWNCLOUD_DIR}>
Options +FollowSymlinks
AllowOverride All
<IfModule mod_dav.c>
Dav off
</IfModule>
SetEnv HOME ${OWNCLOUD_DIR}
SetEnv HTTP_HOME ${OWNCLOUD_DIR}
</Directory>
ErrorLog \${APACHE_LOG_DIR}/owncloud_error.log
CustomLog \${APACHE_LOG_DIR}/owncloud_access.log combined
</VirtualHost>
APACHECONF
a2ensite owncloud.conf
a2dissite 000-default.conf
a2enmod rewrite headers env dir mime setenvif
systemctl restart apache2
echo "[7/7] Installation abgeschlossen."
echo ""
echo "---------------------------------------------------------"
echo "OwnCloud-Webinstaller erreichbar unter:"
echo " http://${IP_ADDR}/owncloud"
echo ""
echo "Datenbank-Zugangsdaten:"
echo " DB-Name : ${DB_NAME}"
echo " DB-Benutzer: ${DB_USER}"
echo " DB-Passwort: ${DB_PASSWORD}"
echo "---------------------------------------------------------"
Dieses Skript automatisiert die komplette Installation und Konfiguration von ownCloud auf einem Debian-basierten System.