RaspberryPi B+ へ ownCloud
自宅のネット回線が遅いため
YMobile やLTEでダウンロードしたものを
自宅で使うことが多いのですが
そのたびに scp などで転送するのは面倒なので
ownCloud で簡単に共有できるようにします
まず ssh で RaspberryPi B+ へログイン
ユーザ名はデフォルトなら pi になる
なおIPアドレスを探すには
Android なら Fing
iPod touch なら Snap
がおすすめ
ログインしたら ownCloud で使う
Apache
MySQL
を
インストール
1 2 | sudo apt-get update
sudo apt-get install apache2 mysql-server
|
途中で mysql の root パスワードを聞かれるので
任意のパスワードを入力

もう一回確認のため入力
ちなみにこれは
データベースのパスワードで
あとで ownCloud で使うので忘れずにメモしておくこと

次に ownCloud に必要な言語PHPを
インストール
1 | sudo apt-get -y install libapache2-mod-php5 php5 php5-gd php5-json php5-mysql php5-curl
|
1 | sudo apt-get -y install php5-intl php5-mcrypt php5-imagick php-apc
|
次に ownCloud の入手
今回はコマンドを使い直接 RaspberryPi へダウンロード
1 | wget https: //download .owncloud.org /community/owncloud-7 .0.4. tar .bz2
|
ダウンロードが完了したら解凍
1 | tar xvjf owncloud-7.0.4. tar .bz2
|
ちなみに tar コマンドの解説には
【 tar 】 ファイルを書庫化・展開する(拡張子.tarなど)
がわかりやすいのでおすすめ
今回なら
x 書庫からファイルとりだし
v 処理したファイル一覧の詳細表示
j bzip2 で処理
f 指定したファイルを使う
というオプションになる
これで解凍できたので
webサーバーで使えるように
コピーと権限の書き換え
1 | sudo cp -r owncloud /var/www/
|
-r をわすれるとディレクトリごとコピーできないので
注意
ちょっと固まるけど、これは RaspberryPi の処理が遅いため
PCと比べるとやはり遅め
1 | sudo chown -R www-data:www-data /var/www/owncloud/
|
で所有者を root から www-data へ変える
これで ownCloud は配置できたけど
https でないと接続できないので
この設定をおこなう
まず https では暗号化するので
これに必要な鍵ペアと証明書をつくる
1 | sudo mkdir /etc/ssl/localcerts
|
で証明書をおくフォルダ作製
次に証明書と鍵ペアの作製
1 | sudo openssl req -new -x509 -days 3650 -nodes -out /etc/ssl/localcerts/apache .pem -keyout /etc/ssl/localcerts/apache .key
|
を実行すると
Country Name (2 letter code) [AU]:
と国コードをきかれる
ローカルなのでこれはEnter でOK
State or Province Name (full name) [Some-State]:
もEnter でOK
Locality Name (eg, city) []:
は都市名
これも Enter でOK
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
これは会社の組織名とか部署名
Enter でOK
Organizational Unit Name (eg, section) []:
これは団体名
Enter でOK
Common Name (e.g. server FQDN or YOUR name) []:
はサーバーの名前とかIPなので
ssh で接続しているなら
RaspberryPi のIPを入力
Email Address []:
はメールアドレス
これも Enter でOK
これで証明書と鍵ペアは作製完了
次に apache の設定ファイルを書き換える
ファイルを書き換えるのに vim がなれているので
で vim をインストール
失敗したときの保険として
1 2 3 | cd /etc/apache2/sites-available/
sudo cp default-ssl default-ssl_bak
cd -
|
でバックアップをとっておく
cd – は1つ前のディレクトリに戻るコマンド
1 | sudo vim /etc/apache2/sites-available/default-ssl
|
で設定ファイルを編集
:set number
で番号を表示するとみやすくなる
16行めに
1 2 3 4 5 6 | <Directory /var/www/owncloud >
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
< /Directory >
|
を追加
49~50行めあたりにある
1 2 | SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil .pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil .key
|
を
1 2 | SSLCertificateFile /etc/ssl/localcerts/apache .pem
SSLCertificateKeyFile /etc/ssl/localcerts/apache .key
|
に変更し保存
そして htps通信を有効にして
mod_rewriteモジュールを有効化する
1 2 3 | sudo a2enmod ssl
sudo a2ensite default-ssl
sudo a2enmod rewrite
|
あとは apache2 の再起動で設定を反映
1 | sudo service apache2 restart
|
これで準備ができたので
PCブラウザからアクセスして初期設定
https://サーバーIPアドレス/owncloud
でアクセス
私の場合なら
https://192.168.10.198/owncloud
警告でるけど気にせず続行
これは認証局の証明書を購入しないとでてくる
ローカルでやるなら問題なし
ちなみに購入すると年間で数千円かかるらしい
とりあえず
危険性を理解した上で接続するには
をクリック

例外を追加をクリックするとまたしても
親切に警告をしてくるので
セキュリティ例外を承認
をクリック

これで設定画面が表示される

ユーザ名とパスワードは自分のアカウント作製
なので、任意のものでOK
データフォルダはそのままでOK
/var/www/owncloud/data
になる
データベースのユーザ名は root
データベースのパスワードは
mysql のインストールに設定したパスワード
データベース名は
owncloud
データベースのホスト名は
localhost
のままでOK
設定ができたら
セットアップを完了します
をクリック

これでできるけど
RaspberryPi は処理が遅いのでちょっと
このときに固まる
ログインに成功すると
どのアプリを使うか聞かれるけど
これはxで消しておく

以下は初期状態の画面

管理画面で
最大アップロードサイズを変更しておく
なお最大は2GB
ファイルのアップロードは
アップロードアイコンをクリック
もしくはドラッグ&ドロップで可能

PCの ownCloud のクライアントアプリは無料だけど
スマホやタブレットの場合は有料になる