我想用 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。
如果您使用自签名证书,您将收到一条安全警告,提示您证书颁发者不受信任,您可以忽略该警告。
您将看到设置屏幕:
必需设置
在创建管理员帐户下,您必须输入管理用户帐户的用户名和密码。您可以选择任何您想要的用户名和密码。存储和数据库
- 单击“存储和数据库”可查看所有数据库选项,并可选择更改默认数据存储目录。
- 您要使用的数据库必须已经安装,并且您必须拥有数据库管理员用户和密码。
- 输入任意名称作为数据库名称。这必须是一个尚不存在的数据库。
- 如果您不使用 Apache 作为 Web 服务器,强烈建议将数据目录配置到文档根目录之外的位置。否则所有用户数据都可能公开可见!
数据库选择
- 有关选择哪种数据库系统的指南,以及如何设置它们以用于 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,则会出现以下错误:
有关配置示例,请参阅 config/config.sample.php 文档。