NAS安装seafile服务,数据恢复问题。

各位好:
先说一下我的使用环境:我是QNAP的TS-453Bmini,使用VirtualizationStation套件,先在datavol1安装ubuntu18.04,后在datavol2创建seafile_1.img文件,安装seafile-pro-server_7.0.11_x86-64_Ubuntu到seafile_1.img中。正常使用一段时间后,datavol1分区空间不够,丢失虚机文件且无法找回。分区2中的seafile_1.img文件尚在,可是,安装时的数据库用户名密码记不清了。
现在需要请教,我还有可能取回之前的数据吗?因为有很多家庭小盆友的照片,事情就变得很急切,非常诚心的请求指导。谢谢。

理论上可以,但难度很大,本身seafile是加密分开存储的,然后img又是加密的,所以。。。

如果我想尝试一下,你建议如何着手呢?

第一步:将seafile_1.img文件挂载到另外的Linux服务器上。 参考文件:https://blog.csdn.net/wjgwrr/article/details/51742439

第二部:seafile可以脱离数据库恢复文件。命令是fsck,参考文件:https://cloud.seafile.com/published/seafile-manual-cn/maintain/seafile_fsck.md中的“ 将资料库导出到文件系统”
主要命令格式:“./seaf-fsck.sh --export top_export_path [library-id1] [library-id2] …”

top_export_path 是你计划存放导出文件的路径。
library_id1 为资料库ID,这个ID在fsck里面看到也是目录形式。

最后,祝你好运。

1 个赞

谢谢大佬,我试试。非常感谢。

第一,如果用户密码忘了,没事执行到seafile主目录下执行找到reset-admin 执行下./reset-admin就好了,如果数据库,利用mysql的安全模式 ,执行命令,
systemctl stop mariadb

mysqld_safe –skip-grant-tables &

mysql

mysql> use mysql;

mysql> UPDATE user SET password=password(“123456”) WHERE user=’root’;

mysql> flush privileges;

mysql> exit;
systemctl start mariadb
密码就修改成123456
你还需要修改conf下的数据库账号密码。

抱歉,恕我鲁莽,其实你的密码可以在conf文件下,找到ccnet.conf 和gunicorn.conf.py,这里面能看到