玩客雲(OneCloud) 的設置與使用

DSC01753.JPG
DSC01753.JPG

前言:

所有設定基於 Armbian 平台,感謝大佬們對玩客雲 (OneCloud) 的分享及支持,讓我等小白們可以愉快哋使用。

早前折騰迅雷賺錢寶 PRO 實現的許多功能也可以到部署到玩客雲 (OneCloud) ,所以不重複造車了!


感謝大佬們的貢獻與適配
有能力的小伴也可以到論壇回貼或者ForkStar
目錄內容:

操作步驟:
所有的配置基於暮冬初一大佬適配的Armbian平台,版本: Linux onecloud 5.14.21-meson

刷機步驟可參考: 玩客雲 Armbian22.08 全自動刷入 EMMC 包 - 內核 5.14_5.18

初始設定

SSH首次登入的帳號及密碼

帳號:密碼:
root1234

Initial_2022-06-16_090017.png
Initial_2022-06-16_090017.png

輸入新的密碼两次,按 Ctrl + C 終止建立新的用戶

手動建立新的用戶名稱為 「onecloud」

useradd -m onecloud -s /bin/bash
-m 自動建立用戶的家目錄(將/etc/skel中的文件復制到家目錄中)

-s 指定用戶使用的 shell

設置 onecloud 密碼

passwd onecloud

添加 onecloudsudo 群組

usermod -aG sudo onecloud

設置免密 (如果你不想每次 sudo 時輸入密碼)。

tee /etc/sudoers.d/onecloud <<< 'onecloud ALL=(ALL) NOPASSWD: ALL'

修改只讀權限

chmod 400 /etc/sudoers.d/onecloud

設定時區

timedatectl set-timezone "Asia/Hong_Kong"

固定Mac及動態IP地址

cat >> /etc/netplan/armbian-default.yaml << EOF
  ethernets:
    eth0:
      macaddress: b0:d5:9d:XX:XX:XX
      dhcp4: true
      optional: true
EOF


固定Mac及動態IP地址方式 (舊版本)

  • 固定Mac及動態IP地址(可選)


cat >> /etc/network/interfaces << EOF
allow-hotplug eth0
no-auto-down eth0
iface eth0 inet dhcp
        hwaddress ether B0:D5:9D:XX:XX:XX
EOF


  • 固定Mac及固定IP地址(可選)
cat >> /etc/network/interfaces << EOF
auto eth0
#allow-hotplug eth0
iface eth0 inet static
        address 192.168.0.50
        netmask 255.255.255.0
        gateway 192.168.0.1
        hwaddress ether B0:D5:9D:XX:XX:XX



192.168.0.50 是玩客雲的 IP 地址 (根據自身網段修改)


00:22:6D:XX:XX:XX 是玩客雲主板的 Mac 地址 (唯一)


參考 [玩客雲 Armbian-MAC 值固定]



掛載儲存裝置
掛載外置儲存裝置的方法有多種,如: 修改fstab掛載、添加指令到rc.local掛載或者建立/etc/init.d/mount.sh腳本掛載等等。

今次透過較新的 systemd 守護進程挂載外置儲存裝置。

預先透過分區軟件 fdisk 格式化外置儲存裝置

建立掛載目錄

mkdir -p /mnt/mmc

看查外置儲存裝置的 UUID (唯一)

ls -l /dev/disk/by-uuid

Mount_2022-06-16_115227.png
Mount_2022-06-16_115227.png

deb12c87-f4cb-a946-8b5b-ab375a8c2770 是外置儲存裝置的UUID

手動掛載

mount UUID="deb12c87-f4cb-a946-8b5b-ab375a8c2770" /mnt/mmc/

建立系統 systemd 守護進程 (掛載) 服務

cat >> /etc/systemd/system/mnt-mmc.mount << EOF
[Unit]
Description=Additional drive

[Mount]
What=/dev/disk/by-uuid/deb12c87-f4cb-a946-8b5b-ab375a8c2770
Where=/mnt/mmc
Type=ext4
Options=defaults

[Install]
WantedBy=multi-user.target
EOF

開機自動啟用 mnt-mmc.mount 服務

systemctl enable mnt-mmc.mount

建立自動 (掛載) 服務

cat >> /etc/systemd/system/mnt-mmc.automount << EOF
[Unit]
Description=Automount Additional Drive

[Automount]
Where=/mnt/mmc

[Install]
WantedBy=multi-user.target
EOF

開機自動啟用 mnt-mmc.automount 服務

systemctl enable mnt-mmc.automount

目錄分享
Samba是在Linux系統上實現SMB協議的一個免費軟件,兼容WindowsmacOSLinux ,在多個不同平台間進行文件傳輸及共享。

安裝 Samba:

apt update && apt -y install samba

添加分享目錄:

cat >> /etc/samba/smb.conf << EOF
[MMC]
  path = /mnt/mmc
  browsable = yes
  read only = no
  security = share
  guest ok = yes
EOF
[MMC] #分享的目錄名稱
/mnt/mmc #分享的目錄路徑
security = share #不需帳號密碼的設定

如果想透過帳號及密碼訪問 Samba 服務 (可選)

security = share 替換為 write list = onecloud

設定 onecloud 用戶在 Samba 服務的專用密碼

smbpasswd -a onecloud

測試 Samba 的設置是否正確

testparm

重新啟動 Samba 服務使設定生效

systemctl restart smbd
systemctl restart nmbd

SMB_2022-06-16_130556.png
SMB_2022-06-16_130556.png


LNMP服務

LNMP 是指網站服務器架構:Linux 系統下 Nginx+PHP+MySQL(MariaDB)

  • Linux: 是一類計算機操作系統的統稱,這裡使用的是 armbian
  • Nginx: 是網頁伺服器也是高性能的 HTTP 和反向代理伺務器。
  • PHP: 是一種嵌入 HTML 文檔的腳本語言。
  • Mysql: 是一個數據庫管理系統。

安裝網頁伺服器 Nginx

apt update && apt install nginx -y

安裝PHP及組件

apt install php php-fpm php-mysql php-opcache php-cli php-gd php-curl php-mbstring php-xml php-common php-zip php-imagick -y

查看 PHP 版本

php -v
PHP 8.1.2 (cli) (built: Jun 13 2022 13:52:54) (NTS)
Copy­right (c) The PHP Group
Zend En­gine v4.1.2, Copy­right (c) Zend Tech­nolo­gies
with Zend OP­cache v8.1.2, Copy­right (c), by Zend Tech­nolo­gies

nginx 正確的調用 php

vi /etc/nginx/sites-available/default

PHP_2022-06-22_102701.png
PHP_2022-06-22_102701.png

紅色箭矢是修改的地址,esc > :wq 儲存及離開。

測試 Nginx 設置是否正確:

nginx -t
ng­inx: the con­fig­u­ra­tion file /etc/​ng­inx/​ng­inx.conf syn­tax is ok
ng­inx: con­fig­u­ra­tion file /etc/​ng­inx/​ng­inx.conf test is suc­cess­ful

添加 PHP 測試頁面:

echo "<?php phpinfo(); ?>" > /var/www/html/index.php

重啟 Nginx 服務使設置生效:

systemctl restart nginx

在瀏覽器中打開 http://onecloud_IP

PHP_2022-06-22_104133.png
PHP_2022-06-22_104133.png

安裝MySQL(MariaDB)

apt -y install mariadb-server

執行 MySQL(MariaDB) 數據庫配置向導:

mysql_secure_installation
Set root pass­word? [Y/​n] n # 配置數據庫root的密碼
Re­move anony­mous users? [Y/​n] y # 移除匿名
Dis­al­low root lo­gin re­motely? [Y/​n] y # 限制遠端登入
Re­move test data­base and ac­cess to it? [Y/​n] y # 移除測試數據庫
Re­load priv­i­lege ta­bles now? [Y/​n] y # 套用設定

檢查 MySQL(MariaDB) 數據庫版本

mysqladmin -p -u root version
En­ter pass­word:
mysqlad­min Ver 9.1 Dis­trib 10.6.7-Mari­aDB, for de­bian-linux-gnue­abihf on ar­mv7l
Copy­right (c) 2000, 2018, Or­a­cle, Mari­aDB Cor­po­ra­tion Ab and oth­ers.

Server ver­sion 10.6.7-Mari­aDB-2ubun­tu1
Pro­to­col ver­sion 10
Con­nec­tion Lo­cal­host via UNIX socket
UNIX socket /run/​mysqld/​mysqld.sock
Up­time: 18 hours 52 min 38 sec

MySQL(MariaDB) 基礎使用

root 權限登入

mysql -u root -p

建立資料庫

CREATE DATABASE onecloud;

或者

CREATE DATABASE onecloud DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
DEFAULT CHARACTER SET utf8mb4 # 設置數據庫的默認編碼為utf8mb4

COLLATE utf8mb4_general_ci # 數據庫校對規則大小寫不敏感 (cicase insensitive)

建立 MySQL(MariaDB) 新帳號,名為 user01 密碼是 password 在資料庫 onecloud 內的讀寫權限

GRANT ALL PRIVILEGES ON onecloud.* TO 'user01'@'localhost' IDENTIFIED BY 'password';

更新設定

FLUSH PRIVILEGES;

離開

quit

建立 MySQL(MariaDB) 超級用戶 (可選):

超級用戶是具有全面訪問MySQL(MariaDB)的使用者,類似root的訪問權限。
CREATE USER 'superuser'@'localhost' IDENTIFIED BY 'superuser_password';
superuser # 超級用戶名稱

superuser_password # 超級用戶密碼

GRANT ALL PRIVILEGES ON * . * TO 'superuser'@'localhost';
GRANT ALL PRIVILEGES # 授與所有權限

ON * . * # 任意數據庫

LNMP 基礎網站服務器架構設定好後,可以根據自身需要建立相應網絡服務程式。

結語:
玩客雲(OneCloud)刷入Armbian系統後的功能實在是太豐富了! 除以上的教學外,可以安裝ARIA2 或者 qBittorrent 服務作為24小時的離線下載器,也可以實現RCLONERSYNC 實現輕量的備份伺服器,還可以透過FRP ZeroTier TailScale Wire­Guard實現內網穿透訪問等等。

相關連結: