首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
V2EX  ›  Linux

Linux FTP 服务器可以监测上传文件完成,并自动对文件操作吗?

  •  
  •   wuqingwei · 152 天前 · 2149 次点击
    这是一个创建于 152 天前的主题,其中的信息可能已经有所发展或是发生改变。
    linux 服务器,目前是 Centos,做 FTP 服务器,目前使用的是 vsftpd,想实现如下功能,自动监测 FTP 服务,如果有客户端上传文件完成,就对文件进行某个操作(具体什么操作不重要),这样的功能用什么方式实现较好,先谢过。
    20 回复  |  直到 2019-05-21 09:36:54 +08:00
        1
    ebingtel   152 天前
    问题来了 怎么判断用户上传完了? NOW() - LAST_MODIFIED_TIME() > INTERVAL?
        2
    liwl   152 天前   ♥ 1
    inotify?
        3
    AlisaDestiny   152 天前
    你这个用现成的软件恐怕不好做,你可以看下你会的语言的 ftp 协议库,定制一个。
        4
    bbvps   152 天前
    bash 脚本,死循环,每秒检测一下。
        5
    bbvps   152 天前
    其他的方法都太难,这个最简单。
        6
    jasamboro   152 天前
    具体什么操作不重要
    判断用户上传完成-->自动删除
        7
    wuqingwei   152 天前
    @liwl 研究下。
        8
    lithiumii   152 天前
    Microsoft Flow 有个对接 FTP 的服务,可以在发现文件修改后进行操作
    但我猜他就是定时去看一看你文件改过了没有。
        10
    clino   152 天前
    让用户同时上传一个文件的元信息文件用来校验
        11
    zong400   152 天前
    同时上传一个包含 md5 值的文件,操作的脚步循环校验
        12
    lkan   152 天前 via iPhone
    python 的 ftp 库适合你 简单易用
        13
    gstqc   152 天前 via Android
    不依赖外部手段无法实现
    1.以前玩 0day 的时候,FTP 用 sfv(Simple File Verification)文件来校验文件完整性
    2.有些 FTP 客户端的实现是用临时文件,传输完成后用 FTP 的 rename 命令重命名
        15
    xnode   152 天前
    可能需要双端比对 MD5
        16
    sagaxu   152 天前 via Android
    proftpd 有这个功能
        17
    chcx   152 天前
    inotify 就可以
        18
    lieh222   152 天前
    写个端口转发 映射 ftp 服务器控制端口,监控控制信令,如果上传命令完成就可以认为是上传成功了
        19
    ps1aniuge   152 天前
    1 ftp,http,上传文件,下载文件,是不可靠的。
    2 ftp,http,上传文件,下载文件,完成通知,也是是不可靠的。
    3 经常会有上传下载完成了。但是文件只有 99%相同。
    4 所以人家才会发明 sfv,校验码等。
    5 只有带校验码,并再读一遍。才可靠。如 bt,rsync。
        20
    wuqingwei   151 天前
    inotify 确实是个好东西。

    本来想使用 @mattx 脚本的方式实现,发现没有那么简单,因为后续需要对文件的操作涉及到的东西较多。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2151 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 35ms · UTC 12:12 · PVG 20:12 · LAX 05:12 · JFK 08:12
    ♥ Do have faith in what you're doing.