如何在Ubuntu 14.04与Pydio的主机的文件共享服务器

介绍

随着云的采用增加,越来越多的数据被远程存储。 从音乐,图片到个人文档,许多人正在将文件上传到他们不管理的服务器上。 如果你宁愿让你控制的服务器上的文件,可以使用托管自己的Dropbox般的文件共享服务器Pydio (原AjaXplorer)。

Pydio提供了许多与其他文件同步服务相同的功能:Web界面,Mac,Windows和Linux的本地客户端,iOS和Android的移动客户端,以及与其他Pydio用户或公众共享文件的能力。

目标

在本文中,我们将站立一个简单的Pydio安装,运行良好,即使没有强大的硬件。 与许多企业级开源项目一样,Pydio有一个社区版和企业版。 我们将安装社区版本,但请注意,对于小于10人的团队,企业许可证是免费的。

在我们的软件,我们将使用Postfix电子邮件支持; 默认情况下,PHP无法发送电子邮件。 如果您想更轻的解决方案,可以安装ssmtp ,但这一设置使用Postfix的,因为它需要调整,以让PHP支持它的最少。 请注意,启用电子邮件支持不是必需的,但它使事情更简单; 没有它,Pydio将无法发送密码重置电子邮件或欢迎电子邮件。

我们还将坚持使用Apache作为我们的Web服务器(为简单起见)和一个SQLite数据库(而不是MySQL,更少的移动部分)。 这个设置是伟大的,如果使用Pydio的组不大或不推送大量的数据到服务器在同一时间。 然而,如果你需要一些更强大的功能,有一些指导如何提高性能的结论。

先决条件

要遵循本教程,您需要:

  • 一个Ubuntu的14.04Droplet与Sudo非root用户

  • Apache安装,您可以通过以下做到这盏灯教程的第2步

  • 一个FQDN(完全合格域名),您可以通过以下设置该主机名教程

  • Postfix的安装,您可以通过以下通过“配置Stapling”从步骤设置此Stapling的安装教程 在安装过程中提示时,选择互联网站点的配置,并输入您的域名(例如example.com系统邮件名称 )。

我们还将使用Let's Encrypt为您的域设置SSL证书。 你会是下面这让我们在Apache教程加密 ,但为了简化安装,我们将不会设置,直到第3步中安装Pydio。

如果您想了解更多关于SSL / TLS证书是如何工作的,请仔细阅读本OpenSSL的要领文章

第1步 - 安装Pydio

在这一步,我们将安装Pydio的依赖和Pydio本身。

首先,更新您的包索引。

sudo apt-get update

现在,安装PHP。

sudo apt-get install php5 libapache2-mod-php5

接下来,我们需要下载Pydio tar文件并在我们的Web服务器上解压缩。 该Pydio下载托管在SourceForge上 您可以点击查找距离您最近的地理位置的镜子,或者您可以使用以下链接使用英国镜子。

截至发布时间,Pydio的版本为6.2.2。 你可能想检查Pydio是否已更新,并从SourceForge抓取最新版本,如果是这样。

将Pydio tar文件下载到您的主目录中。

wget -P ~/ http://vorboss.dl.sourceforge.net/project/ajaxplorer/pydio/stable-channel/6.2.2/pydio-core-6.2.2.tar.gz

解压缩tarball。

tar -xvzf ~/pydio-core-6.2.2.tar.gz

然后,它进入了Ubuntu的服务器,在网站上的默认位置/var/www

sudo mv ~/pydio-core-6.2.2 /var/www/pydio

一旦目录就位,我们将需要更改其权限,以便Apache可以存储数据和更新配置文件。

sudo chown -R www-data:www-data /var/www/pydio

第2步 - 设置PHP模块

有了Pydio,我们需要安装和设置几个依赖关系,使Pydio正常工作。 我们将在此步骤中进行大量更改,并且在每个步骤后,我们都会提示重新启动Apache。 你可以这样做,如果你想,但在这里,我们将等待所有的设置的结束,并重新启动Apache一次。

首先,我们将安装和启用我们需要的额外的PHP模块。

sudo apt-get install php5-mcrypt php5-gd php5-sqlite

其中一个PHP模块, mcrypt ,默认情况下不启用。 我们可以通过启用phpenmod

sudo php5enmod mcrypt

除了安装和启用一些PHP模块,我们需要启用a2enmod Apache模块或同步客户端将无法正常工作。

sudo a2enmod rewrite

现在,PHP是完全安装,我们需要做一些编辑在php.ini的文件。 有三行需要更新。 使用您喜欢的编辑器,如nano ,编辑php.ini文件。

sudo nano /etc/php5/apache2/php.ini

找到行output_buffering = 4096 ,改变4096Off

更新了/etc/php5/apache2/php.ini
; Default Value: Off
; Development Value: 4096
; Production Value: 4096
; http://php.net/output-buffering
output_buffering = Off

接下来,找到upload_max_filesize = 2M ,改变2M任何一大批像1G (M是MB的缩写,G是GB的缩写)。

更新了/etc/php5/apache2/php.ini
; Maximum allowed size for uploaded files.
; http://php.net/upload-max-filesize
upload_max_filesize = 1G

最后,发现post_max_size = 8M ,并改变它的相同数量upload_max_filesize或更大。 如果您认为同时有多个大型上传,或同时使用系统的多个用户,则可以使用更大的数字。

更新了/etc/php5/apache2/php.ini
; Maximum size of POST data that PHP will accept.
; Its value may be 0 to disable the limit. It is ignored if POST data reading
; is disabled through enable_post_data_reading.
; http://php.net/post-max-size
post_max_size = 1G

您可以保存并关闭/etc/php5/apache2/php.ini 这是Apache的php.ini文件; 接下来,打开命令行访问php.ini文件在/etc/php5/cli/php.ini

sudo nano /etc/php5/cli/php.ini

在此文件中进行与上述相同的三个更改,然后保存并关闭它。

第3步 - 配置Apache

在这一步中,我们将定制Apache配置。

首先,创建并打开一个名为新文件pydio.conf用你最喜欢的文本编辑器。

sudo nano /etc/apache2/sites-available/pydio.conf

下面Apache配置是副本000-default以除去评价和增加了此特定Pydio几个附加块的配置文件安装,像文档根和日志文件。

/etc/apache2/sites-available/pydio.conf
<VirtualHost *:80>
    ServerAdmin sammy@your_server_ip
    ServerName your_server_ip
    DocumentRoot /var/www/pydio

    ErrorLog ${APACHE_LOG_DIR}/pydio-error.log
    CustomLog ${APACHE_LOG_DIR}/pydio-access.log combined

    <Directory /var/www/pydio/>
        AllowOverride All
    </Directory>
</VirtualHost>

在您复制并粘贴到pydio.conf ,让我们去了它是什么:

  • <VirtualHost *:80>定义了一个虚拟主机 ,它允许多个站点在单个服务器上承载。 这行专门将此虚拟主机定义为此服务器上的默认站点,它将通过端口80连接。

  • ServerAdmin定义的电子邮件地址的Apache发送错误,如果错误处理设置的方式。

  • ServerName是用于Pydio服务器或服务器的IP的DNS名称。 如果你开始使用IP,并想在以后改变它,你可以,或者你可以离开,但IP添加ServerAlias行以新的DNS名称; 两者都会工作。

  • DocumentRoot是那里的网站存储在您的DropletApache需要服务器最多。

  • ErrorLogCustomLog定义在哪里保存的Apache日志。 如果您需要非常自定义的日志记录设置,这些日志选项可能会变得非常复杂,但这些默认值将适用于我们的目的。

将此配置粘贴到文件中,然后保存并关闭它。 使用我们的Apache配置文件,我们现在需要禁用默认的Apache配置。

sudo a2dissite 000-default

现在,启用我们的两个配置文件。

sudo a2ensite pydio

在前提条件中,我们提到我们将设置Let's Encrypt以启用SSL / TLS加密。 这使我们的登录信息和我们的数据安全,从而可以在我们的本地网络或互联网上嗅探数据包。 因为我们使用Apache作为我们的网络服务器,Let's Encrypt支持为我们自动配置Apache。 为了方便起见,我们设置了没有SSL的Apache,所以当我们运行Auto Let's Encrypt脚本时,它会为我们设置。

现在是时候按照咱们在Apache教程加密 使用您在设置Let's Encrypt期间选择的FQDN,安装程序脚本将看到我们的Apache配置并为您创建一个SSL版本。

一定要选择pydio.conf如果你问,你想选择哪种虚拟主机。 因为我们希望我们的连接永远是安全的,请务必选择安全-使所有请求重定向时,让我们加密脚本要求,以安全的HTTPS访问

最后,我们可以重新启动Apache,使我们的更改生效。

sudo service apache2 restart

第4步 - 自定义PHP Mailer支持

应根据先决条件安装Postfix。 接下来,我们需要进行快速更改,以防止本地应用程序使用它。

为了使这一变化,我们需要编辑Postfix的配置文件, /etc/postfix/main.cf

sudo nano /etc/postfix/main.cf

搜索inet_interfaces线和更新alllocalhost

/etc/postfix/main.cf
. . .
recipient_delimiter = +
inet_interfaces = localhost
inet_protocols = all
. . .

现在重新启动Postfix服务以启用更改。

sudo service postfix restart

第5步 - 完成Pydio设置

Pydio已安装; 在此步骤中,我们将完成设置。

访问https:// example.com在你喜欢的浏览器。 你看到的第一页将被标记Pydio诊断工具 在该页面的列表,上面的项目是关于服务器charset编码警告。 我们会解决这个问题。 只要这是唯一的警告,而其余项目都OK,点击按钮点击这里继续PYDIO。

出现提示时,单击开始向导>按钮。 主要选项的第一页,填写字段:

  • 应用程序标题 ,这是什么在浏览器标题栏中看到
  • 欢迎辞 ,这被视为在登录屏幕上
  • 管理员登录的管理员用户名
  • 管理员显示名称 ,这是它听起来像
  • 管理员密码

当你拥有所有的填写,右下角按下红色>>按钮。

Pydio安装程序主选项

数据库联接的第二页上,从数据库下拉菜单中选择SQLite的3。 不要将文件行修改为存储SQLite数据库的位置。 点击测试连接按钮,以确保一切正常。 如果测试成功,您应该会看到一个绿色框将出现在屏幕的底部。 然后通过点击>>按钮继续。

高级选项第三阶段,大部分的东西会被自动检测到,所以你只需要确认他们是正确的。 我们需要做的一件事是启用电子邮件支持。

  • 对于启用电子邮件 ,从下拉菜单中选择Yes
  • 对于PHP梅勒 ,选择邮件
  • 输入您的电子邮件地址管理员电子邮件

您可以点击尝试发送一封电子邮件,配置数据按钮,以确保一切正常。

最后,通过点击安装按钮Pydio完成安装。

第6步 - 使用Pydio

现在Pydio已安装,我们将在登录屏幕上显示我们自定义的欢迎消息。 我们现在可以使用我们在上一步中定义的管理员用户登录。

一旦我们登录了,我们会看到左侧列出两个选项: 常见文件我的文件 这两个选项是所谓的工作空间 ,这基本上是文件共享或文件夹,在那里你可以存储的文件。 我的文件是只为你和Common Files是对这个Pydio安装的所有用户的共享文件夹。

我们将能够做出其他工作区,并与任何人分享他们。 现在Pydio已安装,单击,看看它是如何工作,并邀请其他用户存储他们的文件与您。

虽然网络界面很有用,您可以上传,下载,安排和共享您的数据,您可能会直接通过本机客户端上传您的文件与Pydio。 您也可以下载此桌面客户端 (苹果机/运/ Linux)的,在这里的iOS客户端Android客户端在这里

安装同步客户端后,启动Pydio Sync并按照向导让它同步本地第一个工作区。

Pydio同步向导

如果您选择使用自签名证书(而不是Let's Encrypt),您会收到有关证书的错误。 如果你这样做,检查信任SSL证书框的警告后,将出现在底部,然后再次单击连接按钮。

与其他文件共享工具将同步您的帐户下的所有内容,Pydio允许您选择同步每个工作区单独。 首次运行客户端时,可以选择要在本地同步的工作空间。 设置第一个同步后,您可以添加其他工作空间同步。

结论

Pydio允许您控制您的数据,并与所有主要的桌面和移动平台上的本机客户端,您的数据可以访问,无论何时你需要它。 但Pydio可以做的不仅仅是托管您的文件。 有集合插件来扩展功能。

如果你发现Pydio在这个设置的性能对你的用例来说太慢了,这里有一些提高它的提示:

  • 几个Pydio与MySQL或PostgreSQL后端而不是Sqlite。
  • 使用Nginx的作为Web服务器的代替的Apache。
  • 升级您的服务器以拥有更多的RAM和CPU
  • 你甚至可以启用WebDAV访问您的服务器对于那些了解WebDAV的第三方应用程序同步的。
赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏