热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

[原创]debian10搭建seafile企业私有网盘6.3.9RJ

[原创]debian10搭建seafile企业私有网盘需求是这样的,个人疲惫于"成为大伙的文件中转站",公司不管大大小小的文件,

[原创] debian 10 搭建seafile企业私有网盘6.3.9

 

 

[原创] debian 10 搭建seafile企业私有网盘

 

           需求是这样的, 个人疲惫于 "成为大伙的文件中转站" ,公司不管大大小小的文件,都要打电话过来“转个xx文件”、“帮我找找xx文件”,一两次还好, 但是逐渐越来越多的人依赖于中间转发文件, 不胜其烦。 于是乎,想到了以下2个方案:1是共享文件夹,2是ftp服务器。 由于我们没有在域环境中, 所以“共享文件夹”的好处是简单、方便,但是其恶心的地方是权限控制手段单一,通常以某个账户登录后,除了使用cmd下的net use /user:user 命令, 很难短时间内切换不同的账户,这样不便于文件的分级别、分权限管理文件。然后考虑第二种,使用ftp的方式(filezilla server + filezilla客户端), 但是这样除了要安装filezilla客户端或者使用browser来浏览文件外,最大的问题在于ftp的路径映射操作相对麻烦,而且缺少移动端的支持。(主要是我们基层员工的IT技能水平实在堪忧, 稍微复杂一点的都不会, 也没有意愿去学习……)

 

         最后,想到了大伙还经常用百度网盘, 所以搭“企业私有云盘”的想法孕育而生, 铛铛铛~~~  经过筛选,我选择seafile,主要是nextcloud这个产品需要nginx、redis等等东西,但是服务器上的nginx已经跑了别的应用了。seafile基于python运行, 相对来讲还好处理一些, 最主要的是有1000+版本, 了解的应该都明白啥意思

        接下来, 开始安装。如果不使用LDAP的话, 网传的6.3.9-unlimit版本应该是最好用的版本了。 

 

 

一、安装python运行环境。我使用的debian 10

       直接使用一下命令完成python安装:

apt-get  install  python2.7  python-setuptools python-pil python-ldap  python-mysqldb  python-memcache  python-urllib3 libpython2.7 ffmpeg python-pip 

        mysql的部门我没有安装, 因为这台机器之前是装过mysql的.

 

二、创建数据库并赋权, 设置mysql的权限, 值得说明登录是seafile会安装3个数据库, 分别为ccnet_db、seafile_db、seahub_db三个数据库, 用户名都是一样的seafile, 为了能让seafile安装程序顺利创建数据库, 我们需要修改一下mysql的权限. [注意]: 授权的数据名字, 需要在安装的时候指定同样的名字.

      通过一下命令设置mysql的访问权限。

mysql -u root -p



grant all privileges on ccnet_db.* to \'seafile\'@\'%\' identified by \'XXXXX\' with grant option;

grant all privileges on ccnet_db.* to \'seafile\'@\'localhost\' identified by \'XXXXX\' with grant option;



grant all privileges on seafile_db.* to \'seafile\'@\'%\' identified by \'XXXXX\' with grant option;

grant all privileges on seafile_db.* to \'seafile\'@\'localhost\' identified by \'XXXXX\' with grant option;


grant all privileges on seahub_db.* to \'seafile\'@\'%\' identified by \'XXXXX\' with grant option;

grant all privileges on seahub_db.* to \'seafile\'@\'localhost\' identified by \'XXXXX\' with grant option;


flush privileges;

exit;

 

 

三、下载seafile的官方安装文件, seafile-pro-server_6.3.9_x86-64_Ubuntu.tar,并且通过sumba传送到debian的共享文件夹中。虽有通过以下命令, 解压并运行seafile的安装文件,按操作提示即可。

#//官方包下载地址: https://download.seafile.com/d/6e5297246c
cp /home/share/seafile-pro-server_6.3.14_x86-64_Ubuntu.tar /opt/seafile
tar -xzf /opt/seafile/seafile-pro-server_6.3.14_x86-64_Ubuntu.tar
chmod -R 755 /opt/seafile
cd /opt/seafile
./setup-seafile-mysql.sh

 

      接下来就会进入启动安装的过程, 一路按照提示来操作即可,  并且seahub使用8000端口, seafile使用8082端口, 平常情况下使用seahub的8000端口就能完成各种文件的使用工作, 第一次启动会要求输入管理员账户和密码。

  

 四、数据库备份完毕后,还需要做一个可选的操作, 即:将seafile的启动项seafile.sh和seahub.sh添加到/etc/init.d/中, 便于统一管理。

         将seafile安装目录下的seafile.sh和seahub.sh文件复制到/etc/init.d目录中,并将原seafile目录中的seafile.sh和seahub.sh改名为seafile.sh.bak和seahub.sh.bak。

        之后分别打开/etc/init.d/seafile.sh 和 /etc/init.d/seahub.sh两个文件, 分别将SCRIPT的内容改为脚本的真实目录, 例如:

       

#注释掉原先的SCRIPT内容
# SCRIPT=$(readlink -f "$0")

#修改为
SCRIPT="/opt/seafile/seafile-server/seahub.sh"

#另外一个文件也类似的改为
SCRIPT="/opt/seafile/seafile-server/seafile.sh"

 

   这样, 就可以在机器重启过后, 通过/etc/init.d/seafile.sh start       和 /etc/init.d/seahub.sh 来启动私有网盘了.

   seafile-pro-server6.3.9的版本一启动, 直接报502, "连接被拒绝".....无法访问, 搜了半天未果, 最后修改了gunicorn.conf才可以访问, 使用如下命令修改:

         vi /opt/seafile/conf/gunicorn.conf

   将bind="127.0.0.1:8000" 这一行改成bind="0.0.0.0:8000", 可能是因为输入数据库地址的时候, 输入了127.0.0.1, 结果造成该文件地址也变成127.0.0.1, 修改过来即可访问.

  

五、爆破一下方便使用, 参考九牛老哥的办法:

  先停掉seafile, 进入程序安装目录

      /etc/init.d/seafile.sh stop

      /etc/init.d/seahub.sh stop

      cd /opt/seafile/seafile-server-latest

  在控制台输入如下2条指令(网传6.3.9已经是unlimit的版本了, 不需要执行如下破解命令了):

      

printf \'\xFF\xFF\xFF\' | dd of=seafile/bin/ccnet-server bs=1 seek=150521 count=3 cOnv=notrunc
sed -i \'54s/3/0xFFFFFF/\' seahub/seahub/utils/licenseparse.py

  大工搞成, 指令输入完毕后, 即使没有添加许可证,也可以不受限制的创建用户.

  

  补充: 至于6.3.9没有头像的问题, 需要在安装目录下, /opt/seafile/seafile-pro-latest-server/seadhub-data目录下,新建avatar目录, 将头像文件default.png拷贝到该目录下即可. 同时, 也要在avatar目录下新建groups目录, 拷贝default.png到该目录即可, 并且要注意赋予权限问题.

 

     启动seafile即可直接访问即可。

 

 

 补充, 是不是觉得以邮箱当账号非常不方便? 使用如下命令修改form表单的代码:

    vi /opt/seafile/seafile-pro-server-6.3.9/seahub/seahub/forms.py

 将AddUserForm里面的email = forms.emailField() 修改为 email = forms.CharField(max_length=20) 即可.

 放弃以上方法吧, 因为在用户管理界面需要通过@字符来分隔url, 没有@的话无法分隔, 造成用户界面无法使用

 

 

==========================老规矩, 下面是网上找的一些图片, 我就不截图了=====================

 

 

 

 

 

 

 

 

        


推荐阅读
  • 基于 Bottle 框架构建的幽默应用 —— Python 实践 ... [详细]
  • Python 程序转换为 EXE 文件:详细解析 .py 脚本打包成独立可执行文件的方法与技巧
    在开发了几个简单的爬虫 Python 程序后,我决定将其封装成独立的可执行文件以便于分发和使用。为了实现这一目标,首先需要解决的是如何将 Python 脚本转换为 EXE 文件。在这个过程中,我选择了 Qt 作为 GUI 框架,因为之前对此并不熟悉,希望通过这个项目进一步学习和掌握 Qt 的基本用法。本文将详细介绍从 .py 脚本到 EXE 文件的整个过程,包括所需工具、具体步骤以及常见问题的解决方案。 ... [详细]
  • 在Windows环境下离线安装PyTorch GPU版时,首先需确认系统配置,例如本文作者使用的是Win8、CUDA 8.0和Python 3.6.5。用户应根据自身Python和CUDA版本,在PyTorch官网查找并下载相应的.whl文件。此外,建议检查系统环境变量设置,确保CUDA路径正确配置,以避免安装过程中可能出现的兼容性问题。 ... [详细]
  • PyTorch 使用问题:解决导入 torch 后 torch.cuda.is_available() 返回 False 的方法
    在配置 PyTorch 时,遇到 `torch.cuda.is_available()` 返回 `False` 的问题。本文总结了多种解决方案,并分享了个人在 PyCharm、Python 和 Anaconda3 环境下成功配置 CUDA 的经验,以帮助读者避免常见错误并顺利使用 GPU 加速。 ... [详细]
  • 服务器部署中的安全策略实践与优化
    服务器部署中的安全策略实践与优化 ... [详细]
  • 如何在您的计算机上配置Python和PyCharm开发环境
    本文详细介绍了在Windows 10系统上配置Python和PyCharm开发环境的步骤。内容包括Python的安装与卸载、PyCharm的安装与卸载,以及如何在Windows 10中通过双击安装文件“python-3.7.2-amd64.exe”来完成Python的安装。此外,还提供了关于环境变量配置和基本设置的实用建议,帮助用户快速搭建高效的开发环境。 ... [详细]
  • 利用树莓派畅享落网电台音乐体验
    最近重新拾起了闲置已久的树莓派,这台小巧的开发板已经沉寂了半年多。上个月闲暇时间较多,我决定将其重新启用。恰逢落网电台进行了改版,回忆起之前在树莓派论坛上看到有人用它来播放豆瓣音乐,便萌生了同样的想法。通过一番调试,终于实现了在树莓派上流畅播放落网电台音乐的功能,带来了全新的音乐享受体验。 ... [详细]
  • CentOS 7环境下Jenkins的安装与前后端应用部署详解
    CentOS 7环境下Jenkins的安装与前后端应用部署详解 ... [详细]
  • 本文深入探讨了使用Puppet进行软件包分发与管理的方法。首先介绍了fpm这一跨平台的软件包制作工具,其简便的操作流程使得软件包的创建变得轻松快捷。fpm的项目地址为:https://github.com/jordansissel/fpm。通过结合Puppet和fpm,可以实现高效、可靠的软件包管理和部署。 ... [详细]
  • 掌握PHP编程必备知识与技巧——全面教程在当今的PHP开发中,了解并运用最新的技术和最佳实践至关重要。本教程将详细介绍PHP编程的核心知识与实用技巧。首先,确保你正在使用PHP 5.3或更高版本,最好是最新版本,以充分利用其性能优化和新特性。此外,我们还将探讨代码结构、安全性和性能优化等方面的内容,帮助你成为一名更高效的PHP开发者。 ... [详细]
  • 如何在Python中高效运用requests模块:详细使用指南与技巧分享
    在Python中,`requests`模块是处理URL请求的强大工具,作为一个第三方库,需要单独安装。本文将详细介绍如何高效地使用`requests`模块,涵盖从基础功能到高级技巧的各个方面,帮助开发者更好地掌握其应用方法,提高开发效率和代码质量。 ... [详细]
  • 在 Windows 10 系统下配置 Python 3 和 OpenCV 3 的环境时,建议使用 Anaconda 分发版以简化安装过程。Anaconda 可以从其官方网站(https://www.anaconda.com/download)下载。此外,本文还推荐了几本关于 Python 和 OpenCV 的专业书籍,帮助读者深入理解和应用相关技术。 ... [详细]
  • 本文详细介绍了在CentOS 6.5 64位系统上使用阿里云ECS服务器搭建LAMP环境的具体步骤。首先,通过PuTTY工具实现远程连接至服务器。接着,检查当前系统的磁盘空间使用情况,确保有足够的空间进行后续操作,可使用 `df` 命令进行查看。此外,文章还涵盖了安装和配置Apache、MySQL和PHP的相关步骤,以及常见问题的解决方法,帮助用户顺利完成LAMP环境的搭建。 ... [详细]
  • 体积小巧的vsftpd与pureftpd Docker镜像在Unraid系统中的详细配置指南:支持TLS加密及IPv6协议
    本文详细介绍了如何在Unraid系统中配置体积小巧的vsftpd和Pure-FTPd Docker镜像,以支持TLS加密和IPv6协议。通过这些配置,用户可以实现安全、高效的文件传输服务,适用于各种网络环境。配置过程包括镜像的选择、环境变量的设置以及必要的安全措施,确保了系统的稳定性和数据的安全性。 ... [详细]
  • 基于Linux系统的Kickstart自动化服务器部署方案
    本文针对企业需求,提出了一种基于Linux系统的Kickstart自动化服务器部署方案。该方案旨在通过无盘批量安装操作系统,提高企业IT基础设施的部署效率。Kickstart是一种利用Anaconda工具实现服务器自动化安装的技术,能够显著简化和加速操作系统的安装过程。通过详细的实施规划,本文介绍了Kickstart的工作原理及其在实际部署中的应用,为企业提供了高效的自动化部署解决方案。 ... [详细]
author-avatar
谜乱凡_134
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有