Seafile是一个开源、专业、可靠的云存储平台;解决文件集中存储、共享和跨平台访问等问题,由北京海文互知网络有限公司开发,发布于2012年10月;除了一般网盘所提供的云存储以及共享功能外,Seafile还提供消息通信、群组讨论等辅助功能,帮助更好的围绕文件展开协同工作。
其安装及文档都可以从官网上获得:www.seafile.com/home , www.seafile.com/download (下载),manual-cn.seafile.com(文档)
按照其手册,首先我下载了4.1.2 64bit版linux服务端。
布置seafile时可以选择SQLLite或者MySQL两种不同方式,目前按照我们的环境,当然选择了MySQL模式。
第一步当然是要解压安装包, 所以我们在150服务器的/home下新建一个目录:filecloud,将压缩包copy并且解压在filecloud内。然后再filecloud内创建installed文件夹,将压缩包移到installed内。
这样设计目录的好处在于
和 seafile 相关的配置文件都可以放在 haiwen 目录下,便于集中管理.
后续升级时,你只需要解压最新的安装包到 haiwen 目录下.
这样你可以重用 haiwen 目录下已经存在的配置文件,而不用重新配置.
完成基本的文件复制及解压后,按照安装手册,接下来要配置数据库。seafile提供了两种配置数据库的办法:使用自动脚本,或者手动安装。前者要求数据库的root密码(150上本地root密码是321456),后者需要一定的数据库知识。我们还是优先尝试前一种办法吧。
首先尝试运行setup-seafile-mysql.sh脚本,哦,不行,要求安装python-imaging,
这是什么东东?百度上查到,这是python的图形库,hoho,在centos下可以用yum install python2.6-imaging,汗,安装过程似乎有点艰难,主要是网络状况堪忧,但是考虑到之后这个系统的管理可能还是需要使用python的图形界面,所以我们今天要突破一下。查了百度,这里有一个安装python imaging的攻略:http://www.pythonware.com/products/pil/index.htm下载pil1.1.7 ,sourcekit版本(适应所有操作系统),解压到/home/pil目录内,然后再其内部运行python setup.py build_ext -i来安装。安装完成试一下看看: python selftest.py,我得到的消息是57 tests passed,似乎是好消息。然后运行python setup.py install好的成功了, 看来今后还能用import Image来使用image图形类了。
再次运行setup-seafile-mysql.sh,过关,赞,但这次又说需要python-mysql库,悲剧了
。还是先试试他的办法sudo yum install MySQL-python,理所当然网络不通。这个有点吓人,MySQL可不是imaging这种小点心哦。不过linux系统向来如此,所以要继续冲下去,在https://pypi.python.org/pypi/MySQL-python/网站,下载MySQL-python 1.2.5的那个zip文件(另一个是win安装版,想来没人会搞错吧),直接解压然后copy到/home/MySQLpython目录内,运行命令:python setup.py install,安装完成,用python 命令检验一下import MySQLdb, 悲剧,这次结果失败了,报错,缺少libmysqlclient.so.18,赶紧查查,怎么解决,locate一下,libmysqlclient.so.18在gxx的mysql安装目录里,好吧乱链接一下到/usr/lib下。
折腾来折腾去终于可以运行脚本了,安装脚本step by step,设置各种参数。具体如下:
server name : File_Cloud
server ip : 192.168.1.150
ccnet server port : 10001
file data(数据文件存放路径):/data1/file_cloud_data
seafile server port : 12001
seafile fileserver port : 8082
创建数据的自动脚本参数如下:
数据库host : localhost
mysql port : 3306
rootuserpasswd : 321456
mysql root user name : root
ccnet db name : ccnet-db
seafile-db db name : seafile-db
seahub db name : seahub-db
自动脚本安装还算顺利,接下来还有一些工作要做:
例如 :因为 Seafile 在客户端和服务器之间使用持续连接,如果你的客户端数量巨大, 你应该在启动 Seafile 之前修改你的 Linux 文件最大打开数,命令是 ulimit -n 30000 , 我们链接量不大,没做这个。
启动Seafile服务和Seahub网站命令
./seafile.sh start #启动Seafile服务
./seahub.sh start
启动网站需要admin邮箱, 我输了[email protected] ,admin 密码我设定了123456
目前在内网用 192.168.1.150:8000可以访问网页版了。
首次启动非常简单,想要换一个网络端口号就会比较复杂,具体可以查看在线手册。
如果忘记了管理员密码,我还真忘记过一次,可以运行reset-admin.sh脚本来清空管理员帐号密码。