Day08 - 作业

一、作业:高级FTP

高级FTP服务器开发:

  1. 用户加密认证
  2. 多用户同时登陆
  3. 每个用户有自己的家目录且只能访问自己的家目录
  4. 对用户进行磁盘配额、不同用户配额可不同
  5. 用户可以登陆server后,可切换目录
  6. 查看当前目录下文件
  7. 上传下载文件,保证文件一致性
  8. 传输过程中现实进度条
  9. 支持断点续传

二、简单思路

  1. 用户加密认证
    md5加密
  2. 多用户同时登陆
    socketserver多线程
  3. 每个用户有自己的家目录且只能访问自己的家目录
    判断要访问的目录地址是否要离开家目录
  4. 对用户进行磁盘配额、不同用户配额可不同
    单独用户单独文件单独字典,磁盘配额写入该字典中,每次传文件前判断剩余空间是否足够存放文件
  5. 用户可以登陆server后,可切换目录
    在用户家目录下切换
  6. 查看当前目录下文件
    os.listdir,用isfile, isdir来判断并改变显示颜色
  7. 上传下载文件,保证文件一致性
    课程中的md5验证
  8. 传输过程中现实进度条
    *已收取的文件大小 / 文件总大小
  9. 支持断点续传
    暂停后再启动时,判断已收取大小,告诉服务端去seek到该地址

三、流程图

Day08 - 高级FTP

四、参考站点

python之FTP程序(支持多用户在线)

五、代码

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、第八章 Samba服务器2、第八章 NFS服务器3、第十章 Linux下DNS服务器配站点,域名解析概念命令:...
    哈熝少主阅读 3,775评论 0 10
  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 12,239评论 2 33
  • 部分内容转载自搜狗百科 cmd是command的缩写.即命令提示符(CMD),是在OS / 2 , Windows...
    青冥之上阅读 2,427评论 0 24
  • 下面,就给大家介绍这些CentOS常用命令。 一:使用CentOS常用命令查看cpu more/proc/cpui...
    guiwuzhe阅读 2,553评论 1 25
  • 一个人走在寒夜的冷风中, 时常感到一丝寂寞与悲伤, 寒夜里的我总是有点彷徨, 彷徨这世界的凄凉, 寒风吹过我的脸庞...
    兔子1947阅读 215评论 0 1