「玩转树莓派」搭建属于自己的云盘服务

栏目: 软件资讯 · 发布时间: 5年前

内容简介:最近在整理硬盘中的一些视频文档,虽然之前进行了分类,但时间一长,还是有点乱,找个东西得翻找半天。于是乎,就有了下面这个小玩意,自建云盘服务。安装完成以后进入数据库,无需输入密码:

「玩转树莓派」搭建属于自己的云盘服务

前言

最近在整理硬盘中的一些视频文档,虽然之前进行了分类,但时间一长,还是有点乱,找个东西得翻找半天。于是乎,就有了下面这个小玩意,自建云盘服务。

软硬清单

  • 外接硬盘一枚(用于挂载)
  • 宽带、路由器(家中常备)
  • SSH连接工具(SecureCRT,Xshell)
  • Nginx、 PHP 、owncloud、ngrok
  • 装好系统的树莓派 3B+ 一只(充电器、CPU散热风扇等)

配置环境

安装 Nginx

sudo apt-get update
sudo apt-get install nginx
sudo service nginx start

安装 PHP

# owncloud 需要的基础库,必须要安装
sudo apt-get install php7.0-fpm php7.0-cli php7.0-curl php7.0-gd php7.0-mcrypt php7.0-cgi
sudo apt-get install php7.0-intl  php7.0-mysql php7.0-zip php7.0-dom  php7.0-mbstring

sudo service php7.0-fpm restart

安装 MySql

sudo apt-get install mysql-server
sudo apt-get install mysql-client

安装完成以后进入数据库,无需输入密码:

sudo  mysql -u root -p

修改密码:

sudo systemctl restart mysql

sudo systemctl status mysql

云盘安装

下载最新资源,国外网站,可能略慢,请耐心等待:

wget https://download.owncloud.org/community/owncloud-10.1.1.tar.bz2

下载完成,解压文件:

sudo tar -xvf owncloud-10.1.1.tar.bz2

云盘 owncloud 配置文件:

server {
  # 80端口被占用,这里使用8081
    listen 8081 default_server;
    listen [::]:8081 default_server;
  # 安装目录
    root /home/pi/owncloud;
    index index.php index.htm;
    client_max_body_size    10G; 
    fastcgi_buffers    64    4K; 
    gzip    off; 
    rewrite    ^/caldav(.*)$    /remote.php/caldav$1 redirect; 
    rewrite    ^/carddav(.*)$    /remote.php/carddav$1 redirect;
    rewrite    ^/webdav(.*)$    /remote.php/webdav$1 redirect;
    index    index.php;
    error_page    403    /core/templates/403.php;
    error_page    404    /core/templates/404.php;
    location = /robots.txt {
        allow all; 
        log_not_found off; 
        access_log off; 
    } 
    location ~ ^/(?:\.htaccess|data|config|db_structure\.xml|README){
        deny all; 
    }
    location / {
        # The following 2 rules are only needed with webfinger 
        rewrite ^/.well-known/host-meta /public.php?service=host-meta last; 
        rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json last; 
        rewrite ^/.well-known/carddav /remote.php/carddav/ redirect; 
        rewrite ^/.well-known/caldav /remote.php/caldav/ redirect; 
        rewrite ^(/core/doc/[^\/]+/)$ $1/index.html; 
        try_files $uri $uri/ /index.php; 
    }
    location ~ \.php(?:$|/) {
        fastcgi_pass unix:/run/php/php7.0-fpm.sock;
        fastcgi_split_path_info ^(.+\.php)(/.+)$; 
        include fastcgi_params; 
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
        fastcgi_param PATH_INFO $fastcgi_path_info; 
        #ifastcgi_pass php-handler; 
    }
    location ~* \.(?:jpg|jpeg|gif|bmp|ico|png|css|js|swf)$ {
          expires 30d; 
          # Optional: Don't log access to assets 
          access_log off; 
    } 

}

配置完成后,进入安装界面,输入管理员账号密码以及数据库相关信息,点击进入下一步即可安装成功:

「玩转树莓派」搭建属于自己的云盘服务

初始页面:

「玩转树莓派」搭建属于自己的云盘服务

内网穿透

如果你想要在非局域网中访问,就需要加一个穿透,来访问我们内网的服务。

首先,我们要把之前生成的 ngrok 客户端(linux_arm)上传到树莓派:

然后,创建一个 ngrok.yml 配置文件:

server_addr: "ngrok.52itstyle.vip:4443"
trust_host_root_certs: false
tunnels:
  owncloud:
    proto:
      http: "8081"

启动服务:

./ngrok -config=ngrok.yml start owncloud

SSH是要关闭的,所以要使 ngrok 后台运行:

# 首先安装screen
sudo apt-get install screen

之后运行:

screen -S 任意名字(例如:keepngork)

然后运行ngrok启动命令:

./ngrok -config=ngrok.yml start owncloud

最后按快捷键:

ctrl+A+D

如果出现以下,既可以保持ngrok后台运行。

[detached from 14930.keepngork]

最后,配置信任域名,否则穿透域名无法访问:

sudo vim config/config.php

加入代理域名:

array (
    0 => '192.168.1.157:8081',
    1 => 'owncloud.ngrok.52itstyle.vip',
  ),

演示地址: http://owncloud.ngrok.52itstyle.vip

来张前台:

「玩转树莓派」搭建属于自己的云盘服务

来张后台:

「玩转树莓派」搭建属于自己的云盘服务


以上所述就是小编给大家介绍的《「玩转树莓派」搭建属于自己的云盘服务》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Types and Programming Languages

Types and Programming Languages

Benjamin C. Pierce / The MIT Press / 2002-2-1 / USD 95.00

A type system is a syntactic method for automatically checking the absence of certain erroneous behaviors by classifying program phrases according to the kinds of values they compute. The study of typ......一起来看看 《Types and Programming Languages》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换