导入开源文件共享服务-LinShare

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介:

1 理论知识

1.1 支持技术特点

Technology: Java JEE (Java 7),

Directories: LDAP, Active Directory,

Data bases: PostgreSQL, MySQL,

Operating systems: GNU/Linux,

Servers: Tomcat, Jetty.

Browers: Internet Explorer (9,10,11), Firefox (17 ESR and above), Chrome (latest).

1.2 部署的运行环境

1)CentOS 6

2)Java 7

2)Tomcat

3)Apache

4)MySQL

2 实践部分

2.1 yum源的安装

2.1.1 yum安装Java 7

1
yum -y  install  java-1.7.0-openjdk

2.1.2 yum安装Tomcat

1
yum -y  install  tomcat6 tomcat6-webapps tomcat6-admin-webapps tomcat6-docs-webapp tomcat6-javadoc

2.1.3 yum安装Apache

1
yum -y  install  httpd

2.1.4 yum安装MySQL

1
yum -y  install  mysql-server mysql-devel mysql

以上可以合并成一条指令

1
yum -y  install  java-1.7.0-openjdk tomcat6 tomcat6-webapps tomcat6-admin-webapps tomcat6-docs-webapp tomcat6-javadoc httpd mysql-server mysql-devel mysql

2.1.5 yum安装部署工具

1
yum -y  install  unzip  bzip2  wget vim

2.2 LinShare的下载

2.2.1 官方的下载地址
http://download.linshare.org/versions/latest
2.2.2 下载的文件名称
linshare-core-{VERSION}-without-SSO.war
linshare-ui-admin-{VERSION}.tar.bz2

2.2.3 实际下载到的文件

实际的版本和名称如下:

linshare-core-1.9.5.war

inshare-ui-admin-2.3.4.tar.bz2

2.2 配置MySQL

2.2.1 启动MySQL并设置开机启动

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

2.2.2 初始化MySQL

1
mysql_secure_installation

注:初始化过程省略

2.2.3 创建数据库

1
2
cp  linshare-core-1.9.5.war linshare.war
unzip -j linshare.war WEB-INF /classes/sql/mysql/createDatabase .sql

详细内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
-- Default script  for  database creation
 
DROP DATABASE IF EXISTS `linshare`;
DROP DATABASE IF EXISTS `linshare_data`;
 
CREATE DATABASE `linshare` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE DATABASE `linshare_data` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
 
CREATE USER  'linshare' @ 'localhost'  IDENTIFIED BY  'linshare' ;
 
GRANT ALL PRIVILEGES ON `linshare`.* TO  'linshare' @ 'localhost' ;
GRANT ALL PRIVILEGES ON `linshare_data`.* TO  'linshare' @ 'localhost' ;
 
FLUSH PRIVILEGES;

请修改第9行密码部分后再执行如下语句:

1
mysql -uroot -p < createDatabase.sql

2.2.4 导入表结构

1
2
unzip -j linshare.war WEB-INF /classes/sql/mysql/createSchema .sql
mysql -uroot -p linshare < createSchema.sql

2.2.5 导入基础的数据

1
2
unzip -j linshare.war WEB-INF /classes/sql/mysql/import-mysql .sql
mysql -uroot -p linshare <  import -mysql.sql

2.2.6 解压配置文件到指定目录

1
2
mkdir  -p  /etc/linshare
unzip -j -d  /etc/linshare/  linshare.war WEB-INF /classes/ {linshare,log4j}.*

2.2.7 配置数据库连接文件

1
2
cp  /etc/linshare/linshare .properties.sample  /etc/linshare/linshare .properties
vim  /etc/linshare/linshare .properties

DataStore部分修改如下(关闭PostgreSQL的jdbc同时开启MySQL的jdbc):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#******************* DATASTORE
#uncomment this line to encrypt the files
#linshare.datastore.class=org.linagora.linshare.core.dao.EncDbDataStore
 
#******************** DATABASE
### PostgreSQL
#linshare.db.username=linshare
#linshare.db.password=linshare
#linshare.db.driver.class=org.postgresql.Driver
#linshare.db.url=jdbc:postgresql://localhost:5432/linshare
#linshare.db.dialect=org.hibernate.dialect.PostgreSQLDialect
#linshare.db.persistence_manager=org.apache.jackrabbit.core.persistence.bundle.PostgreSQLPersistenceManager
### MySQL
linshare.db.username=linshare
linshare.db.password=linshare
linshare.db.driver.class=com.mysql.jdbc.Driver
linshare.db.url=jdbc:mysql: //localhost :3306 /linshare
linshare.db.dialect=org.hibernate.dialect.MySQL5Dialect
linshare.db.persistence_manager=org.apache.jackrabbit.core.persistence.bundle.MySqlPersistenceManager

2.3 部署linshare程序包

1
2
3
cp  linshare.war  /var/lib/tomcat6/webapps/
mkdir  -p  /var/lib/linshare
chown  -R tomcat:tomcat  /var/lib/linshare

2.4 配置ui-user

2.4.1 创建应用程序目录

1
2
mkdir  /var/www/linshare
chown  -R apache:apache  /var/www/linshare

2.4.2 创建日志目录

1
mkdir  /var/log/apache2/

2.4.3 配置虚拟服务

1
vim  /etc/httpd/conf .d /linshare-user .conf

输入如下内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<VirtualHost *:80>
 
ServerName www.cmdschool.org
#The following is in the case of you create a root document.
DocumentRoot  /var/www/linshare
# This option allows you to add a custom repository in the document root, where you can put your personal resources
RedirectMatch ^/(?!custom|linshare) http: //www .cmdschool.org /linshare/
<Location  /linshare >
     ProxyPass http: //127 .0.0.1:8080 /linshare
     ProxyPassReverse http: //127 .0.0.1:8080 /linshare
< /Location >
 
<Directory  /var/www/linshare >
        Options -Indexes
        AllowOverride None
        Order Allow,Deny
        Allow from all
< /Directory >
 
ErrorLog  /var/log/apache2/linshare-user-error .log
CustomLog  /var/log/apache2/linshare-user-access .log combined
 
< /Virtualhost >

2.4.4 启动httpd服务

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

2.4 配置ui-admin

2.4.1 配置ui-admin程序

1
2
3
tar  -xf linshare-ui-admin-2.3.4. tar .bz2
mv  linshare-ui-admin-2.3.4  /var/www/linshare-ui-admin
chown  -R apache:apache  /var/www/linshare-ui-admin

2.4.2 配置虚拟机

1
vim  /etc/httpd/conf .d /linshare-admin .conf

输入如下内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<VirtualHost *:80>
 
ServerName www.cmdschool.org
DocumentRoot  /var/www/linshare-ui-admin
<Location  /linshare >
     ProxyPass http: //127 .0.0.1:8080 /linshare/webservice/rest/admin
     ProxyPassReverse http: //127 .0.0.1:8080 /linshare/webservice/rest/admin
     ProxyPassReverseCookiePath  /linshare  /
     #This header is added to avoid the  JSON cache issue on IE.
     Header  set  Cache-Control  "max-age=0,no-cache,no-store"
< /Location >
 
<Directory  /var/www/linshare-ui-admin >
        Options -Indexes
        AllowOverride None
        Order Allow,Deny
        Allow from all
< /Directory >
 
ErrorLog  /var/log/apache2/linshare-admin-error .log
CustomLog  /var/log/apache2/linshare-admin-access .log combined
 
< /Virtualhost >

2.5 登录测试

http://www.cmdschool.org/linshare/

Login : root@localhost.localdomain

Password : adminlinshare

2.5 LinShare的配置与创建

1
mkdir  -p  /var/lib/linshare

2.9 防火墙配置

2.9.1 加入新的防火墙规则

1
vim  /etc/sysconfig/iptables

加入如下行

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

2.9.2 重启防火墙服务使规则生效

1
/etc/init .d /iptables  restart









本文转自 tanzhenchao 51CTO博客,原文链接:http://blog.51cto.com/cmdschool/1789956,如需转载请自行联系原作者
相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
打赏
0
0
0
0
235
分享
相关文章
文件同步工具 - 本地搭建免费开源的Syncthing自动文件同步服务器【远程访问】
文件同步工具 - 本地搭建免费开源的Syncthing自动文件同步服务器【远程访问】
分享一个开源的任务管理工具DooTask(支持私有部署)
分享一个开源的任务管理工具DooTask(支持私有部署)
3249 0
如何使用Synology Drive作为文件同步服务器实现云同步Obsidian笔记
如何使用Synology Drive作为文件同步服务器实现云同步Obsidian笔记
284 0
前端 dlhelper 下载辅助库(支持链接后台下载、代理下载、Blob 数据下载,针对代理下载灵活使用)
前端 dlhelper 下载辅助库(支持链接后台下载、代理下载、Blob 数据下载,针对代理下载灵活使用)
115 1
一款基于.Net开发、开源、支持多平台云存储文件管理器
一款基于.Net开发、开源、支持多平台云存储文件管理器
95 0
NetCore开发的分布式文件上传系统
一个基于.Net Core构建的简单、跨平台分布式文件上传系统,支持分块上传、多个项目同时上传、接口权限控制采用JWT机制。
248 0
NetCore开发的分布式文件上传系统
Brename - 一个便捷跨平台批重命名文件/目录的命令行小工具
brename是用Go编程语言实现的,支持跨平台Linxu和Windows用户使用。
169 0
云端共享文件系统 JuiceFS 在 2021 年选择开源
云端共享文件系统 JuiceFS 在 2021 年选择开源
171 0