我正在使用 PyFTPdLib 在 Python 中为 FTP 服务器运行一个脚本,如下所示:
from pyftpdlib.authorizers import DummyAuthorizer
from pyftpdlib.handlers import FTPHandler
from pyftpdlib.servers import FTPServer
def main():
authorizer = DummyAuthorizer()
authorizer.add_user('user', '12345', '.', perm='elradfmwM')
handler = FTPHandler
handler.authorizer = authorizer
address = ('localhost', 2121)
server = FTPServer(address, handler)
# start ftp server
server.serve_forever()
if __name__ == '__main__':
main()
每当我调用此代码时,它都会让命令行忙于运行“server.serve_forever()”,它不会继续运行 if 循环。
所以我的问题是,如何在服务器运行时添加用户而不关闭服务器?
我是否需要创建另一个脚本来调用这个脚本,然后再创建另一个脚本来添加用户?是否需要线程化以便两者都可以运行而不会锁定这个?
我试图浏览这个模块的教程,但我没有找到任何示例或看到任何解决方案。如果需要,我愿意切换到不同的模块来运行 FTP 服务器,只要我可以控制一切。
我将从数据库中添加大量用户,然后将其删除。所以我不想每次需要添加某人时都关闭服务器并重新启动它。