参考:https://www.xiebruce.top/881.html
自建的服务器,飞一般的感觉。并且没有2.0自建服务器的一些bug(安卓和桌面端不兼容)

服务端

1、先安装python3,参考conda

2、依赖

  1. yum -y install epel-release
  2. pip3 install webob

3、安装

  1. git clone https://github.com/tsudoko/anki-sync-server.git /usr/local/anki-sync-server
  2. cd /usr/local/anki-sync-server
  3. git submodule update --init
  4. cd anki-bundled
  5. vim requirements.txt
  6. # 删除 pyaudio
  7. pip3 install -r requirements.txt
  8. vim ankisyncctl.py
  9. #!/usr/bin/env python === > 修改为 python3

4、测试 ./ankisyncctl.py usage 能正常输出内容即可,如下

  1. usage: /usr/local/bin/ankisyncctl <command> [<args>]
  2. Commands:
  3. adduser <username> - add a new user
  4. deluser <username> - delete a user
  5. lsuser - list users
  6. passwd <username> - change password of a user

5、用户操作

  1. ./ankisyncctl.py adduser zhangsan
  2. ./ankisyncctl.py lsuser
  3. ./ankisyncctl.py passwd zhangsan
  4. ./ankisyncctl.py deluser zhangsan

6、后台启动

先测试是否可以启动: python3 -m ankisyncd
然后启动:

  1. cd /usr/local/anki-sync-server
  2. nohup python3 -m ankisyncd >> /var/log/ankisyncd.log 2>&1 &

7、测试是否成功:

  1. ~ curl 127.0.0.1:27701
  2. Anki Sync Server

客户端

mac\windows端

推荐版本:2.1.15

  1. # 路径
  2. /Users/apple/Library/Application Support/Anki2/addons21
  3. mkdir ankisyncd
  4. cat >> ankisyncd/__init__.py << \EOF
  5. import anki.sync, anki.hooks, aqt
  6. addr = "http://ip:27701/" # put your server address here
  7. anki.sync.SYNC_BASE = "%s" + addr
  8. def resetHostNum():
  9. aqt.mw.pm.profile['hostNum'] = None
  10. anki.hooks.addHook("profileLoaded", resetHostNum)
  11. EOF

安卓端

建议版本:AnkiDroid_v2.9.6_apkpure.com.apk

设置—-高级设置—-自定义同步服务器—-使用自定义同步服务器

  • 同步地址:修改成自己的ip,https修改为http。

http://ip:27701

  • 媒体文件同步地址:修改成自己的IP,https修改为http。

http://ip:27701/msync

退出后,会提示重新登录。