最近在考慮在PVE上使用開源雲盤,開源NAS,整合成一個完整的解決方案,目標是能夠在生產系統上使用。結合桌面雲,提供雲盤和NAS功能,統一用戶帳號,就能提供一個完整的解決方案,仍是比較有價值的。php
整體思路:html
一、在PVE上建立OMV虛擬機(OpenMediaVault)mysql
二、將PVE上的NFS盤提供給OMV做爲存儲資源池;linux
三、在PVE上安裝nextcloud (LAMP結構)web
1、安裝OMV sql
首先,下載OMV安裝鏡像,下載地址:docker
https://nchc.dl.sourceforge.net/project/openmediavault/5.3.9/openmediavault_5.3.9-amd64.iso 數據庫
安裝過程和安裝debian系統差很少,OMV的底層就是debian系統;
apache
安裝完成後,直接使用IP地址就能夠登錄。
json
web初始帳號密碼是:admin/openmediavault
OMV中能夠集成提供docker,須要安裝OMV-Extra 。
安裝OMV-Extra能夠參考: https://www.jianshu.com/p/4a0aa7e48515
另外,OMV還提供不少插件,提供相應的加強功能。
原本打算直接使用docker安裝NextCloud,可是在安裝過程當中纔想到,生產系統,NextCloud仍是獨立安裝會比較好一些,雖然會慢一點,可是後面的穩定性以及後面的故障定位和維護都比較靠譜。
登錄後的界面:
2、安裝NextCloud
參考官網的安裝手冊:
https://docs.nextcloud.com/server/stable/admin_manual/installation/
NextCloud是安裝在LAMP(linux+apache+Mysql+PHP)環境中的應用程序,因此須要準備LAMP環境,對操做系統沒有要求。我這裏選擇安裝ubuntu,我安裝的時候最新版本是ubuntu20(https://mirrors.nju.edu.cn/ubuntu-releases/20.04/ubuntu-20.04-live-server-amd64.iso)
爲了好記,設置ubuntu操做系統用戶名密碼: nextcloud/nextcloud
安裝完成以後,要求重啓:
手工安裝:
本想經過snap的方式進行安裝,可是因爲強國網絡的緣由安裝過程碰到一些問題,果斷放棄。最後採用最原始和可靠的方法,手工安裝!
手工安裝,參考:
https://docs.nextcloud.com/server/stable/admin_manual/installation/example_ubuntu.html
注意ubuntu20對應的php默認版本是7.4 : apt-get install apache2 mariadb-server libapache2-mod-php7.4 apt-get install php7.4-gd php7.4-json php7.4-mysql php7.4-curl php7.4-mbstring apt-get install php7.4-intl php-imagick php7.4-xml php7.4-zip
安裝完成以後,檢查apache二、php和maridb是否安裝正常:
一、檢查apache2: systemctl status apache2
二、檢查mariadb: systemctl status mariadb 三、檢查php: php -m
下載nextcloud軟件包:nextcloud-18.0.4.zip ,下載地址是:
https://download.nextcloud.com/server/releases/nextcloud-18.0.4.zip
下載完成以後上傳到服務器/var/www/目錄上,解壓:
cd /var/www && unzip nextcloud-18.0.4.zip
配置apache,如下內容,參考:
https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html
# vi /etc/apache2/sites-available/nextcloud.conf Alias /nextcloud "/var/www/nextcloud/" <Directory /var/www/nextcloud/> Require all granted AllowOverride All Options FollowSymLinks MultiViews Satisfy Any <IfModule mod_dav.c> Dav off </IfModule> </Directory> root@nextcloud:/var/www# a2ensite nextcloud.conf Enabling site nextcloud. To activate the new configuration, you need to run: systemctl reload apache2 root@nextcloud:/var/www# systemctl reload apache2 root@nextcloud:/var/www# a2enmod rewrite Enabling module rewrite. To activate the new configuration, you need to run: systemctl restart apache2 root@nextcloud:/var/www# systemctl reload apache2 root@nextcloud:/var/www# root@nextcloud:/var/www# a2enmod headers Enabling module headers. To activate the new configuration, you need to run: systemctl restart apache2 root@nextcloud:/var/www# a2enmod env Module env already enabled root@nextcloud:/var/www# a2enmod dir Module dir already enabled root@nextcloud:/var/www# a2enmod mime Module mime already enabled root@nextcloud:/var/www# # chown -R www-data:www-data /var/www/nextcloud/ # systemctl restart apache2
接下來,就能夠看到NextCloud的初始化安裝界面了:
初始化安裝nextcloud:
建立數據庫:
create database nextcloud character set utf8; create user nextcloud@localhost identified by 'nextcloud'; grant all privileges on nextcloud.* to nextcloud@localhost identified by 'nextcloud'; flush privileges; exit;
將數據庫相關信息填入:
輸入管理員帳號密碼admin/admin:
最後點擊「完成」,系統開始初始化安裝:
過了幾分鐘,完成:
有100個自定義的應用,比較厲害,能夠點進去看看。
後面能夠根據須要,本身再慢慢研究。
安裝windows桌面客戶端:
客戶端程序下載地址:
https://download.nextcloud.com/desktop/releases/Windows/latest
首次運行客戶端,須要設置服務端地址:
http://192.168.170.140/nextcloud
輸入上面這個地址以後,會彈出瀏覽器,以admin帳號登錄鑑權,鑑權確認後,客戶端後面就能夠正常使用了。
客戶端 上須要添加同步文件夾,這裏我在G盤新建「雲盤」目錄,並做爲本地文件夾的同步目錄,這樣,會自動同步nextcloud服務端的相應目錄文件內容到本地。
在同步狀態下,對「雲盤」目錄下文件的任何操做,都會同步到nextcloud服務器端。
安裝nextcloud Talk
https://apps.nextcloud.com/apps/spreed
找到相應版本的nextcloud talk版本,好比個人nextcloud版本是18,對應的就是8.0.9版本:
下載下來的文件名稱是: spreed-8.0.9.tar.gz
將這個文件上傳到nextcloud服務器的apps目錄: /var/www/nextcloud/apps/ ,並解壓
tar xzvf spreed-8.0.9.tar.gz
在目錄 /var/www/nextcloud/中執行:
sudo -u www-data php occ app:install spreed
sudo -u www-data php occ app:enable spreed
安裝手機客戶端:
安卓nextcloud客戶端下載:
https://f-droid.org/zh_Hans/packages/com.nextcloud.client/
安卓nextcloud talk客戶端下載:
https://f-droid.org/en/packages/com.nextcloud.talk2/
蘋果手機能夠直接在APP store裏面下載安裝,直接搜索: nextcloud ,能夠找到nextcloud和nextcloud talk
幕後花絮:
安裝ubuntu20的時候,發現ubuntu竟然能夠選擇各類snap安裝,其中就包括NextCloud的snap安裝。
原本想使用snap來安裝和管理nextcloud。熟悉一下snap的簡單用法:
參考官網教程:https://snapcraft.io/docs/getting-started
snap list #列出軟件包
snap find nextcloud #查找nextcloud
snap install nextcloud #安裝nextcloud,默認的channel是stable
snap install --channel=edge nextcloud #指定channel
snap info nextcloud #查看nextcloud信息
因爲強國網絡的緣由,訪問不了snap相關的安裝源,在執行:snap install nextcloud 命令的時候提示網絡錯誤,果斷放棄。
曾考慮過在debian10上安裝NextCloud, debian10的下載地址:
https://cdimage.debian.org/debian-cd/current/amd64/bt-dvd/
參考的相關網站:
安裝OMV-Extra: https://www.jianshu.com/p/4a0aa7e48515
安裝nextcloud:https://docs.nextcloud.com/server/18/admin_manual/installation/installation_wizard.html
你的開源 NAS 系統: https://zhuanlan.zhihu.com/p/138254689
OpenMediaVault:https://www.openmediavault.org/ OMV
搭建家庭 NAS 服務器有什麼好方案? https://www.zhihu.com/question/21359049
nextcloud官網: https://nextcloud.com/
seafile官網:https://www.seafile.com/home/
LDAP+nextcloud: https://www.orgleaf.com/2839.html