如何部署云存储ownCloud?

Cloud storage

1 理论基础

1.1 项目简介

ownCloud是一个基于Linux的开源云项目,允许用户以浏览器或WebDAV方式访问云服务器,进行各项管理工作。ownCloud支持多种设备访问,用户可以很方便地使个人设备与服务器上存储的文件、日程安排、通讯录、书签等重要数据保持同步。

1.2 最小系统配置

Server OS requires PHP 5.4 or greater (5.6 recommended)
Fully packaged:
– Debian 8
– RHEL / CENTOS 6.6, 7
– Ubuntu 14.04 LTS and 15.10
– SLES 11 SP4, SLES 12 SP1
Webserver: Apache
Databases: MySQL 5.5, Maria 10.0 or higher, PostgreSQL 9.1.19 or higher, Oracle 11g+ (Oracle is Enterprise Subscription only)
Apache: 2.2 or 2.4 (2.4 is recommended)
Hypervisors: Hyper-V, VMware ESX, Xen, KVM

2 实践部分

2.1 环境配置

ipaddress = 10.168.0.156
OS = CentOS 6.8

2.2 Apache部分配置

2.2.1 yum源安装

yum install -y httpd

2.2.2 启动服务并配置开机启动

/etc/init.d/httpd start
chkconfig httpd on

2.2.3 开启httpd的相关端口

vim /etc/sysconfig/iptables

增加如下行(复制ssh的22改80即可)

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

重启防火墙服务

/etc/init.d/iptables restart

2.3 MySQL部分配置

2.3.1 配置MySQL源

vim /etc/yum.repos.d/MySQL.repo

输入如下配置:

[mysql-5.5-community]
name=mysql-5.5-community
baseurl=http://repo.mysql.com/yum/mysql-5.5-community/el/6/x86_64/
gpgcheck=1
gpgkey=http://repo.mysql.com/RPM-GPG-KEY-mysql

2.3.2 安装MySQL相关包

yum install -y mysql-community-server mysql-community-devel mysql-community-client

2.3.3 启动数据库并配置开机启动

/etc/init.d/mysqld start
chkconfig mysqld on

2.3.4 初始化数据库

mysql_secure_installation

2.3.5 创建数据库并授权

mysql -uroot -p

输入如下配置:

CREATE DATABASE IF NOT EXISTS owncloud;
GRANT ALL PRIVILEGES ON owncloud.* TO 'username'@'localhost' IDENTIFIED BY 'password';
flush privileges;

2.3.6 开启mysql的相关端口(可选)

vim /etc/sysconfig/iptables

增加如下行(复制ssh的22改3306即可)

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

重启防火墙服务

/etc/init.d/iptables restart

2.3.7 测试连接

mysql -uusername -ppassword

2.4 PHP部分配置

2.4.1 安装SCL源

yum install centos-release-SCL

2.4.2 安装PHP相关包

yum install -y php54 php54-php php54-php-gd php54-php-mbstring php54-php-mysqlnd php54-php-ldap

2.4.3 配置PHP

cp /opt/rh/php54/root/etc/php.ini /opt/rh/php54/root/etc/php.ini.default
ln -s /opt/rh/php54/root/etc/php.ini /etc/php.ini
vim /etc/php.ini

修改如下配置:

# configuration for PHP MySQL module
extension=pdo_mysql.so

[mysql]
mysql.allow_local_infile=On
mysql.allow_persistent=On
mysql.cache_size=2000
mysql.max_persistent=-1
mysql.max_links=-1
mysql.default_port=
mysql.default_socket=/var/lib/mysql/mysql.sock
mysql.default_host=
mysql.default_user=
mysql.default_password=
mysql.connect_timeout=60
mysql.trace_mode=Off

2.4.4 配置环境变量

echo 'export PHP_HOME=/opt/rh/php54/root/usr/' > /etc/profile.d/php.sh
echo 'export PATH=${PHP_HOME}/bin:$PATH' >> /etc/profile.d/php.sh
echo 'export PATH=${PHP_HOME}/sbin:$PATH' >> /etc/profile.d/php.sh
source /etc/profile
php -v

命令显示如下:

PHP 5.4.40 (cli) (built: Aug 30 2016 13:52:21)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies

2.4.5 重启apache服务

/etc/init.d/httpd restart

2.4.6 测试PHP

echo '<?php phpinfo(); ?>' > /var/www/html/phpinfo.php

2.4.7 浏览器确认

http://10.168.0.156/phpinfo.php
显示如下:

2.5 安装项目源码包

2.5.1 下载源码包

cd ~
wget https://download.owncloud.org/community/owncloud-9.1.1.zip

2.5.2 解压源码包

unzip owncloud-9.1.1.zip

2.5.3 配置源码包

cp -r owncloud /var/www/
chown -R apache:apache /var/www/owncloud
chmod -R 700 /var/www/owncloud

2.5.4 配置apache

vim /etc/httpd/conf.d/owncloud.conf

配置如下:

Alias /owncloud "/var/www/owncloud/"
 
<Directory /var/www/owncloud/>
 Options +FollowSymlinks
 AllowOverride All
 
 <IfModule mod_dav.c>
 Dav off
 </IfModule>
 
 SetEnv HOME /var/www/owncloud
 SetEnv HTTP_HOME /var/www/owncloud
 
</Directory>

2.5.5 重启Apache服务

/etc/init.d/httpd restart

2.6 初始化配置与登录

2.6.1 配置数据目录和数据库连接

http://10.168.0.156/owncloud/

2.6.2 登录使用

================================================================
官方文档:
https://owncloud.com
安装文档
https://doc.owncloud.org/
https://doc.owncloud.org/server/9.1/admin_manual/installation/index.html
https://doc.owncloud.org/server/9.1/ownCloud_Server_Administration_Manual.pdf
安装向导
https://owncloud.org/install/
项目yum源
https://download.owncloud.org/download/repositories/stable/owncloud/
ownCloud源码包
https://owncloud.org/install/#edition
https://owncloud.org/changelog/
源代码配置
https://doc.owncloud.org/server/9.1/admin_manual/installation/source_installation.html
数据库配置:
https://doc.owncloud.org/server/9.1/admin_manual/configuration_database/linux_database_configuration.html#parameters

没有评论

发表回复

Cloud storage
如何输出NextCloud函数参数到日志?

1 前言 一个问题,一篇文章,一出故事。 笔者最近需要调试NextCloud的代码,因为需要监视参数 …

Cloud storage
如何使用Token认证API登录NextCloud?

1 前言 一个问题,一篇文章,一出故事。 笔者最近因为更换域名迁移用户而引发NextCloud客户端 …

Cloud storage
如何将NextCloud用户数据迁移给另一用户?

1 前言 一个问题,一篇文章,一出故事。 笔者发现NextCloud官方提供的如下数据迁移命令不是十 …