最近公司给了一个寻找合适的企业云盘的任务给我。我想自己搭建一个试试。选用了以下组合:CentOS7(lamp) + owncloud8.1.0
附录:
一、CentOS 7.0默认使用的是firewall作为防火墙。
firewall:
systemctl start firewalld.service#启动firewall
systemctl stop firewalld.service#停止firewall
systemctl disable firewalld.service#禁止firewall开机启动
二、搭建过程中,你可能会遇到一些情况,例如,yum 一直在update。你试图使用yum的时候,系统提示你yum被占用着,进程id是多少。
linux 如何停止一个yum?
强制关进程?
ps aux | grep yum
得到YUM的PID
kill -9 PID
三、查看linux的内核版本,系统信息,常用的有三种办法:
uname -a; more /etc/issue; cat /proc/version;
四、查看本机名 #hostname
修改主机名: hostname 主机名
修改linux主机名的地方(参考):
/etc/sysconfig/network
/etc/hosts --------主机、ip对照表
卸载旧版package
- 例如,查询已安装的httpd(appache)版本(如果要卸载mysql,就把httpd改成mysql)。
rpm -qa|grep httpd
2. 如要卸载,输入一下命令。
# rpm -e httpd-2.2.15-30.el6.centos.x86_64
如果卸载出现问题,可以尝试加上--nodeps,强制卸载。
# rpm -e httpd-2.2.15-30.el6.centos.x86_64 --nodeps
如果想看安装的运行级别。
# chkconfig --list httpd
如果想看有没有启动。
# service httpd status
*****etc/httpd是apache的安装目录,
第一步、搭建LAMP
1、owncloud主要是用php开发,所以我们先在linux上先搭建LAMP了,也就是linux+apache+mysql+php。(在Centos7上,mysql变成了Mariadb)
在shell下用下面语句即可一条语句安装全部:
- yum install httpd php php-mysqlmariadb-server mariadb sqlite php-dom php-mbstring php-gd php-pdo wget vim
2、然后设置SELinux允许owncloud写数据,SELinux 是 Linux中提供的强制访问控制(MAC)系统,若你已关闭了就不需要输入这条了。查看自己的linux有没有开启的方法是,shell输入 /usr/sbin/sestatus -v ,如果SELinux status参数为enabled即为开启状态。
在selinux放行httpd的命令:setsebool -P httpd_unified 1
3、设置防火墙设置
- firewall-cmd --state //查看防火墙是已经开启
- firewall-cmd --permanent --zone=public--add-service=http // 配置防火墙在public区域永久开放http服务
- firewall-cmd --permanent --zone=public--add-service=https 配置防火墙在public区域永久开放https服务
- firewall-cmd --reload //防火墙策略配置后重新载入
4、启动服务
- 使用下面的命令启动Apache:
systemctl start httpd.service
- 通过此命令启动MariaDB:
systemctl start mariadb.service
- 自动启动的服务在系统启动:
systemctl enable httpd.service
systemctl enable mariadb.service
5、安装owncloud
我们需要从官方网站下载owncloud。运行以下命令(也可以下载其他版本):
- wgethttps://download.owncloud.org/community/owncloud-8.1.0.tar.bz2
解压文件:
tar -jxvf owncloud-7.0.0.tar.bz2 -C/var/www/html/
- 为Web服务器上文件目录设置读写权限:
chown -R apache.apache/var/www/html/owncloud/
6、数据库配置
配置MariaDB实例:
mysql_secure_installation;
在设置过程这都输入Y并回车。
创建 owncloud 数据库和用户。
登录到MySQL服务器,使用以下命令:
mysql -u root -p
接下来,我们需要创建owncloud用户和权限:
- MariaDB> create database owncloud;
- MariaDB> CREATE USER ‘owncloud‘@‘localhost‘IDENTIFIED BY ‘owncloud‘;
- MariaDB> grant all privileges onowncloud.* to ‘owncloud‘@localhost identified by ‘ownclound‘;
- MariaDB> flush privileges;
- MariaDB> quit;
Apache服务器配置
编辑 owncloud 外部配置文件:
vim /etc/httpd/conf.d/owncloud.conf
在配置文件中添加以下行:
Alias /owncloud /var/www/html/owncloud
Options Indexes FollowSymLinks
<Directory /var/www/html/owncloud>
AllowOverride All
</Directory>
<Proxy *>
Order allow,deny
allow from all
</Proxy>
################<Directory> 和 <Proxy *> 这些内容不能少,不然httpd下次启动时会报错。
启动Apache和MariaDB服务:
systemctl start httpd.service
systemctl start mariadb.service
owncloud配置
打开浏览器即可访问 http://你的ip地址/owncloud(本机和局域网设备访问)或者localhost/owncloud(本机访问)它将显示初始owncloud设置页。
当owncloud的初始界面出现有SQLite和MariaDB两个数据库选择时,说明你针对owncloud的设置是成功的。SQLite只针对小小的数据量和用户的数据库,MariaDB和mysql才针对大型数据库。
owncloud8.1.0已能与LDAP服务器联动,可以作为企业内部的小私有网盘使用了。
如果发现有.htaccess设置不正确的提示,可以这样:
打开httpd.conf(在那里? APACHE目录的CONF目录里面),用vim打开后,查找
Options FollowSymLinks
AllowOverride None
改为
Options FollowSymLinks
AllowOverride All
然后去掉下面的注释
LoadModule rewrite_modulemodules/mod_rewrite.so
.htaccess可以更改上传文件大小,默认的是2M