anki 客户端
转载请注明出处 :http://www.cnblogs.com/qq-757617012/
1.无法同步
- 是否突然停电,导致程序损坏(提示被防火墙或杀毒软件阻止) anki客户端损坏 ,请下载客户端重新安装 https://apps.ankiweb.net/
- 是否被防火墙阻挡
- 是否开启了代理 可以在IE中 工具 internet选项 链接 局域网
- 同步地址是否填写正确
- 同步的正确姿势是 :
-
- a. 检查数据库
- b.检查媒体
- c.同步--远程--下载--覆盖本地
- d. 修改本地内容 e.同步-本地--覆盖远程服务器
-
其中,c和d如果顺序搞反了,通常会出错。因为本地版本和远程版本不是连续的版本。
anki server端
1.无法同步
- 启动时production.ini是否正确
anki-start.bat
在配置过环境变量,并设置为本地组策略,用户登录脚本时
ankiserverctl.py start "F:\AnkiServer_3\production.ini"或者(在不用登陆的计划任务--开机未登录时)
"C:\Python27\python2.exe" "C:\Python27\Scripts\ankiserverctl.py" start "F:\AnkiServer_3\production.ini"
- 是否存在为关闭的 ankiserver进程
anki-stop.bat
@echo off setlocal enabledelayedexpansion set port=27701 for /f "tokens=1-5" %%a in ('netstat -ano ^| find ":%port%"') do ( if "%%e%" == "" ( set pid=%%d ) else ( set pid=%%e ) echo !pid! taskkill /f /pid !pid! ) pause
- 创建用户
F:\AnkiServer_3> .\ankiserverctl.py adduser 111111 "F:\AnkiServer_3\production.ini" 根据提示输入密码
- 删除用户
F:\AnkiServer_3> .\ankiserverctl.py deluser 111111 "F:\AnkiServer_3\production.ini"
- 查看列表用户
F:\AnkiServer_3> .\ankiserverctl.py lsuser "F:\AnkiServer_3\production.ini"
2. 无视错误:
- IOError: [Errno 2] No such file or directory: '/tmp/ankiserver.pid'
3.ankiserver启动、关闭、重启时 无黑窗
- restart.vbs
Set oShell = CreateObject ("Wscript.Shell") Dim strArgs strArgs = "cmd /c F:\AnkiServer_3\anki-stop.bat" oShell.Run strArgs, 0, false Set oShell2 = CreateObject ("Wscript.Shell") Dim strArgs2 strArgs2 = "cmd /c F:\AnkiServer_3\anki-start.bat" oShell2.Run strArgs2, 0, false
- start.vbs
Set oShell = CreateObject ("Wscript.Shell") Dim strArgs strArgs = "cmd /c F:\AnkiServer_3\anki-start.bat" oShell.Run strArgs, 0, false
- stop.vbs
Set oShell = CreateObject ("Wscript.Shell") Dim strArgs strArgs = "cmd /c F:\AnkiServer_3\anki-stop.bat" oShell.Run strArgs, 0, false
3.故障处理时,先做好备份
- 将存放ankiserver的文件夹统一备份到别处特别是你的collections文件夹,这样有利于数据的恢复
- 关于自动备份,我写了一个bat脚本 (目录不一定完全对应): 每天把anki-server的目录备份到一个特定的目录,然后由我的坚果云同步
@echo off ::设置7z的命令行程序路径 set Sz=%ProgramFiles%\7-Zip\7z.exe ::设置压缩包保存路径 set Save="E:\JianGuoYun\ankiserver_backup_daily" ::设置要打包压缩的文件夹 set Com=F:\AnkiServer_3 "%Sz%" a %Save%\AnkiServer_3__%date:~,4%-%date:~5,2%-%date:~8,2%.zip "%Com%"\ exit
- 关于登录时执行脚本
a.开始--运行--gpedit.msc
b. 用户设置--windows设置--脚本(登陆/注销)
注意:如果脚本通过手动启动,服务正常。而通过登陆时自动启动脚本不正常,应当 ①清理系统垃圾(注册表垃圾,临时文件清理) ②删掉本地组策略中的启动脚本再重新添加一次。
----------------------------------------2018年7月28日更新 增加了 任务计划程序--计算机启动时就执行(无论是否登陆) 此处不成功------------------------------------------------------------------------------------------------------
这一步显得不那么重要
虽然可以打包 .py 到 exe ,http://www.py2exe.org/index.cgi/Tutorial https://www.cnblogs.com/JachinYin/p/6836891.html
但,总是各种缺少包错误, 我想,这不是我这个python初学者能解决的。先放弃,后面有机会,有实力了再解决。
PS C:\Python27\Scripts> .\ankiserverctl.exe start "F:\AnkiServer_3\production.ini"
Traceback (most recent call last):
File "ankiserverctl.py", line 4, in <module>
__import__('pkg_resources').run_script('ankiserver==2.0.6', 'ankiserverctl.py')
ImportError: No module named pkg_resources
搞了半天,总是爆粗,原来存在两个ankiserverctl.py 文件,需要执行 py2exe的是 C:\Python27\Lib\site-packages\ankiserver-2.0.6-py2.7.egg\EGG-INFO\scripts\ankiserverctl.py
打包脚本:
from distutils.core import setup import py2exe setup(console=[{'script':'ankiserverctl.py'}],zipfile=None)然后,在本目录命令行下执行:
C:\Python27\Lib\site-packages\ankiserver-2.0.6-py2.7.egg\EGG-INFO\scripts> python setup.py py2exe在 C:\Python27\Lib\site-packages\ankiserver-2.0.6-py2.7.egg\EGG-INFO\scripts\dist 下就有 对应的exe文件了,将真格dist目录拷贝走去用
anki-start.bat文件 修改一下,由原来执行 py 改为执行 exe
"F:\AnkiServer_3\ankiserverctl.exe" start "F:\AnkiServer_3\production.ini"
即使参考了网上文章,把它设为开机服务,服务成功运行,但我要的效果没有达到,至此,可以初步判断,应该不是ankiserverctl.exe没启动,而是启动后没有正常执行。
参考: Windows系统下不登陆自动启动程序
下载Instsrv.exe和Srvany.exe: Windows Server 2003 Resource Kit Tools 安装后,在文件夹里面找这俩文件
为了保证vpn网络畅通,同样的操作也需要在蒲公英客户端来一遍
----------------------------------------结束 2018年7月28日 更新 增加了 任务计划程序--计算机启动时就执行(无论是否登陆)------------------------------------------------------------------------------------------------------
4.故障处理后,将collections 的文件解压缩进行恢复
PC端Anki 怎么连不上?
你是不是开启了代理,忘记关了,或者关闭代理时出错了,导致代理设置仍在。
执行下面的代码,一键清除IE浏览器代理:clearproxy.bat
@echo off echo 开始设置取消xproxy代理.......... echo 现在程序将关闭您的浏览器。。。。。 taskkill /f /im iexplore.exe reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 0 /f reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /d "" /f color 2 echo 已取消代理服务器上网 echo 按任意键关闭此对话框 pause>nul
网友文章: http://www.cnblogs.com/birdofparadise/p/10013128.html
# 查看所有用户 ankiserverctl.py lsuser
# 添加anki账号:根据提示输入账号密码。(username@password) ankiserverctl.py adduser username
# 删除用户 ankiserverctl.py deluser username
# 查看帮助 ankiserverctl.py --help
转载请注明出处 :http://www.cnblogs.com/qq-757617012/