SATA付きARMボードでNextcloudサーバ構築 CubieBoard5

はがきサイズのSATA端子付きシングルボードコンピュータに2.5インチのHDDを取り付けて、最新版のNextcloud(Ver.13)をインストールしてみました。

インストール手順を記録しておこうと思います。


使用する材料

CubieTruck Plus(Cubieboard5)

こちらの記事でご紹介させて頂きました

32bit ARM 8コアCPU、RAM 2GB、eMMC 8GBを搭載したシングルボードコンピュータです。ケース(アクリル板とスペーサー)が付属しており、2.5インチのHDDやSSDを収納することができます。

2.5インチSATAストレージ(HDD、SSD)

Cubieboard5は5Vと12VのSATA電源が用意されているため、容量が大きめのHDDも問題なく取り付ける事ができました。

microSDカード

OSイメージのeMMC書き込みに使用します。容量は2GB程度あれば十分かと思いますが、UHS-I(Class 10)対応品を使用するようにインストールドキュメントに記載がありました。

USB電源(コンセント)

Cubieboard付属のUSB電源ケーブルを使って、ARMボードとHDD/SSDに給電します。2A程度の電源を用意しました。


Nextcloudサーバインストール手順

大まかに次のような流れになります。

  1. Linux(Linaro)インストール
  2. HDD取り付け
  3. PHP 7.2インストール
  4. MariaDBインストール
  5. Nextcloudインストール
  6. Nextcloudチューニング(PHPキャッシュの設定等)

Linaro-Serverインストール

Cubieboard5購入時、内蔵eMMCにAndroidがインストールされています。Linuxイメージを書き込んだmicroSDカードを用意して、eMMCにインストールする流れになります。

  1. Cubieboardのダウンロードサイトにアクセス、Mega cloudのimageリンクをクリックします。
  2. Cubieboard5用のLinaro-serverイメージをダウンロードします。emmc-hdmiを選択しました。
  3. 7zipで展開し、microSDカードにイメージを書き込みます。Win32 Disk Imagerを使ってみました。
  4. Cubieboard5にmicroSDカードを取り付けて起動します。このときHDD/SSDは取り外します。HDDやSSDを取り付けて起動するとeMMCの書込みに失敗するようです
  5. 書込みが終わると自動で電源がOFFになりますので、microSDカードを抜いて電源を入れます。
  6. Linuxが正しく起動するかどうか確認します。大家族ですね!ペンギンさん自動でコンソールへログインされます。
    SSHでログインしてインストールする場合は、IPアドレスを確認しておきます。

HDD/SSD取り付け

取り付けるドライブは、Windowsのdiskpart等であらかじめパーティションをすべて削除しておきます。FATやNTFSのパーティションがあると、Cubieboard5が起動しませんでした。

  1. Linuxをシャットダウンします。
  2. HDD/SSDを取り付けて起動します。
  3. コンソールまたはsshでログインします。初期ユーザ/パスワードは以下のようです。
    • root/cubieboard
    • linaro/linaro
  4. 内蔵時計を現在時刻にセットします。
  5. タイムゾーンもセットしておきます。

    Asia/Tokyoを選択します。
  6. 取り付けたドライブにパーティションを作成、フォーマットしてUUIDを付加します。
  7. /etc/fstabを編集します。表示されたUUIDを使って/optにマウントしようと思います。

  8. ドライブをマウントします。

swap作成(必須)

後でPHPのビルドを行う都合上、swapを必ず作成します。RAM容量の大小や、空き容量の大小に関わらず、swapを作らないとコンパイルやリンクに失敗するようです(たまたまうまく行く事もありますが)。

  1. swapに使用するファイルを作成しswapを有効にします。容量は1GBにしました。
  2. /etc/fstabにswap行を追加します。

PHP 7.2のビルド・インストール

Nextcloudの次期バージョン14から、PHPバージョン5系統は非対応になるようです。せっかく作ったサーバを永く使えるように、PHPバージョン7系統の最新版をインストールしようと思います。

  1. ビルドに必要なツールやライブラリをインストールします。
  2. PHPのソースコードをダウンロードして展開します。
  3. 次のオプションでオートコンフィグしました。
  4. ビルドします。念のためV=1を指定してビルド中のログを表示しました。
  5. ビルドが問題無さそうなら、テスト、インストールします。

    インストール先は/opt/php7.2.4になります。
  6. apacheのモジュールを変更してphp5からphp7へ切り替えます。
  7. phpinfoを

    ブラウザでアクセスして見てみると・・・

    あれ?

    phpが実行されず、テキストファイルとして見えているようです。

  8. どうやらphp7.confが無いようです。php5.confをコピーしてみました。

    再度ブラウザでアクセスすると、ビルドしたphp7.2が正しく動作しました。

MariaDBインストール

インストール後、データディレクトリをeMMCからHDDに移動しようと思います。

  1. MariaDBをインストールします。

    途中、管理用のパスワードを入力しますが、あとでNextcloudインストール時に使用しますので控えておきます。
  2. いちど停止して
  3. /etc/mysql/my.cnfのdatadirを変更します。
  4. /var/lib/mysqlディレクトリを/optにコピーします。何となくtarでコピー・・・
  5. 起動して、データディレクトリが移動されたか確認します。

  6. /opt/php7.2.4/lib/php.iniを編集してpdo_mysql接続用のソケットを設定します。
  7. apacheを再起動して設定を反映します。

    これでPHP7.2からMariaDBへアクセスできるようになったと思います。

ホスト名、IPアドレス設定

Nectcloudをインストールする前に設定しておきます。

  1. ホスト名を設定します。
  2. IPアドレスを固定にする場合、/etc/network/interfacesを編集します。
  3. 他のPCから<ホスト名.local>でアクセスできるようにする場合、avahi-daemonをインストールします。
  4. 再起動して設定を反映します。

Nextcloudインストール

インストールは基本的にNextcloud 13 Administration Manualの手順に従うかたちになります。

  1. Nextcloudの最新版をダウンロードして展開します。ディレクトリのオーナーも変えておきます。
  2. /etc/apache2/sites-available/nextcloud.confファイルを作成します。
  3. 作成したコンフィグを有効化、nextcloudで使用するapacheモジュールを有効化、apacheを再起動します。
  4. ブラウザでアクセスしてみましょう。画面が表示されるまでしばらく時間がかかるようです。

    初期設定画面が表示されましたでしょうか?
  5. 初期設定情報を入力します。
    • 管理者ユーザ名
    • パスワード
    • データフォルダー:/opt/nextcloud/data
    • データベース:MySQL/MariaDB
      • ユーザ名:root
      • パスワード:MariaDBインストール時に有力したパスワード
      • DB名:nextcloud
      • ホスト名:localhost
  6. 初期設定が完了しました!

Nextcloudチューニング

インストールは終わりましたが、基本設定画面に「キャッシュを有効にしたほうが良い」ような警告が表示されます。

PHPとメモリーキャッシュを有効にします。

  1. /opt/php7.2.4/lib/php.iniを編集してopcacheを設定します。次の内容になりました。
  2. apacheを再起動して設定を反映します。
  3. /opt/nextcloud/config/config.phpを編集してメモリーキャッシュを有効にします。ArrayCacheを使ってみました。

以上でインストール完了となります。お疲れ様でした!


以前、Raspberry PiでNextcloudサーバを構築しました。

こちらと比較した場合、ファイル転送速度はRaspberry Piが5MB/s程度に対し、Cubieboard5は10MB/s程度で動作していています。

32bit CPUということで、アップロード可能なファイルサイズが2GB以下となりますが、ファイルの転送速度やWeb画面の表示速度等、きびきびと動く感じで、特に問題は無さそうです。

しばらく使って様子を見てみたいと思います。

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク