ownCloud简介
ownCloud(官网)是一款开源的私有云框架,可以通过它实现个人网盘的功能,如果拥有一个性能不错的VPS,那么就可以摆脱奇慢无比的百度云等网盘啦!我花了大约一天的时间总算搭好了ownCloud。
ownCloud提供了各个平台的文件同步客户端,因此搭建好ownCloud之后即可使用客户端来同步、上传、下载文件,十分方便。
可以搭在性能较好的智能路由器上,连接硬盘,这样路由器就能作为个人的NAS存储云使用。ownCoud的文档上说明了最低配置要求需要128MB的内存(推荐512MB),这对路由器的性能提出了一定要求。
一、官方提供了推荐配置要求
- 操作系统:Ubuntu 16.04 LTS.
- Web服务器:Apache 2.4.
- 数据库:MySQL/MariaDB 并使用 InnoDB storage engine
- PHP 7
二、安装准备
- Linux主机:centos7.6.1810 云主机、路由器、服务器、
- 数据库:mariadb MySQL
- 主机带宽最少:1MB
- 硬盘:20G
三、安装部署ownCloud
1、部署MySQL5.7
[root@localhost ~]# wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm // 下载MySQL源
[root@localhost ~]# yum localinstall mysql57-community-release-el7-9.noarch.rpm // 添加源mysql源
[root@localhost ~]# yum install mysql-community-server //安装MySQL
[root@localhost ~]# systemctl start mysqld.service
[root@localhost ~]# systemctl status mysqld.service
[root@localhost ~]# grep 'temporary password' /var/log/mysqld.log //查看mysql密码
7+rMV<qry)lX //centos下MySQL首次启动会创建临时密码,并存放在mysqld.log日志中。
[root@localhost ~]# mysql -uroot -p //登录mysql
Enter password:7+rMV<qry)lX //输入.log查询到的密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '!QAZ2wsx'; //更改mysql密码,mysql要求密码至少是8位,小写,大写,数字,字母组合
2、部署Apache:
[root@localhost ~]# yum install httpd
[root@localhost ~]# systemctl start httpd.service
[root@localhost ~]# systemctl status httpd.service
[root@localhost ~]# systemctl stop httpd.service
[root@localhost ~]# systemctl restart httpd.service //在centOS中,默认的网页根目录位于/var/www/html下
3、安装ownCloud
[root@localhost ~]# wget https://download.owncloud.org/community/owncloud-9.1.4.zip //下载ownCloud部署包
[root@localhost ~]# unzip https://download.owncloud.org/community/owncloud-9.1.4.zip
[root@localhost ~]# cp -r owncloud/* /var/www/html //复制到网页根目录
[root@localhost ~]# chown -R apache:apache /var/www/html/ //为html目录授予Apache权限
[root@localhost ~]# chmod -R 775 /var/www/html/ //为html目录授予775权限
4、安装PHP及相关组件:ownCloud官方建议安装5.6+以上的PHP版本
[root@localhost ~]# yum install -y php // centos7下 默认是5.4版本的PHP
[root@localhost ~]# yum remove -y php* // 卸载5.4版本的PHP
[root@localhost ~]# rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm //安装PHP的扩展源
[root@localhost ~]# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
[root@localhost ~]# yum install php56w php56w-opcache //安装PHP5.6
[root@localhost ~]# yum install php56w-cli php56w-common php56w-fpm php56w-gd php56w-mbstring php56w-xml //安装PHP运行环境的相关组件
[root@localhost ~]# yum install php-mysql //安装数据库连接PHP的驱动
OR
[root@localhost ~]# yum install php56w-mysql
[root@localhost ~]# yum install php56w-pecl-apcu //可选安装或者不安装
//apcu是ownCloud可选安装的local cache ,用于增强性能。
[root@localhost ~]# yum list installed | grep "php" //可以查看到PHP部署的组件
5、重启Apache服务:
[root@localhost ~]# service httpd restart
四、ownCloud管理界面的配置
通过IE浏览器登录到ownCloud:http://192.168.1.60/index.php 并初始配置
配置ownCloud
管理员用户名和密码:admin !QAZ2wsx'
数据目录:/var/www/html/data
数据库用户名密码:root !QAZ2wsx
数据库名称:owncloud 自定义,在数据库中不要人为创建,系统会自动创建的
数据库如果是在操作的vps上,url可写成localhost:3306
ownCloud用户界面
五、常见问题及解决方案:
问题一:
//在部署中若是遇到问题可以在https的日志文件logs错误日志来判断问题所在
[root@localhost ~]# ls /etc/httpd/logs/
access_log error_log
//error日志下,可以看到各种详细的PHP发生的错误日志,以此来判断问题
问题二:
问题现象:
//ownCloud缺少权限读取配置文件
//ownCloud报.user.ini , .htaccess文件缺失
//上传文件时,ownCloud没有权限写入文件暂存区
//上传文件时,ownCloud没有权限缺少写入data目录的权限
解决方案:用chown配置目录权限
[root@localhost ~]# chown -R apache:apache /var/www/html/ //为html目录授予Apache权限
[root@localhost ~]# chmod -R 775 /var/www/html/ //为html目录授予775权限
问题三:
问题现象:
//打开ownCloud时php报PDO错误,缺少php56w-mysql组件
解决方案:
[root@localhost ~]#yum install -y php56w-mysql