Owncloud

Owncloud

我想用 Ubuntu 将我的旧电脑变成云存储服务器。请记住,我是 Ubuntu 新手,所以请你尽量让教程简短易懂。提前谢谢!:D

答案1

Owncloud

对你来说这似乎是一个很好的解决方案。它对我的基于 Ubuntu 的操作系统有用,并且提供了一个简单的安装过程,我在这里重现了这个过程以方便你,但请记住,Owncloud 在其支持网站上提供了足够的信息:https://doc.owncloud.org/server/7.0/admin_manual/installation/installation_wizard.html以及其他有用的资源。

它是一种自托管服务,类似于 Dropbox 帐户,但托管在您自己的服务器上,并且根据您的家庭服务器的限制(硬盘驱动器空间、微处理器速度和内存量)进行限制。

安装过程看上去似乎过于复杂,但其实很简单,只需下载一个文件,将其放在公共 html 文件夹中,然后在 Web 浏览器的地址栏中输入正确的地址即可。接下来是纯指令网页,之后您就可以安装它了。

我已在家庭和网络服务器上安装了 Owncloud 服务。如果您愿意,我可以为您提供一个帐户,以便您检查 Owncloud 的属性。

祝你好运!

安装向导

当 ownCloud 先决条件得到满足且所有 ownCloud 文件都安装在服务器上时,完成安装的最后一步是运行安装向导。打开 Web 浏览器进入新的 ownCloud 安装。

  • 如果你在访问安装向导的同一台机器上安装 ownCloud,则 URL 将是 http://本地主机/owncloud, 或者https://localhost/owncloud如果您已启用 SSL。
  • 如果你在另一台机器上安装 ownCloud,则必须通过其主机名或 IP 地址访问它,例如 http://example.com/owncloud
  • 如果您使用自签名证书,您将收到一条安全警告,提示您证书颁发者不受信任,您可以忽略该警告。

    您将看到设置屏幕:

../_images/安装向导.png

必需设置

在创建管理员帐户下,您必须输入管理用户帐户的用户名和密码。您可以选择任何您想要的用户名和密码。存储和数据库

  • 单击“存储和数据库”可查看所有数据库选项,并可选择更改默认数据存储目录。
  • 您要使用的数据库必须已经安装,并且您必须拥有数据库管理员用户和密码。
  • 输入任意名称作​​为数据库名称。这必须是一个尚不存在的数据库。
  • 如果您不使用 Apache 作为 Web 服务器,强烈建议将数据目录配置到文档根目录之外的位置。否则所有用户数据都可能公开可见!

../_images/安装向导-advanced.png

数据库选择

  • 有关选择哪种数据库系统的指南,以及如何设置它们以用于 PHP/ownCloud 的指南,请参阅数据库配置
  • 请注意,您只能在系统上实际安装的 PHP 数据库连接器中进行选择。
  • 一旦将 ownCloud 设置为使用特定数据库系统,就很难轻易迁移到另一个数据库系统。因此,请务必仔细考虑要使用哪个数据库系统。
  • 使用 MySQL/MariaDB 或 PostgreSQL 时,您有两个关于指定的数据库名称和用户帐户的选项:

    You can specify either an admin or the root user, and the name of a database which does not yet exist. This lets ownCloud create its own database; it will also create a database user account with restricted rights (with the same username as you specified for the administrative user, plus an oc_ prefix) and will use that for all subsequent database access.
    
    There are restrictions as to what characters a database name may or may not contain; see the MySQL Schema Object Names documentation for details);
    

完成安装

  • 输入所有设置后,点击“完成设置”
  • ownCloud 将根据给定的设置来设置你的云
  • 完成后,它将以管理员用户身份登录并显示“欢迎使用 ownCloud”屏幕。

设置强目录权限

为了加强安全性,我们建议尽可能严格地设置 ownCloud 目录的权限。这应在初始安装后立即完成。您的 HTTP 用户必须拥有 ownCloud 目录中的 config/、data/ 和 apps/ 目录,以便您可以配置 ownCloud、创建、修改和删除数据文件以及通过 ownCloud Web 界面安装应用程序。

您可以在 HTTP 服务器配置文件中找到 HTTP 用户。或者您可以创建一个 PHP 页面来帮您找到它。为此,请创建一个纯文本文件,其中包含一行:

将其命名为 whoami.php 并将其放在 /var/www/html 目录中,然后在 Web 浏览器中打开它,例如http://localhost/whoami.php。您应该会在浏览器页面中看到一行包含 HTTP 用户名的内容。

  • Debian/Ubuntu 中的 HTTP 用户和组是 www-data。
  • Fedora/CentOS 中的 HTTP 用户和组是 apache。
  • Arch Linux 中的 HTTP 用户和组是 http。
  • openSUSE 中的 HTTP 用户是 wwwrun,HTTP 组是 www。

笔记

当使用 NFS 挂载数据目录时,请勿更改其默认所有权。挂载驱动器的简单操作将为 ownCloud 设置适当的权限以写入目录。如果 NFS 挂载丢失,如上所述更改所有权可能会导致一些问题。

设置正确权限的简单方法是复制并运行此脚本。将 ocpath 变量替换为您 ownCloud 目录的路径,并将 htuser 变量替换为您自己的 HTTP 用户:

#!/bin/bash
ocpath='/var/www/owncloud'
htuser='www-data'

find ${ocpath}/ -type f -print0 | xargs -0 chmod 0640
find ${ocpath}/ -type d -print0 | xargs -0 chmod 0750

chown -R root:${htuser} ${ocpath}/
chown -R ${htuser}:${htuser} ${ocpath}/apps/
chown -R ${htuser}:${htuser} ${ocpath}/config/
chown -R ${htuser}:${htuser} ${ocpath}/data/

chown root:${htuser} ${ocpath}/.htaccess
chown root:${htuser} ${ocpath}/data/.htaccess

chmod 0644 ${ocpath}/.htaccess
chmod 0644 ${ocpath}/data/.htaccess

如果您已经定制了 ownCloud 安装并且您的文件路径与标准安装不同,请相应地修改此脚本。

以下列出了您 ownCloud 目录和文件的推荐模式和所有权:

  • 所有文件对于文件所有者来说都应该是可读写的,对于组所有者来说应该是只读的,对于所有人来说应该是零
  • 所有目录都应该是可执行的(因为目录始终需要设置可执行位),目录所有者可读写,组所有者可只读
  • / 目录应归 root:[HTTP 用户] 所有
  • apps/ 目录应归 [HTTP 用户]:[HTTP 用户] 所有。
  • config/ 目录应归 [HTTP 用户]:[HTTP 用户] 所有
  • data/ 目录应归 [HTTP 用户]:[HTTP 用户] 所有。
  • [ocpath]/.htaccess 文件应归 root:[HTTP 用户] 所有。
  • data/.htaccess 文件应归 root:[HTTP 用户] 所有。
  • 两个 .htaccess 文件都是读写文件所有者、只读组和世界

受信任域

ownCloud 将获取用于访问安装向导的 URL,并将其插入到 config.php 文件中的 trust_domains 设置中。ownCloud 服务器所需的所有域名都进入到 trust_domains 设置中。用户只有将浏览器指向 trust_domains 设置中列出的域名时才能登录 ownCloud。可以指定 IPv4 地址来代替域名。典型配置如下所示:

'trusted_domains' =>
  array (
   0 => 'localhost',
   1 => 'server1',
   2 => '192.168.1.50',
),

如果有负载均衡器,只要它发送正确的 X-Forwarded-Host 标头,就不会出现问题。

由于 loopback 地址 127.0.0.1 已加入白名单,因此 ownCloud 服务器上通过 loopback 接口访问 ownCloud 的用户将能够成功登录。如果使用了错误的 URL,则会出现以下错误: ../_images/不受信任的域.png

有关配置示例,请参阅 config/config.sample.php 文档。

相关内容