概要
オンラインストレージサービスって、突然無料枠が減ったり、大規模なセキュリティ事故起こしてたり、利用規約を見るとジャイアン的だったり、と、なかなか、これだ!というの見つからないですよね。
じゃあ、自分で作っちゃえ、ということで、ownCloudを導入しました。
※今回記事にするのはラズパイにownCloudを導入するところまでで、ストレージの設定(外付けハードディスクを接続してマウントする→いずれS3と連携させたいため)とか、ネットワーク設定(ルーターに穴をあけてインターネットからも接続できるようにする→環境によって異なるため)とか、クライアントアプリのインストール(→簡単)とか共有の設定(→環境によるため)とかは含みません。中途半端でごめんなさい。
参考にしたサイト
前提条件
- モデル : Raspberry Pi 3 Model B
- OS : Raspbian Stretch
$ uname -a
Linux raspberrypi 4.14.33-v7+ #1109 SMP Tue Apr 10 17:28:38 BST 2018 armv7l GNU/Linux
事前準備
いつもの手順と、Webサーバ、MariaDB、PHP等をインストール。
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install -y apache2 mariadb-server libapache2-mod-php7.0 php7.0-gd php7.0-json php7.0-mysql php7.0-curl php7.0-intl php7.0-mcrypt php-imagick php7.0-zip php7.0-xml php7.0-mbstring memcached php7.0-memcached php-apcu
Webサーバの設定
このあたりは、ほぼ参考サイトどおりです(参考サイトはrootで実行してますが、私の環境はrootを有効化していないため一般ユーザーで実施しています)。
$ cd /etc/apache2/sites-available/
$ sudo vi owncloud.conf # 新規作成
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>
$ sudo a2ensite owncloud.conf
$ sudo a2enmod rewrite
$ sudo a2enmod headers
$ sudo systemctl restart apache2
※ファイルアップロードの上限を変更(仮に1000M(1G)バイト)する場合は、以下の手順も実施。
$ sudo vi /etc/php/7.0/apache2/php.ini # 編集
upload_max_filesize = 2M
↓
upload_max_filesize = 1000M
post_max_size = 8M
↓
post_max_size = 1000M
データベースの設定
データベースを作成しユーザとパスワードを設定します。
今回は例として以下の値を設定します。
・データベース名:owncloud
・ユーザ名:root
・パスワード:password
$ sudo mysql -uroot
> CREATE DATABASE IF NOT EXISTS owncloud;
> GRANT ALL PRIVILEGES ON owncloud.* TO 'root'@'localhost' IDENTIFIED BY 'password';
> quit
ownCloudのインストール
いよいよ、ownCloudをインストールし、データフォルダを作成します。
$ cd /var/www/
$ sudo wget https://download.owncloud.org/community/owncloud-10.0.3.tar.bz2
$ sudo tar xvf owncloud-10.0.3.tar.bz2
$ sudo rm -f owncloud-10.0.3.tar.bz2
$ sudo mkdir /var/www/owncloud/data
$ sudo chown -R www-data:www-data /var/wwww/owncloud/
$ sudo cmhod 770 /var/wwww/owncloud/data/
$ sudo reboot
ownCloud初期設定
以下のアドレスに接続します。
http://[ラズパイのIPアドレス]/owncloud/
初期設定画面が表示されるので、適当な値を入力します。
今回は例として以下の値を設定します。
・管理者アカウント:admin
・管理者パスワード:password
・データフォルダー:/var/www/owncloud/data/
・データベースのユーザー名:root
・データベースのパスワード:password
・データベース名:owncloud
・データベースのホスト名:localhost
画面がなくてすみません。
ちょっと不安なくらい待つとログイン画面が表示されます。
今回設定した管理者アカウントと管理者パスワードでログインできれば成功です!
最後に
ブラウザがやたらと重い気がしますが、クライアントアプリを入れればわりと快適です。
オンラインストレージのつもりで導入しましたが、ローカルの共有もこれでいいかな。
いずれ、AWSのS3に連携させてみようと思います。
調べているうちにNextcloudってのもあるのが分かって、こっちも試したいですね。