大家推荐一款 linux 下的传文件通讯软件呗? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
jinxueliu
V2EX    问与答

大家推荐一款 linux 下的传文件通讯软件呗?

  •  
  •   jinxueliu 2016-05-17 09:43:06 +08:00 4089 次点击
    这是一个创建于 3493 天前的主题,其中的信息可能已经有所发展或是发生改变。
    第 1 条附言    2016-05-17 13:48:43 +08:00
    大家工作中,同事之间一般用什么方式来传文件( linux 系统下)?最佳实践是什么?
    像 scp 这样的命令因为需要输入对方的密码,所以不太方便
    40 条回复    2016-05-18 11:45:23 +08:00
    zrp1994
        1
    zrp1994  
       2016-05-17 09:54:50 +08:00
    scp
    zhujinliang
        2
    zhujinliang  
       2016-05-17 09:55:59 +08:00
    nginx
    congeec
        3
    congeec  
       2016-05-17 09:59:26 +08:00
    1. socat 和 nc 这种东西炸天,啥都能干
    2. python2 -mSimpleHTTPServer, python3 -mhttp.server, devd, mongoose, nginx
    3. scp, ftp, rsync
    嗯,你也能用 email + 附件
    cabbage
        4
    cabbage  
       2016-05-17 10:02:28 +08:00 via Android
    FTP , samba ,甚至 Nginx 开 http 下载也行啊
    SpicyCat
        5
    SpicyCat  
       2016-05-17 10:31:30 +08:00
    要传文件,还得是通讯软件?
    如果只是传文件的话楼上的就可以了,个人喜欢 ftp ,最近刚用了 BT Sync ,感觉也挺好。
    guokb
        6
    guokb  
       2016-05-17 10:32:08 +08:00
    看文件多少和多大啦,貌似 telegram 也可以 (如果定是通件的)。
    murusu
        7
    murusu  
       2016-05-17 10:35:48 +08:00
    DuktoR6
    jinxueliu
        8
    jinxueliu  
    OP
       2016-05-17 10:38:38 +08:00
    @zrp1994 这个有个问题,要输入密码,假如同事不愿意告诉密码呢,因为涉及到安全问题
    jinxueliu
        9
    jinxueliu  
    OP
       2016-05-17 10:39:46 +08:00
    @guokb 2GB 以下的局域网传输
    SevenJ
        10
    SevenJ  
       2016-05-17 10:42:49 +08:00
    nc -l 7777 < file
    nc xxxx 7777 > file
    Aalen
        11
    Aalen  
       2016-05-17 10:59:45 +08:00
    scp, darkhttpd
    sen506
        12
    sen506  
       2016-05-17 11:52:48 +08:00 via Android
    rz sz ?
    zrp1994
        13
    zrp1994  
       2016-05-17 11:54:51 +08:00 via iPhone
    @jinxueliu 可以用 ssh key ,这样只要提供你要文件就行了
    zrp1994
        14
    zrp1994  
       2016-05-17 11:55:38 +08:00 via iPhone
    @jinxueliu 密钥文件......
    liuchang0812
        15
    liuchang0812  
       2016-05-17 12:23:33 +08:00
    @zrp1994 公钥
    ivenvd
        16
    ivenvd  
       2016-05-17 13:05:36 +08:00
    LZ 说的是通信软件啊……正常不是应该推荐 Skype , Telegram , Bearychat 之类的么……
    jinxueliu
        17
    jinxueliu  
    OP
       2016-05-17 13:37:21 +08:00
    @zrp1994 这是个好方法,具体怎么操作
    jinxueliu
        18
    jinxueliu  
    OP
       2016-05-17 13:37:48 +08:00
    @ivenvd Telegram 局域网传文件的效率如何?
    jinxueliu
        19
    jinxueliu  
    OP
       2016-05-17 13:39:27 +08:00
    @SevenJ 开始传文件的时候,我是不是还得通过其他通讯软件通知同事,然后告诉他监听的端口号?
    des
        20
    des  
       2016-05-17 13:45:59 +08:00 via Android
    飞鸽没人推荐吗?
    jinxueliu
        21
    jinxueliu  
    OP
       2016-05-17 13:56:07 +08:00
    @SpicyCat ftp 是需要用户名密码验证的吧,如果同事之间互相传输,每次都得输入用户名和对方的密码
    zrp1994
        22
    zrp1994  
       2016-05-17 13:57:53 +08:00
    @jinxueliu
    在自己的 Linux 机器上运行:
    ```
    ssh-keygen -t rsa
    ```
    把生成的 id_rsa.pub (或者你取的其它名字的*.pub 公钥文件)拷贝给你的同事,让他另起一行地粘贴到到他的~/.ssh/authorized_keys 文件中(如果没有的话创建一个)
    然后
    ```
    scp -i /path/to/your/id_rsa [other options]
    ```
    就可以不用输密码了,/path/to/your/id_rsa 是你生成的 id_rsa.pub (或者其他名字)对应私钥文件路径。

    谷歌`scp ssh-key`也可以找到很多教程。
    jinxueliu
        23
    jinxueliu  
    OP
       2016-05-17 14:00:57 +08:00
    @zrp1994 感谢!
    skydiver
        24
    skydiver  
       2016-05-17 14:08:08 +08:00
    rsync ,没有其他
    BFDZ
        25
    BFDZ  
       2016-05-17 14:13:10 +08:00 via Android
    btsync
    lonelinsky
        26
    lonelinsky  
       2016-05-17 14:42:33 +08:00
    @zrp1994 @jinxueliu 这种+ssh pubkey 的方法等于要求对方把自己电脑账户共享给你了,明显不合适啊,建议要么开一个账户专门用于文件共享,否则的话还是用匿名的 ftp , nginx , 或者 samba 吧, 用 smaba 的话还可以跨平台呢 =。=
    SpicyCat
        27
    SpicyCat  
       2016-05-17 14:45:04 +08:00
    @jinxueliu ftp 可以设置成匿名登陆啊。不建议用 scp ,实在要用,创建一个专门的账户,用那个账户进行 scp 操作。
    xuhaoyangx
        28
    xuhaoyangx  
       2016-05-17 15:02:21 +08:00
    btsync
    zrp1994
        29
    zrp1994  
       2016-05-17 15:07:30 +08:00
    @lonelinsky
    @SpicyCat
    @jinxueliu
    如果考虑到同事和楼主的关系没有这么亲密的话, ssh-key 确实不太合适……

    楼主如果图省事的话,试试 nc 吧:
    http://blog.sina.com.cn/s/blog_502c8cc4010111wv.html
    poke707
        30
    poke707  
       2016-05-17 15:59:14 +08:00
    btsync + 1
    SpicyCat
        31
    SpicyCat  
       2016-05-17 17:09:37 +08:00
    @zrp1994 nc 传大文件有几率传不完整,所以用 nc 一定要验证 MD5
    greenskinmonster
        32
    greenskinmonster  
       2016-05-17 17:12:00 +08:00
    Syncthing 共享个目录,或者 btsync 应该也行。
    jinxueliu
        33
    jinxueliu  
    OP
       2016-05-17 17:14:47 +08:00
    @lonelinsky @SpicyCat 就是说要共享的文件统一上传到一个服务器,然后都从这台服务器下载是吗
    lonelinsky
        34
    lonelinsky  
       2016-05-17 17:23:05 +08:00
    @jinxueliu 不用, smba 可以把自己电脑的一个文件夹共享出来的,然后告诉别人地址就好了,和 win 下的共享是一样的, nginx , ftp 的话也可以自己搭,其实还有一个选择可以用坚果云的团队版,不过需要付费就是了。
    hanqi7012
        35
    hanqi7012  
       2016-05-17 19:15:10 +08:00 via Android
    ngixn ……经常下载些东西用 vps 然后转过来……然而有一天莫名其妙流量就超了……
    acess
        36
    acess  
       2016-05-17 19:35:16 +08:00
    用 NFS 或 CIFS 可以把整个目录挂载过来用。
    agog
        37
    agog  
       2016-05-17 21:20:48 +08:00
    飞鸽传书
    jinxueliu
        38
    jinxueliu  
    OP
       2016-05-17 22:47:38 +08:00
    @lonelinsky 好的,谢谢
    jinxueliu
        39
    jinxueliu  
    OP
       2016-05-17 22:49:43 +08:00
    谢谢大家的热心回答
    SpicyCat
        40
    SpicyCat  
       2016-05-18 11:45:23 +08:00
    @jinxueliu samba 共享文件夹也行,但是个人感觉 samba 在 Linux 上设置很复杂,而且有几率不成功。 FTP Server 可以搭建在本机电脑上,指定某个文件夹做共享,还能指定是只读还是可写的。如果用 Linux ,可以用 vsftp ,搭建简单,而且跨平台,任意平台只要有 ftp 客户端都能访问。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2793 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 14:41 PVG 22:41 LAX 06:41 JFK 09:41
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86