Ricerca nel sito web

Come installare ownCloud su Ubuntu 22.04


Su questa pagina

  1. Prerequisiti
  2. Installazione delle dipendenze
  3. Installazione di PHP 7.4
  4. Installazione del server Web Apache2
  5. Installazione del server MariaDB
  6. Scarica il codice sorgente di OwnCloud
  7. Impostazione dell'host virtuale Apache2 per ownCloud
  8. Avvio dell'installazione guidata di ownCloud
  9. Ottimizzazione delle prestazioni per ownCloud
  10. Conclusione

ownCloud è un software adatto alla creazione di servizi di file hosting come Google Drive e DropBox. È un software di hosting di file gratuito e open source che ti consente di configurare un file hosting self-hosted sul tuo server. ownCloud offre l'applicazione server (il componente principale delle tute software ownCloud) e applicazioni client che possono essere installate su più sistemi operativi come Linux, Windows, macOS, Android e iOS.

ownCloud è scritto principalmente in PHP, JavaScript e Go. E ti consente di sincronizzare facilmente gli eventi del calendario, archiviare archivi, immagini e qualsiasi formato di file. E ti consente anche di organizzare attività, rubriche e molto altro. ownCloud è un'applicazione estensibile che consente di installare l'applicazione aggiuntiva su di essa.

In questo tutorial, ti mostreremo come installare e configurare ownCloud sul server Ubuntu 22.04. Questo copre anche alcune installazioni e configurazioni di base di LAMP Stack (Linux, Apache2, MariaDB e PHP) sul server Ubuntu.

Prerequisiti

Per questa guida abbiamo bisogno dei seguenti prerequisiti:

  • Un'edizione Ubuntu Server 22.04.
  • Un utente non root con privilegi di amministratore root.
  • Un nome di dominio indirizzato e risolto all'indirizzo IP del server.

Installazione delle dipendenze

Prima di iniziare l'installazione di ownCloud, devi installare alcune dipendenze del pacchetto di base sul tuo server, che includono un pacchetto come openssl, redis-server, smbclient, ecc.

Per prima cosa, aggiorna il repository di Ubuntu all'ultima versione usando il comando apt qui sotto.

sudo apt update

Successivamente, installa le dipendenze del pacchetto utilizzando il comando seguente.

sudo apt install smbclient redis-server unzip openssl rsync imagemagick

Immettere Y per confermare l'installazione e premere INVIO per iniziare. Al termine dell'installazione di tutte le dipendenze, passare al passaggio successivo.

Installazione di PHP 7.4

Ora installerai le dipendenze PHP per la tua installazione di Cloud sul tuo server Ubuntu.

L'ultima versione del repository Ubuntu 22.04 fornisce l'ultima versione dei pacchetti PHP 8.1. Ma per ownCloud, avrai bisogno di PHP 7.4 invece di PHP 8.1. Allo stato attuale, ownCloud non è ancora completamente supportato per PHP 8.1.

Quindi ora installerai PHP 7.4 dal repository di terze parti \ppa:ondrej/php\ sull'ultimo server Ubuntu 22.04.

Eseguire il seguente comando per aggiungere il repository PPA per i pacchetti PHP. Anche il seguente comando aggiornerà e aggiornerà automaticamente il tuo repository Ubuntu.

sudo add-apt-repository ppa:ondrej/php -y

Successivamente, esegui il comando apt di seguito per installare PHP 7.4 sul tuo sistema Ubuntu. Inoltre, il seguente comando installerà anche alcuni pacchetti PHP 8.1 ma non preoccuparti perché sarai in grado di impostare la versione PHP predefinita su Ubuntu.

sudo apt install php7.4 php7.4-intl php7.4-mysql php7.4-mbstring \
       php7.4-imagick php7.4-igbinary php7.4-gmp php7.4-bcmath \
       php7.4-curl php7.4-gd php7.4-zip php7.4-imap php7.4-ldap \
       php7.4-bz2 php7.4-ssh2 php7.4-common php7.4-json \
       php7.4-xml php7.4-dev php7.4-apcu php7.4-redis \
       libsmbclient-dev php-pear php-phpseclib

Quindi, esegui il seguente comando per configurare la versione predefinita di PHP sul tuo sistema.

sudo update-alternatives --config php

Immettere il numero della versione PHP 7.4 e premere INVIO per confermare. In questo esempio, PHP 7.4 è disponibile al numero \2\.

Ora controlla la versione di PHP usando il seguente comando. E vedrai che la versione predefinita di PHP è cambiata in PHP 7.4, come richiesto per l'installazione di ownCloud.

php --version

Ora esegui il seguente comando per impostare un'altra versione degli strumenti PHP su PHP 7.4.

sudo update-alternatives --set phar /usr/bin/phar7.4
sudo update-alternatives --set phar.phar /usr/bin/phar.phar7.4
sudo update-alternatives --set phpize /usr/bin/phpize7.4
sudo update-alternatives --set php-config /usr/bin/php-config7.4

Successivamente, dovrai anche aggiornare PEAR all'ultima versione stabile per ownCloud. L'ultima versione stabile di PEAR al momento è la v1.10.13., che può essere aggiornata manualmente.

Crea una nuova directory temporanea /tmp/pear/cache usando il seguente comando.

sudo mkdir -p /tmp/pear/cache

Aggiorna la versione PEAR a 1.10.13 usando il comando pear qui sotto.

sudo pear upgrade --force \
      --alldeps http://pear.php.net/get/PEAR-1.10.13

Ora esegui i comandi a forma di pera di seguito per cancellare la cache, aggiornare i canali e aggiornare tutto.

sudo pear clear-cache
sudo pear update-channels
sudo pear upgrade --force
sudo pear upgrade-all

Al termine del processo di aggiornamento, controllare la versione Pear utilizzando il seguente comando. E dovresti vedere che la versione PEAR è aggiornata alla v1.10.13.

pear version

Installazione del server Web Apache2

Ora è il momento di installare il web server Apache2 per ownCloud, che abilita anche i moduli necessari per ownCloud.

Installa il server Web Apache2 utilizzando il comando apt di seguito.

sudo apt install libapache2-mod-php7.4 apache2

Immettere Y per confermare l'installazione e premere INVIO per avviare l'installazione.

Ora, dopo che tutta l'installazione è stata completata, esegui il comando a2enmod di seguito per abilitare alcuni dei moduli Apache2 necessari a ownCloud.

sudo a2enmod rewrite env dir mime unique_id headers ssl

Riavvia il servizio Apache2 per applicare le nuove modifiche.

sudo systemctl restart apache2

Installazione del server MariaDB

Dopo aver installato PHP 7.4 e il web server Apache2, ora è il momento di installare il server MariaDB. Per impostazione predefinita, ownCloud supporta più RDBMS come MySQL/MariaDB, SQLite, PostgreSQL e Oracle. Il modo più semplice, gratuito e consigliato per la distribuzione di ownCloud è utilizzare il database MySQL/MariaDB.

Eseguire il comando apt di seguito per installare il pacchetto del server MariaDB.

sudo apt install mariadb-server

Immettere Y per confermare l'installazione e premere INVIO per iniziare. Ora inizierà l'installazione.

Al termine dell'installazione di MariaDB, eseguire il comando seguente per configurare e proteggere la distribuzione di MariaDB.

sudo mysql_secure_installation

E ti verranno chieste alcune configurazioni di base di MariaDB di seguito:

  • Inserisci la nuova password root di MariaDB e ripeti.
  • Facoltativamente, inserisci Y per passare dall'autenticazione all'autenticazione unix_socket.
  • Inserisci Y per rimuovere l'utente anonimo predefinito dalla distribuzione del server MariaDB.
  • Inserisci Y per disabilitare l'accesso remoto per l'utente root MariaDB.
  • Inserisci di nuovo Y per rimuovere il database predefinito \test\ dal tuo sistema MariaDB.
  • Infine, inserisci di nuovo Y per ricaricare tutti i privilegi delle tabelle e applicare le nuove modifiche al server MariaDB.

Dopo aver completato la distribuzione del server MariaDB, esegui il comando mysql di seguito per accedere alla shell MariaDB.

mysql -u root -p

Esegui le seguenti query per creare un nuovo database MariaDB e un utente per ownCloud. In questo esempio, l'utente e il database saranno denominati \owncloud\ con la password \owncloudpass\.

CREATE DATABASE owncloud;
CREATE USER IF NOT EXISTS 'owncloud'@'localhost' IDENTIFIED BY 'owncloudpass';
GRANT ALL PRIVILEGES ON owncloud.* TO 'owncloud'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;

Ora verifica i privilegi per l'utente MariaDB \owncloud\ utilizzando la seguente query. Assicurati che l'utente \owncloud\ abbia accesso e privilegi al database \owncloud\.

SHOW GRANTS FOR 'owncloud'@'localhost';

Scarica il codice sorgente di OwnCloud

A questo punto, hai completato la configurazione di base di LAMP Stack (Linux, Apache2, MariaDB e PHP) per l'installazione di ownCloud. Ora scaricherai il codice sorgente di ownCloud sul tuo sistema.

Innanzitutto, vai alla directory /var/www/ con il seguente comando.

cd /var/www/

Ora scarica l'ultima versione del codice sorgente di ownCloud e il file di checksum per la verifica utilizzando il comando wget di seguito. E vedrai un nuovo file \owncloud-complete-latest.tar.bz2\ per il codice sorgente di ownCloud e il \owncloud-complete-latest.tar.bz2.sha25 6\ per il file di checksum.

wget https://download.owncloud.com/server/stable/owncloud-complete-latest.tar.bz2
wget https://download.owncloud.com/server/stable/owncloud-complete-latest.tar.bz2.sha256

Quindi eseguire la verifica utilizzando il comando sha256sum di seguito. Se la verifica ha esito positivo, verrà visualizzato un messaggio di output come \OK\.

sudo sha256sum -c owncloud-complete-latest.tar.bz2.sha256 < owncloud-complete-latest.tar.bz2

Successivamente, estrai il codice sorgente di ownCloud utilizzando il comando seguente. E dovresti vedere una nuova directory denominata \owncloud\, che verrà utilizzata come directory DocumentRoot/WebRoot per la tua installazione di ownCloud \/var/www/owncloud \.

tar -xf owncloud-complete-latest.tar.bz2

Infine, modifica la proprietà della directory \owncloud\ in \www-data\ utilizzando il seguente comando.

sudo chown -R www-data:www-data owncloud

Configurazione dell'host virtuale Apache2 per ownCloud

Ora configurerai l'host virtuale Apache2 per ownCloud. In questo esempio, utilizzeremo il nome di dominio \hwdomain.io\ per l'installazione di ownCloud con HTTPS/SSL sicuro abilitato sul server Web Apache2.

Crea un nuovo file host virtuale \/etc/apache2/sites-available/owncloud.conf\ utilizzando nano editor.

sudo nano /etc/apache2/sites-available/owncloud.conf

Aggiungi la seguente configurazione di Apache2 al file. Inoltre, assicurati di modificare il nome di dominio e il percorso dei certificati SSL con un dettaglio della tua configurazione. Con questa configurazione, la tua installazione di ownCloud sarà disponibile al percorso URL \/owncloud\ (ovvero https://hwdomain.io/owncloud)

<VirtualHost *:80>
  ServerName hwdomain.io
  ServerAlias www.hwdomain.io
  Redirect permanent / https://hwdomain.io/
</VirtualHost>

<VirtualHost *:443>
  ServerName hwdomain.io
  DocumentRoot /var/www
  ServerAlias www.hwdomain.io

  Protocols h2 http:/1.1

  <If "%{HTTP_HOST} == 'www.hwdomain.io'">
    Redirect permanent / https://hwdomain.io/
  </If>
 
  ErrorLog ${APACHE_LOG_DIR}/hwdomain.io-error.log
  CustomLog ${APACHE_LOG_DIR}/hwdomain.io-access.log combined

  SSLEngine On
  SSLCertificateFile /etc/letsencrypt/live/hwdomain.io/fullchain.pem
  SSLCertificateKeyFile /etc/letsencrypt/live/hwdomain.io/privkey.pem
 
  SSLCipherSuite ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384

  SSLProtocol All -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
  SSLCompression off

  Header always set Strict-Transport-Security "max-age=63072000"

  Alias /owncloud "/var/www/owncloud/"

  <Directory /var/www/owncloud/>
    Options +FollowSymlinks
    AllowOverride All

    <IfModule mod_dav.c>
    Dav off
    </IfModule>

    SetEnv HOME /var/www/owncloud
    SetEnv HTTP_HOME /var/www/owncloud

  </Directory>
 
</VirtualHost>

Ora salva e chiudi il file quando hai finito.

Successivamente, attiva la configurazione dell'host virtuale \owncloud.conf\ utilizzando il comando seguente.

sudo a2ensite owncloud.conf

Controlla e verifica la configurazione di Apache2 utilizzando il comando seguente. Se la tua configurazione è corretta, vedrai un messaggio di output come \Syntax: OK\.

sudo apachectl configtest

Infine, eseguire il comando seguente per riavviare il server Web Apache2 e applicare la nuova configurazione dell'host virtuale \owncloud.conf\. Ora sei pronto per avviare la procedura guidata di installazione di ownCloud dal browser Web, ma facoltativamente puoi anche avviare la procedura guidata di installazione di ownCloud dalla riga di comando.

sudo systemctl restart apache2

Avvio dell'installazione guidata di ownCloud

Per completare l'installazione di ownCloud, è necessario accedere alla procedura guidata di installazione di ownCloud e impostare un database di dettagli e un utente amministratore per ownCloud. E questo può essere fatto in due modi diversi, utilizzando un browser Web o utilizzando la riga di comando dal server terminal.

In questo esempio, accederai all'installazione guidata di ownCloud tramite la riga di comando dal terminal server.

Cambia la tua directory di lavoro nella directory ownCloud DocumentRoot \/var/www/owncloud\.

cd /var/www/owncloud

Ora esegui il seguente comando per completare l'installazione di ownCloud. Assicurati di modificare i dettagli del database e il nuovo utente e password amministratore. Quando tutto è completato, vedrai il messaggio di output come \ownCloud è stato installato con successo\ sullo schermo del tuo terminale.

sudo -u www-data /var/www/owncloud/occ maintenance:install \
   --database "mysql" \
   --database-name "owncloud" \
   --database-user "owncloud"\
   --database-pass "owncloudpass" \
   --admin-user "admin" \
   --admin-pass "adminpassowncloud"

Successivamente, dovrai anche modificare la configurazione di ownCloud \/var/www/owncloud/config/config.php\ utilizzando nano editor.

sudo nano /var/www/owncloud/config/config.php

Aggiungi il tuo dominio di installazione Cloud alla configurazione \trusted_domains\ come di seguito. In questo esempio, il nome del dominio di installazione di ownCloud è \hwdomain.io\.

  'trusted_domains' =>
  array (
    0 => 'localhost',
    1 => 'hwdomain.io',
  ),

Salva e chiudi il file quando hai finito.

Successivamente, apri il tuo browser web e inserisci il nome di dominio della tua installazione di ownCloud (ad es. https://hwdomain.io/owncloud/) nella barra degli indirizzi. E ora dovresti vedere la pagina di accesso di ownCloud.

Inserisci l'utente amministratore e la password per l'installazione di ownCloud e fai clic su \Accedi\.

Se il nome utente e la password sono corretti, ora vedrai la dashboard utente di ownCloud. Ciò significa che hai installato correttamente ownCloud sul tuo server Ubuntu.

Ottimizzazione delle prestazioni per ownCloud

A questo punto, ownCloud è attivo e funzionante. Tuttavia, è comunque necessario aggiungere alcune configurazioni aggiuntive per ottenere maggiori prestazioni. E ora configurerai i lavori in background per ownCloud usando cron e configurerai il sistema di memorizzazione nella cache usando Redis.

Eseguire il seguente comando per modificare il lavoro in background di ownCloud in \cron\.

sudo -u www-data /var/www/owncloud/occ background:cron

Successivamente, crea una nuova configurazione cron per ownCloud utilizzando il comando seguente. Se non hai l'editor predefinito sul tuo sistema, ti verrà chiesto di selezionare l'editor che desideri utilizzare.

sudo crontab -u www-data -e

Seleziona l'editor che desideri utilizzare e aggiungi la configurazione cron come di seguito.

*/15  *  *  *  * /usr/bin/php -f /var/www/owncloud/occ system:cron

Salva e chiudi il file quando hai finito.

Successivamente, per configurare il sistema di memorizzazione nella cache per ownCloud, sarà necessario modificare la configurazione di ownCloud config.php.

Modifica il file \/var/www/owncloud/config/config.php\ utilizzando l'editor nano.

sudo nano /var/www/owncloud/config/config.php

Ora aggiungi la seguente configurazione al file.

<?php>
....
....

    'filelocking.enabled' => true,
    'memcache.local' => '\OC\Memcache\APCu',
    'memcache.locking' => '\OC\Memcache\Redis',
    'redis' => [
        'host' => 'localhost',
        'port' => 6379,
    ],

....
....
);

Salva e chiudi il file quando hai finito.

Per verificare la tua configurazione, puoi andare al menu \Admin > Impostazioni\ sulla dashboard di ownCloud.

Passare al menu \Generale\ sul lato sinistro e controllare la sezione \Avvisi di sicurezza e configurazione\. Se viene visualizzato un messaggio del tipo \Tutti i controlli sono stati superati.\, l'installazione e la configurazione di ownCloud sono corrette e complete. Ma se c'è un avviso, dovresti vedere informazioni dettagliate sulla configurazione che include la raccomandazione sui collegamenti per risolvere quell'avviso.

Conclusione

Congratulazioni! Ora hai installato con successo ownCloud su Ubuntu 22.04 con lo stack LAMP. Hai anche imparato il comando di base \occ\ per l'installazione guidata di ownCloud. Infine, hai anche configurato alcune regolazioni delle prestazioni per la tua installazione di ownCloud cambiando il lavoro in background predefinito da Ajax a Cron e impostando il sistema di memorizzazione nella cache con Redis sul tuo ownCloud.