pi-dal

pi-dal

All science is either physics or the stamp collecting.
twitter
github
bilibili

ラズベリーパイ ArozOS ガイド

https://github.com/tobychui/arozos/blob/master/img/banner.png?raw=true

なぜ ArozOS を選ぶのか#

これまで多くのメーカーが、自分専用の高カスタマイズ NAS を持ちたいと考えてきました。そのため、多くのメーカーが現在最も人気のある SBC— ラズベリーパイに対応しました。そのため、ラズベリーパイ上の NAS アプリケーションも多種多様です。以下は主要なものです:

  1. Nextcloud

Nextcloud

https://raw.githubusercontent.com/nextcloud/screenshots/master/files/Files%20Sharing.png

現在最も人気のあるアプリの一つかもしれません。プラグイン機能があり、アプリもあり、機能が非常に充実しています。しかし、先天的な欠点があります — それは PHP で書かれているため、非常に遅いです。

  1. pydio

Pydio

https://raw.githubusercontent.com/pydio/cells-dist/master/resources/v3.0.0/home.png

現在国内ではあまり使われていませんが、Golang で書かれており、速度が速く、機能も比較的充実しているため、以前から悩んでいた選択肢です。

  1. Seafile

Seafile - オープンソースの企業プライベートクラウドストレージソフトウェア

国産の C 言語で書かれており、清華大学や北京大学の選択肢で、機能が充実しており、効率が非常に高いです。

ここまで多くのことを言いましたが、彼らは皆良いのに、なぜ使わないのでしょうか?

大まかに以下の理由があります:

  1. カスタマイズの程度が十分ではなく、プラグインシステムはありますが、自分で書ける部分はまだ少ないです。
  2. すべて企業のプロジェクトです(この点は見解が分かれます)。
  3. 彼らにはプロ版があり、これは無料版の実力が飽和に達しないことを意味します。
  4. すべて大体ネットワークストレージアプリケーションに過ぎず、Synology DSM のようにはなりません。

さて、ここで ArozOS を本当に紹介します。

Raspberry Pi 用の汎用 Web デスクトップオペレーティングプラットフォーム / OS、現在は Go で書かれています!

Untitled

一部の人は質問するかもしれません。これは NAS アプリではないのですか?なぜ OS と呼ぶのですか?

その通りです。あなたが考えた通り、ArozOS の実力は Nextcloud のようなネットワークストレージアプリをはるかに超えています。WebApp と Subservice という二大武器を持ち、さらには IoT コントローラーでもあります。

Untitled

一部のアプリケーション

Untitled 1

WebApp 管理

Untitled 2

Subservice 管理

もちろん、ファイル共有、音楽や動画の再生などの基本機能も欠かせません。

Untitled 3

ファイル共有

Untitled 1

音楽や動画の再生

さらにはファイル編集やコード作成も行えます。

これが私たちが必要とする NAS システムです!

ArozOS のインストール方法#

現在、ArozOS のインストール方法は 2 つあります。

パッケージ化された img を使用する#

すでにすべてが設定されており、箱から出してすぐに使用できます。

直接 **http:// ラズベリーパイの IP アドレス:8080/** にアクセスして、ユーザー登録を行うことができます。

手動ビルド#

  1. まず Golang 1.14 + をインストールします。

cd ~/

# 以下の4ステップは必要に応じて選択してください。

# ラズベリーパイ 64bit ネットワーク条件が許可される場合
wget https://golang.org/dl/go1.17.3.linux-arm64.tar.gz

# ラズベリーパイ 32bit ネットワーク条件が許可される場合
wget https://golang.org/dl/go1.17.3.linux-armv6l.tar.gz

# ラズベリーパイ 64bit 国内
wget https://golang.google.cn/dl/go1.17.3.linux-arm64.tar.gz

# ラズベリーパイ 32bit 国内
wget https://golang.google.cn/dl/go1.17.3.linux-armv6l.tar.gz

sudo tar -C /usr/local -xzf go*

echo 'export PATH=$PATH:/usr/local/go/bin' >> .bashrc

source ~/.bashrc

go version
  1. プロジェクト全体を git clone します。
# 国内
git config --global url."https://hub.fastgit.xyz/".insteadOf "https://github.com/"
git config protocol.https.allow always

# 必要
git clone https://github.com/tobychui/arozos.git
  1. ビルドします。
# 国内
go env -w GOPROXY=https://goproxy.cn,direct

# ビルド
cd ./arozos/src/
go build
./arozos
  1. デーモンプロセスを設定します。
# 開始前にarozosプロセスがないことを確認してください
cd /etc/systemd/system/

sudo nano arozos.service

# 以下の内容を追加します

[Unit]
Description=ArozOS Cloud Service
After=systemd-networkd-wait-online.service
Wants=systemd-networkd-wait-online.service

[Service]
Type=simple
ExecStartPre=/bin/sleep 30
WorkingDirectory=/home/pi/arozos/src
ExecStart=/bin/bash /home/pi/arozos/src/start.sh

Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target

sudo systemctl enable systemd-networkd.service systemd-networkd-wait-online.service

sudo systemctl start arozos.service

sudo systemctl enable arozos.service

この時点で **http:// ラズベリーパイの IP アドレス:8080/** にアクセスして、ユーザー登録を行うことができます。

ランチャーと更新#

ArozOS は1.119以降、ランチャーと OTA 更新をサポートしています。次に、これらの 2 つの使用方法について説明します。

ランチャーモードへの移行方法#

上記でソースコードをビルドする方法を学びました。それでは、その上でランチャーを使用するにはどうすればよいのでしょうか?

# Arozosプロセスを一時停止します
sudo systemctl stop arozos

# ディレクトリに移動します
cd arozos/src

# ランチャーのソースコードをcloneします
git clone https://github.com/aroz-online/launcher.git launche

# ランチャーをビルドします
cd launche && go build
mv launcher  ../
cd ..

# v1.119でない場合は、以下の手順を実行します
mkdir updates
cd updates
wget https://github.com/tobychui/arozos/releases/download/v1.119/arozos_linux_arm64 -O arozos
wget https://github.com/tobychui/arozos/releases/download/v1.119/web.tar.gz
tar -zxvf web.tar.gz
cd ..

# start.sh内の./arozosを./launcherに変更します
eg: 
#!/bin/bash
sudo ./launcher -port 80 -tls=true -tls_port 443 -hostname "RPI-NAS"

# arozosを再起動します
sudo systemctl start arozos

成功すれば、ブラウザでリンクを開くと、効果が見えるはずです。

OTA アップグレード#

Arozos は 1.119 以降、OTA アップグレードをサポートしており、Arozos 内で直接バージョンを更新できます。

WebApp & Subservice#

ArozOS について語るとき、WebApp と Subservice の 2 つのものを避けて通ることはできません。

WebApp#

Arozos の WebApp は HTML5 で書かれた Web アプリケーションで、モジュールインストーラーを使用してインストールできます。

インストール#

git リポジトリの URL または zip ファイルを使用して WebApp をインストールできます。「システム設定」>「モジュールの追加と削除」タブでインストールインターフェースを見つけることができます。

Untitled 4

削除#

WebApp を削除するには、WebApp リストから削除したい WebApp を選択し、「アンインストール」をクリックします。

Untitled 5

手動で削除することもできます。以下は「MyWebApp」という名前のサブサービスを削除する例です。

sudo systemctl stop arozos

cd ~/arozos/web/

rm -rf MyWebApp

sudo systemctl start arozos

Subservice#

ArozOS の Subservice は、インストール時にコンパイルが必要な実行可能ファイルです。

インストール#

ArozOS ディレクトリ内で手動でインストールする必要があります。以下は「MySubservice」という名前のサブサービスを削除する例です。

cd ~/arozos/subservice

git clone MySubserviceのgitアドレス

cd MySubservice

./build.sh

削除#

以下は「MySubservice」という名前のサブサービスを削除する例です。

sudo systemctl stop arozos

cd ~/arozos/subservice/

rm -rf ./MySubservice

sudo systemctl start arozos

有効化と無効化#

サブサービスを有効または無効にするには、システム設定 > サブサービスタブにアクセスし、起動 / 無効化したいサービスを選択します。

Untitled 6

もちろん、手動で操作することもできます。

sudo systemctl stop arozos

cd ~/arozos/subservice/MySubservice

touch .disabled

sudo systemctl start arozos

もう一つのこと#

現在 ArozOS は積極的に開発中で、私も幸運にもその一部のコードに貢献しました。

Commits · tobychui/arozos

もしこのプロジェクトに良いアイデアがあれば、issue や pr を提案することを歓迎します。また、Telegram グループに参加して私たちと交流することもできます。

ArozOS Dev

ご覧いただきありがとうございます!

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。