树莓派--搭建nextcloud私有云
樹莓派–搭建nextcloud私有云
網(wǎng)上已有很多的教程是關于nextcloud或owncloud的私有云的搭建,但是都是零零碎碎,并不完整,這里以樹莓派raspbain 10 buster系統(tǒng)為例,安裝nextcloud私有云。
這里分以下的幾步來進行:
文章目錄
- 樹莓派--搭建nextcloud私有云
- 換源、更新軟件
- 安裝apache2
- 安裝php
- 安裝mariadb
- 安裝nextcloud
- 測試
- 上傳速度
- 下載速度
- 性能優(yōu)化
- apcu
- 提高swap容量
- 提高sd卡的速度
換源、更新軟件
由于國內環(huán)境,軟件的下載安裝相對比較慢,所以更換安裝源來提高下載速度,更換下載源后更新軟件的速度相對比較慢,其中很快做其他的事情,自行怎么方便怎么來。
網(wǎng)上許多教程都不是基于最新的raspbain buster來進行更換的,這里需要注意下,跟換源之前先查看系統(tǒng)版本。
root@raspberrypi:/home/pi $ lsb_release -a No LSB modules are available. Distributor ID: Raspbian Description: Raspbian GNU/Linux 10 (buster) Release: 10 Codename: buster修改源
# 備份并編輯source.listwenjian $ cp /etc/apt/sources.list /etc/apt/sources.back.list $ nano /etc/apt/sources.list # 注釋所有內容,添加以下內容 deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib# 備份并編輯raspi.list文件 $ cp /etc/apt/sources.list.d/raspi.list /etc/apt/sources.list.d/raspi.back.list $ nano /etc/apt/sources.list.d/raspi.list # 注釋所有內容,替換如下內容 deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main更新源和軟件
$ sudo su $ apt-get update $ apt-get upgrade -y這個更新過程比較慢,建議這段時間可以到nextcloud官網(wǎng)中同時下載安裝包,或進行其他不使用apt-get操作
安裝apache2
# 安裝命令 $ sudo su $ apt-get install apache2安裝完成后配置https強跳轉。先到freessl中申請公鑰和秘鑰,我這里不闡述申請過程。
$ cd /etc/apache2/sites-available $ nano default-ssl.conf# 修改監(jiān)聽端口、文件目錄地址和公私鑰的地址 <VirtualHost _default_:4433> DocumentRoot /var/www/html/nextcloud SSLCertificateFile /etc/apache2/ssl/full_chain.pem SSLCertificateKeyFile /etc/apache2/ssl/private.key$ cp sites-available/default-ssl.conf sites-enabled/ # 修改80強跳到4433 $ nano 000-default.confRewriteEngine on RewriteCond %{SERVER_PORT} !^4433$ RewriteRule ^/?(.*)$ https://%{SERVER_NAME}:4433/$1 [L,R]$ mv 000-default.conf ../sites-enabled/ # 修改監(jiān)聽端口 $ cd ../ $ nano ports.conf Listen 80<IfModule ssl_module>Listen 4433 </IfModule><IfModule mod_gnutls.c>Listen 4433 </IfModule># 開啟重寫 $ a2enmod rewrite $ a2enmod ssl $ systemctl restart apache2安裝php
$ apt-get install php libapache2-mod-php -y $ apt-get -y install php-fpm php-cli php-json php-curl php-imap php-gd php-mysql php-xml php-zip php-intl php-imagick php-mbstring -y安裝mariadb
# 安裝命令 $ sudo su $ apt-get install mariadb-server -y # 開啟遠程登錄權限 $ cd /etc/mysql/mariadb.conf.d # 找到修改權限的文件 $ grep -rn "skip-networking" * 50-server.cnf:26:# Instead of skip-networking the default is now to listen only on $ nano 50-server.cnf # 注釋掉 bind-address = 127.0.0.1修改數(shù)據(jù)庫配置
# 直接回車 不需要輸入密碼 $ mysql -uroot -p> create database nextcloud; > CREATE USER 'oc_admin'@'%' IDENTIFIED BY 'password'; > GRANT ALL PRIVILEGES ON *.* TO 'oc_admin'@'%' WITH GRANT OPTION; > flush privileges; > CREATE USER 'oc_admin'@'localhost' IDENTIFIED BY 'password'; > GRANT ALL PRIVILEGES ON *.* TO 'oc_admin'@'localhost' WITH GRANT OPTION; > flush privileges;安裝nextcloud
從官網(wǎng)中下載安裝包,下載地址如下:
下載地址
下載完成后,上傳到樹莓派的/var/www/html/目錄
# 解壓 $ tar jxf nextcloud-18.0.0.tar.bz2 # 添加data目錄和授權 $ chown -R root:root nextcloud $ cd nextcloud $ mkdir data $ chown -R www-data:www-data data config apps初始化nextcloud,這里有個坑,第一次初始化nextcloud,創(chuàng)建管理員,會報錯,說創(chuàng)建數(shù)據(jù)庫用戶失敗。
這是因為在第一次初始化nextcloud的時候會在/var/www/html/nextcloud/config中創(chuàng)建一個config.php文件,文件記錄nextcloud的配置信息。如果是第一次初始化,config.php中記錄的數(shù)據(jù)庫用戶名會變成起初連接數(shù)據(jù)庫的用戶名加1。這里只需要手動的把1刪除,之后再重新進行初始化操作,便可完成。
由于nextcloud的訪問設置了白名單,所以在第一次訪問的時候需要添加白名單ip
$ nano /var/www/html/nextcloud/config/config.php 'trusted_domains' => array (0 => '192.168.124.37:4433',1 => 'nextcloud.mufeng.info',),掛載外設
$ fdisk -l Device Start End Sectors Size Type /dev/sda1 34 32767 32734 16M Microsoft reserved /dev/sda2 32768 3906959359 3906926592 1.8T Microsoft basic data # 安裝exfat識別 $ apt-get install exfat-fuse -y $ mkdir /home/pi/wd $ mount -t exfat /dev/sda2 /home/pi/wd # 取消掛載 umount /dev/sda2配置文件上傳大小的限制
$ nano /etc/php/7.3/apache2/php.ini upload_max_filesize = 16G post_max_size = 16G max_input_time 3600 max_execution_time 3600 # 解決瀏覽器超時問題 $ a2dismod reqtimeout $ service apache2 restart測試
上傳速度
下載速度
性能優(yōu)化
apcu
安裝redis
$ apt-get install redis-serverredis配置
$ nano /etc/redis/redis.conf # 修改daemonize 為 yes,取消以下內容的注釋 # unixsocket /var/run/redis/redis-server.sock # unixsocketperm 777 # 授權redis $ usermod -g www-data redis $ chown -R redis:www-data /var/run/redis $ redis-server /etc/redis.conf $ service redis-server restart修改配置文件
$ apt-get install php-apcu $ apt-get install php-redis'memcache.local' => '\OC\Memcache\APCu','memcache.locking' => '\OC\Memcache\Redis','redis' => array('host' => 'localhost','port' => 6379,), $ service apache2 restart提高swap容量
$ nano /etc/dphys-swapfile # 修改字段CONF_SWPSIZE 值,默認為100,這里修改為 2048,退出后重啟swap $ /etc/init.d/dphys-swapfile restart提高sd卡的速度
$ sudo su $ nano /boot/config.txt # 加入 dtparam=sd_overclock=100 $ apt-get install hdparm $ hdparm -tT /dev/mmcblk0總結
以上是生活随笔為你收集整理的树莓派--搭建nextcloud私有云的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 沙箱机制的理解
- 下一篇: Vue 中使用 Tinymce 富文本编