基于 CentOS 搭建个人网盘

腾讯云
入门
0 个任务
剩余 1 个名额

你还可以 创建 或者 使用已有 云主机不限时上机

实验内容

在这个数据爆炸的时代,大部分人已经离不开个人云存储---网盘,但是遗憾的是大多数网盘陆续停止了服务。本实验带您一步步搭建基于  Seafile 的专属网盘,从此不再有网盘关停文件丢失的担忧。

首次可免费使用云主机 45 分钟 ,到期后云主机将被重置并退库,若想保留成果请及时留用。

实验资源

云服务器

软件环境

CentOS 7.2 64 位

目录

# 搭建 Seafile 专属网盘 ## 准备域名 > <time>15min ~ 20min</time> ### 域名注册 如果您还没有域名,可以[在腾讯云上选购][buy_link],过程可以参考下面的视频。 * [视频 - 在腾讯云上购买域名][buy_domain_video] > <link for="buy_link" href="https://dnspod.qcloud.com/?fromSource=lab"></link> > <video for="buy_domain_video" platform="qq" vid="p05077pwelw" name="域名选购"></video> ### 域名解析 域名购买完成后, 需要将域名解析到实验云主机上,实验云主机的 IP 为: ``` ${runtime.vars.cvmIpAddress} ``` 在腾讯云购买的域名,可以[到控制台添加解析记录][https://console.qcloud.com/domain],过程可参考下面的视频: * [视频 - 如何在腾讯云上解析域名][video_resolve_domain] > <video for="video_resolve_domain" platform="qq" vid="t0507ps9kxo" name="域名解析"></video> 域名设置解析后需要过一段时间才会生效,通过 `ping` 命令检查域名是否生效 [:question][replace],如: > <bubble for="replace">注意替换下面命令中的 `www.yourdomain.com` 为您自己的注册的域名</bubble> ``` ping www.yourdomain.com ``` 如果 ping 命令返回的信息中含有你设置的解析的 IP 地址,说明解析成功。 ## 安装 Seafile > <time>15min ~ 20min</time> ### 安装依赖环境 使用 `yum` 安装 Python 及 MySQL: ``` yum install python python-setuptools python-imaging python-ldap python-memcached MySQL-python mariadb mariadb-server ``` 启动 MariaDB 服务: ``` sudo systemctl start mariadb.service sudo systemctl enable mariadb.service ``` 配置 MySQL: ``` /usr/bin/mysql_secure_installation ``` 配置过程输入参数如截图所示,其中 `New password` 和 `Re-enter new password` 字段都设置为 `${runtime.vars.allocatedPassword}`,其他字段一路回车使用默认值: ![](https://mc.qcloudimg.com/static/img/a1f15db10f82310eca74a3b8e32ae608/1.png) > <checker type="output-contains" command="ps -ef | grep -v grep" hint="MariaDB 未启动"> > <keyword regex="mariadb" /> > </checker> > <checker type="output-contains" command="netstat -npl" hint="MySQL 未安装"> > <keyword regex="LISTEN" /> > <keyword regex="3306" /> > </checker> > <checker type="output-contains" command="mysql -u root --password='${runtime.vars.allocatedPassword}' -e &quot;select 'success' as ''&quot;" hint="使用生成的密码无法连接 MySQL,如果你已使用自己的密码完成了设置,请直接进入下一步。"> > <keyword regex="success" /> > </checker> ### 安装 Seafile 下载 Seafile 安装包: ``` wget https://mc.qcloudimg.com/static/archive/3d8addbe52be88df4f6139ec7e35b453/seafile-server_5.1.4_x86-64.tar.gz ``` 解压 Seafile 安装包: ``` tar -zxvf seafile-server_5.1.4_x86-64.tar.gz ``` 安装 Seafile 安装包: ``` sudo mkdir -p /opt/seafile/installed sudo mv seafile-server_5.1.4_x86-64.tar.gz /opt/seafile/installed sudo mv seafile-server-5.1.4/ /opt/seafile cd /opt/seafile/seafile-server-5.1.4 sudo ./setup-seafile-mysql.sh ``` 执行过程输入参数如截图所示,`[server name]` 字段输入 `Seafile`,`[ This server's ip or domain ]` 字段输入教程第一步申请的域名,`[ 1 or 2 ]` 字段选择 `1`,mysql 的 `[ root password ]` 字段输入 `${runtime.vars.allocatedPassword}`,其他字段一路回车使用默认值: ![](https://mc.qcloudimg.com/static/img/de2fb7e13f26794671aec59bcd0c9165/1.png) > <checker type="output-contains" command="ls /opt/seafile/seafile-server-5.1.4" hint="Seafile 未安装"> > <keyword regex="seafile.sh" /> > </checker> > <checker type="output-contains" command="ls /opt/seafile/seafile-server-5.1.4" hint="Seafile 未安装"> > <keyword regex="seahub.sh" /> > </checker> ## 启动 Seafile 及修改防火墙规则 ### 启动 Seafile ``` sudo ./seafile.sh start sudo ./seahub.sh start ``` 执行过程输入参数如截图所示,其中 `[ admin email ]` 设置为您登录网盘的帐号,如 `admin@qcloudlab.wang`,`[ admin password ]` 和 `[ admin password again ]` 设置为登录网盘的密码,如 `admin_${runtime.vars.allocatedPassword}`: ![](https://mc.qcloudimg.com/static/img/d243d5763695b4d926e9d7fdd0e0e924/1.png) > <checker type="output-contains" command="ps -ef" hint="Seafile 未启动"> > <keyword regex="seafile" /> > </checker> ### 修改防火墙规则 ``` sudo firewall-cmd --zone=public --permanent --add-port=8082/tcp sudo firewall-cmd --zone=public --permanent --add-port=8000/tcp sudo firewall-cmd --reload ``` > <checker type="output-contains" command="curl http://${runtime.vars.cvmIpAddress}:8000 -I --silent" hint="Seafile 不能正常访问"> > <keyword regex="/accounts/login" /> > </checker> ### 大功告成! 恭喜,您的 Seafile 已经部署完成,您现在拥有专属的网盘了,登录的帐号密码为您启动 Seafile 步骤中设置的邮箱和密码。 - 可以通过 Ip 访问网盘:[http://${runtime.vars.domain}:8000][] - 可以通过域名访问网盘:如 http://www.yourdomain.com:8000 ,其中 `www.yourdomain.com` 替换为您注册的域名