基于 Ubuntu 搭建个人网盘

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

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

实验内容

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

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

实验资源

云服务器

软件环境

Ubuntu 16.04.1 LTS 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> ### 安装依赖环境 在 Debian/Ubuntu 系统下,可以使用以下命令安装 MySQL: ``` sudo apt-get update sudo apt-get install mysql-server ``` 使用以下命令安装 Python 相关依赖: ``` sudo apt-get install python2.7 python-setuptools python-imaging python-ldap python-mysqldb python-memcache python-urllib3 ``` 安装 MySQL 过程需要为 MySQL 的 root 用户设置新密码,请记住该**[密码]**以供后面步骤使用。 > <checker type="output-contains" command="sudo ps -ef | grep -v grep" hint="安装启动 mysql"> > <keyword regex="mysqld" /> > </checker> > <checker type="output-contains" command="dpkg -l | grep python-mysqldb" hint="安装 python 相关依赖"> > <keyword regex="python" /> > </checker> ### 为 Seafile 创建一个用户 创建 Seafile 用户,使用它运行 Seafile 服务: ``` sudo useradd -m -s /bin/bash seafile ``` 为该用户设置密码: ``` sudo passwd seafile ``` > <checker type="output-contains" command="cat /etc/passwd" hint="创建用户"> > <keyword regex="seafile" /> > </checker> ### 下载 Seafile 切换到新用户,需要输入你刚才为seafile用户设置的密码: ``` su - seafile ``` 切换目录: ``` cd ~ ``` [这里][https://www.seafile.com/download/]可以查看获取最新 Seafile 下载链接,参考以下命令进行下载。 ``` wget https://devlab-1251520893.cos.ap-guangzhou.myqcloud.com/seafile-server_6.2.5_x86-64.tar.gz ``` 解压: ``` tar -xzf seafile-server_* mv seafile-server-*/ seafile-server/ ``` > <checker type="output-contains" command="ls /home/seafile" hint="请下载 Seafile"> > <keyword regex="seafile-server" /> > </checker> ### 配置 Seafile 运行Seafile设置脚本,并回答预设问题: ``` cd seafile-server* ./setup-seafile-mysql.sh ``` 其中: * `[ server name ]` 字段输入 `Seafile`。 * `[ 1 or 2 ]` 字段输入 `1`。 * `[ This server's ip or domain ]` 字段输入教程第一步申请的域名或者IP地址(${runtime.vars.cvmIpAddress})。 * mysql 的 `[ root password ]` 字段输入数据库密码。 * `[ password for seafile ]` 字段输入 seafile 用户密码。 * 其他字段一路回车使用默认值。 具体执行过程如下图: ![](https://mc.qcloudimg.com/static/img/de2fb7e13f26794671aec59bcd0c9165/1.png) > <checker type="output-contains" command="ls /home/seafile/seafile-server-*/" hint="Seafile 未配置"> > <keyword regex="seafile.sh" /> > </checker> ### 启动 Seafile ``` ./seafile.sh start ./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> ### 大功告成! 恭喜,您的 Seafile 已经部署完成,您现在拥有专属的网盘了,登录的帐号密码为您启动 Seafile 步骤中设置的邮箱和密码。 - 可以通过 IP 访问网盘:[http://${runtime.vars.domain}:8000][] - 可以通过域名访问网盘:如 http://www.yourdomain.com:8000 ,其中 `www.yourdomain.com` 替换为您注册的域名