ownCloud是一个自由且开源的个人云存储解决方案,包括两个部分:服务器和客户端。ownCloud 最早由KDE开发者Frank Karlitschek于2010年一月创建,目标是成为商业云服务提供商的替代。与商业云存储服务不同,ownCloud可以自由获取无需付费,但相应地,用户必须自行架设 ownCloud的服务器,这需要一点技术。在本教程中,我们将教你在Ubuntu 18.04服务器上安装和配置ownCloud服务器。
要完成本教程,你需要具备以下内容:
sudo
命令的非root账号的Ubuntu 服务器,并且已开启防火墙。没有服务器的同学可以在这里购买,不过我个人更推荐您使用免费的腾讯云开发者实验室进行试验,学会安装后在购买服务器。ownCloud为我们服务器的发行版维护了一个专用的软件库。首先,使用curl
命令下载他的密钥,然后使用add
命令将其导入apt-key
:
curl https://download.owncloud.org/download/repositories/10.0/Ubuntu_18.04/Release.key | sudo apt-key add -
'Release.key'文件包含一个PGP公钥,该公钥使apt
用于验证ownCloud包是否可信。
除了导入密钥外,还要为apt
在sources.list.d
目录中创建一个owncloud.list
文件。该文件将包含ownCloud软件库的地址。
echo 'deb http://download.owncloud.org/download/repositories/10.0/Ubuntu_18.04/ /' | sudo tee /etc/apt/sources.list.d/owncloud.list
现在,我们可以使用包管理器来查找和安装ownCloud。我们还将安装一些其他PHP库,这些库用于添加ownCloud额外的功能。通过输入以下命令更新本地软件包并安装所有内容
sudo apt update
sudo apt install php-bz2 php-curl php-gd php-imagick php-intl php-mbstring php-xml php-zip owncloud-files
现在我们需要的一切都安装在服务器上,接下来我们只要完成配置,就可以开始使用该服务。
把安装的ownCloud的源码文件复制到/var/www/owncloud
目录下。这个文件夹设置由Apache配置文件控制,我们需要将Apache配置文件中的DocumentRoot
设置更改指向到新目录。
你可以使用apache2ctl
和DUMP_VHOSTS
选项来找到虚拟主机文件找到你的当前服务域名的配置文件咋那个目录下:
sudo apache2ctl -t -D DUMP_VHOSTS | grep server_domain_or_IP
输出可能看起来像这样:
*:443 server_domain_or_IP (/etc/apache2/sites-enabled/server_domain_or_IP-le-ssl.conf:2)
port 80 namevhost server_domain_or_IP (/etc/apache2/sites-enabled/server_domain_or_IP.conf:1)
在输出的命令中,我们看到了配置目录,这些是你需要编辑的文件。
打开这个我们需要配置的文件,记得添加sudo
:
sudo nano /etc/apache2/sites-enabled/server_domain_or_IP.conf
在里面,搜索DocumentRoot
更改使其指向/var/www/owncloud
目录:
<VirtualHost *:80>
. . .
DocumentRoot /var/www/owncloud
. . .
</VirtualHost>
完成后保存并关闭文件。完成后,请检查Apache文件的语法,以确保配置中没有拼写错误:
sudo apache2ctl configtest
Syntax OK
你可能会看到有关ServerName
全局设置的警告。只要输出结束Syntax OK
,你就可以忽略该警告。如果你看到其他错误,请返回并检查刚编辑的文件是否存在错误。
如果你的语法检查已通过,请重新加载Apache服务:
sudo systemctl reload apache2
Apache现在应该知道如何为ownCloud提供服务。
在我们继续进行配置之前,我们需要设置数据库。我们需要提供数据库名称,数据库用户名和数据库密码,以便ownCloud可以在MySQL中连接和管理其信息。不过,我在这里建议您使用腾讯云云数据库进行配置,方便快捷安全。
首先使用MySQL管理帐户登录数据库:
sudo mysql
为ownCloud创建一个专用数据库。我们将数据库命名为 owncloud
:
CREATE DATABASE owncloud;
注意:每个MySQL语句必须以分号(;)结尾。如果你遇到问题,请务必检查是否存在此问题。
创建一个单独的MySQL用户帐户来管理新创建的数据库。从管理和安全角度来看,创建单数据库和帐户是一个好主意。与数据库的命名一样,选择你喜欢的用户名。我们选择在本教程中使用owncloud
。
GRANT ALL ON owncloud.* to 'owncloud'@'localhost' IDENTIFIED BY 'owncloud_database_password';
警告:请务必在
owncloud_database_password
所在的位置输入你的密码;
在用户分配了对数据库的访问权限后,执行flush特权操作以确保MySQL知道最近的权限分配:
FLUSH PRIVILEGES;
退出MySQL:
exit
安装ownCloud服务器并设置数据库后,我们准备将注意力转向配置ownCloud应用程序。
浏览器中访问你的域名或者IP,就看到到ownCloud Web界面:
https://server_domain_or_IP
注意:如果你使用的是自签名SSL证书,则可能会收到警告,因为证书未由你的某个浏览器的受信任机构签名。这是正常的。如果用腾讯云SSl证书,就不会出现警告。
单击相应的按钮或链接以转到ownCloud管理页面。你应该在浏览器中看到ownCloud Web配置页面。
输入用户名和密码,创建管理员帐户。出于安全考虑,用户名不要使用“admin”之类的名称:
接下来,按原样保留Data folder设置,然后向下滚动到数据库配置部分。
填写你在上一节中创建的数据库名称,数据库用户名和数据库密码的详细信息。如果你使用了本教程中的设置,则数据库名称和用户名都将是owncloud
。将数据库主机为localhost
,如果您使用的是腾讯云云数据库,则需要将localhost
改为你数据库的地址:
单击Finish setup按钮,使用你自己的信息完成ownCloud的配置。你将进入登录页面,你可以使用新帐户登录:
首次登录时,将出现一个屏幕,你可以在其中下载应用程序以在各种设备上同步文件。你可以下载和配置这些内容,也可以在以后进行下载和配置。
在这里,你可以创建或上传文件到你的个人云。
ownCloud内容可以在用户之间共享,也可以在外部与公共URL共享ownCloud的优点是信息存储在你无需第三方控制和管理的地方。如果你比较在意个人隐私安全,我推荐你使用ownCloud服务,搭建方便快捷,关于文件存储,我推荐你用腾讯云文件存储 CFS服务,价格低廉,又能保证你文件的安全。更多Linux教程请前往腾讯云+社区学习更多知识。
参考文献: 《How To Install and Configure ownCloud on Ubuntu 18.04》 《ownCloud维基百科》
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。