在Ubuntu18.04上搭建私有网盘 —— ownCloud

  随着个人资料的增多以及访问便捷性需求的增大,如何选择一个高效便捷的网盘成为一个问题。当前市面上有各种各样的网盘,比如:百度网盘、Google Drive、Dropbox、 OneDrive和Apple Cloud等。但是国内的网盘质量参差不齐,有些免费网盘容量太小,有些免费网盘会限速,而国外的网盘很多都需要科学上网,要么就是网速比较慢。而且使用这些网盘最大的一个问题是,文件的隐私性有可能得不到保证。所以,搭建一个私有网盘就很有必要了,这里我选择了ownCloud。
  ownCloud是一个自由且开源的客户端到服务器端的软件,可作为个人云存储解决方案。其客户端不仅有Windows、Mac和Linux版本以及Android,iOS版本,而且还支持网页版访问。同时,还可以单独对每个文件创建公共链接,便于分享。
  使用ownCloud首先需要拥有一台服务器或者VPS(需要VPS的同学可以参考我的这篇文章:如何搭建自己的虚拟专用服务器),然后需要掌握一些基本的Linux命令。不过,如果没有相关知识的话也没关系,按照本篇文章的命令逐条敲下来,基本也能完整的搭建一个可用的ownCloud网盘。我的搭建环境如下:

一 安装ownCloud

  在Ubuntu的默认软件库里面是没有ownCloud的,我们需要手动将软件安装源加入到它的sourcelist中去。首先,先使用curl命令下载ownCloud的release key,然后通过add命令导入到apt-key中。具体命令如下:

curl https://attic.owncloud.org/download/repositories/10.0/Ubuntu_18.04/Release.key | sudo apt-key add -

之后,将包含owncloud安装地址的文件放入到apt工具的sourcelist中去。具体方法如下:

echo 'deb http://download.owncloud.org/download/repositories/10.0/Ubuntu_18.04/ /' | sudo tee /etc/apt/sources.list.d/owncloud.list

最后,就可以通过下面的命令安装ownCloud了,与此同时,安装一些用来支持ownCloud的PHP插件。具体命令如下:

sudo apt update && sudo apt install php-bz2 php-curl php-gd php-imagick php-intl php-mbstring php-xml php-zip owncloud-files -y

上述命令完成之后,就可以在服务器的/var/www/owncloud目录下找到已经完成安装的ownCloud的所有文件了。

二 设置默认目录

  上面提到,ownCloud的默认安装目录是/var/www/owncloud,而在apache默认的配置文件/etc/apache2/sites-enabled/000-default.conf中,定义了网站的源码目录DocumentRoot/var/www/html。为了保证owncloud工作正常,这两个路径必须一致。推荐做法是修改apache默认的配置文件DocumentRoot的值为/var/www/owncloud。具体方法为:

  • 修改apache默认的配置文件/etc/apache2/sites-enabled/000-default.conf中的相应配置如下:
DocumentRoot /var/www/owncloud
  • 重启apache服务,使上述配置生效:
sudo service apache2 restart

这是重启之后,在浏览器中输入服务器对应的ip地址,就会看到下图:

722-1-owncloud-index

证明owncloud 安装成功。

三 为ownCloud建立数据库

  在服务器的终端中输入以下命令,登录数据库:

sudo mysql -u root -p

使用以下命令为owncloud创建一个数据库。这里,我们假设owncloud对应的数据库名字为owncloud_DB

mysql> CREATE DATABASE owncloud_DB;

接下来,创建单独的MySQL用户来管理owncloud的数据库。这里,我们假设新创建用户名为ocuser,密码为OCuser666#。那么输入以下命令:

mysql> GRANT ALL ON owncloud_DB.* to 'ocuser'@'localhost' IDENTIFIED BY 'OCuser666#';

注意,这里的密码设置可以自己随意设置,但是如果出现以下提示,则证明密码设置过于简单,则需要换一个复杂的密码重新执行上述命令。一般建议密码中应包含数字,大小写字母和符号。

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

最后,执行下列命令,更新设置并退出数据库:

mysql> FLUSH PRIVILEGES;
mysql> exit

四 配置ownCloud

  在建立数据库之后,我们就可以来配置owncloud了。回到上图浏览器中显示的owncloud主页。

4.1 创建管理员帐号

  在“创建管理员帐号”下面用来设置owncloud所有用户的管理员的登陆帐号和密码。可以按照自己习惯随意设置。这里,我们假设管理员帐号为:OCadmin,密码为:OCuser888*

4.2 数据目录

  “数据目录”是指ownCloud产生的数据保存在哪里,这里我们选择默认配置/var/www/owncloud/data

4.3 配置数据库

  这里需要我们在“3. 为owncloud建立数据库”中为owncloud创建的数据库名称(owncloud_DB),用户帐号(ocuser)和密码(OCuser666#)。

因此,这里的具体配置如下:

722-2-owncloud-config

然后,点击“安装完成”。如果一切顺利的话,ownCloud就配置成功了,并且会自动跳转到如下图的登录页面:

722-3-owncloud-login

输入在“4.1 创建管理员帐号”中,我们创建的管理员帐号(OCadmin)和密码(OCuser888*)就可以进入我们刚刚搭建好的ownCloud网盘了。

722-4-owncloud-home

五 为ownCloud安装ssl证书

  在完成上述配置之后,为了保证传输数据的安全性,最好再为ownCloud网盘安装ssl证书,其安装方法和我们之前为博客安装ssl证书的方法一模一样,这里就不重复介绍了,具体可以参考另一篇博客:个人博客免费申请并安装SSL证书

发表评论

电子邮件地址不会被公开。 必填项已用*标注