V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
dangyuluo
V2EX  ?  macOS

是否存在两台 MacOS 之间无缝切换的办法?

  •  
  •   dangyuluo · 2021-01-22 22:45:09 +08:00 · 8000 次点击
    这是一个创建于 1204 天前的主题,其中的信息可能已经有所发展或是发生改变。

    腾讯云最新优惠活动来了:云产品限时1折,云服务器低至88元/年 ,点击这里立即抢购:9i0i.cn/qcloud,更有2860元代金券免费领取,付款直接抵现金用,点击这里立即领取:9i0i.cn/qcloudquan

    (福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

    可能是奢望,不过万一实现了呢? 假设我有一台 Mac mini 和一台 Macbook Pro,大多数时候我会在 Mac Mini 上开发。但是偶尔坐累了(站累了)我想拿起 MacBook Pro 躺到 bean bag (豆子椅?)上继续工作。这种情况下,有没有可能在不使用远程桌面的情况下无缝切换,使两台 Mac 体验完全一致?

    进一步讲,如果一台 MacOS 在公司,另一台在家,允许 15 分钟通勤的情况下,有没有可能实现回家后还能做到完全一致的开发体验,包括工作不中断。

    61 条回复  ?  2021-01-24 16:24:09 +08:00
    gzlock
        1
    gzlock  
       2021-01-22 22:46:43 +08:00
    用 teamviewer 之类的连到另外一台 Mac 咯
    minamike
        2
    minamike  
       2021-01-22 22:49:38 +08:00
    怎样算无缝
    两台机器每时每刻的状态都一样?
    miniers
        3
    miniers  
       2021-01-22 22:52:14 +08:00 via iPhone
    把系统装到 nvme 移动硬盘,完美?
    heyjei
        4
    heyjei  
       2021-01-22 23:13:59 +08:00
    做开发的其实还好,要同步的只是代码,用 idea 系列的开发工具,基本可以做到自动保存编辑。

    所以我写了一个脚本叫 commit_work.py
    heyjei
        5
    heyjei  
       2021-01-22 23:17:39 +08:00
    做开发的其实还好,要同步的只是代码,用 idea 系列的开发工具,基本可以做到自动保存编辑。

    所以我写了一个脚本叫 commit_work. py 能自动提交当前的工作内容,(省去 git commit git push 这些繁琐的步骤)
    每次离开电脑之前 commit_work. py 。到另外一个电脑的时候 git pull 一下,离开之前同样 commit_work. py 。

    不过很多时候,离开的时候都忘记了 commit work 。如果能够做到息屏或者屏保的时候,自动运行 commit_work. py 就更好了。
    heyjei
        6
    heyjei  
       2021-01-22 23:18:42 +08:00
    @miniers 雷电 3 的硬盘盒加 m2 的硬盘要快 2000 了啊,这成本有点高
    dingdangnao
        7
    dingdangnao  
       2021-01-22 23:20:32 +08:00
    把所有代码 文件 都放到 Documents 里 然后打开 iCloud 同步?
    sidkang
        8
    sidkang  
       2021-01-22 23:22:34 +08:00
    通过同步工具 sync 所有 dotfile 和项目文件即可~
    chenlee9876
        9
    chenlee9876  
       2021-01-22 23:23:15 +08:00 via iPhone
    @dingdangnao iCloud 不是很稳,我遇到过好几次间歇性抽风,然后文件给复制了三份,从 1kb 到原大小
    qlqsh
        10
    qlqsh  
       2021-01-22 23:27:25 +08:00
    不能。

    主要还是通信问题很大。带宽不够。共享屏幕也好、teamviewer 也好,都没有本机那么舒爽。

    感觉要想无缝切换,需要系统级别的支持。

    感觉 chrome 本有点这个意思。本机很弱,服务器强,把高负载的扔到服务器上去,本机轻办公。然后加上高速网络,应该速度不错。
    justNoBody
        11
    justNoBody  
       2021-01-22 23:48:10 +08:00
    走云盘同步开发代码不实际,是会出现问题的。还是建议基于 git 的,换之前 push 一下,换到其他电脑以后 pull 一下,我觉得也没有多麻烦,就是注意自己的分支别对其他小伙伴可见即可。还有就是,要不考虑一下把 mac mini 出掉,直接用 mbp 算了。
    Badlion
        12
    Badlion  
       2021-01-22 23:59:37 +08:00
    再买一台 PC 机提供远程桌面和 SSH 服务,把工作环境部署在 PC 中的黑苹果 /Windows/Linux 系统上,
    mac 上只需安装 anydesk,jump desktop, items2, vscode 这些工具就行。
    我就是这么干的,公司和家里各一台 mac 。
    Rorysky
        13
    Rorysky  
       2021-01-23 01:09:15 +08:00
    当然可以,把开发工作全部放到 远程服务器上
    tomtom9
        14
    tomtom9  
       2021-01-23 03:07:09 +08:00 via iPhone
    楼主提的这个需求好像超融合与痩主机的概念啊。胖主机统一计算,痩主机负责显示
    littlewing
        15
    littlewing  
       2021-01-23 03:25:37 +08:00
    代码放到服务器上,本地 IDE remote 开发,比如 vscode remote ssh 或者 jetbrain 家的 IDE 也支持 remote 的
    hello2060
        16
    hello2060  
       2021-01-23 05:11:24 +08:00 via iPhone
    楼主,我的情况和你一样,在 iMac 和 mbp 之间切换。

    用 syncthing 同步代码文件夹就可以了,两边代码一样,git 历史,branch,改动都一样
    iasuna
        17
    iasuna  
       2021-01-23 05:40:03 +08:00
    人在海外

    实验室和家里都是 Mac

    软件装都装一遍,文件用 Dropbox/Google Drive 同步。完美无缝切换。浏览器记录直接用 Chrome 同步。

    国内可以替换类似的云服务。
    Livid
        18
    Livid  
    MOD
       2021-01-23 06:04:23 +08:00
    TabGre
        19
    TabGre  
       2021-01-23 07:36:35 +08:00 via iPhone
    其实我现在就是用的 dropbox 同步代码和用户设置 dotfile 的,基本满足了
    goldiorl
        20
    goldiorl  
       2021-01-23 07:49:37 +08:00
    早点适应远程开发就可以了。

    我的笔记本从来都是当 chrome book 用,所有 IDE 都是在台式机上开着的,优势就是每次点开来界面都一样,上次写到哪儿了一目了然

    ![Imgur]( https://imgur.com/p2Aa3fM)
    goldiorl
        21
    goldiorl  
       2021-01-23 07:51:42 +08:00
    贴图失败?
    [img]( )
    z7356995
        22
    z7356995  
       2021-01-23 08:07:40 +08:00 via Android
    其时在家里很好解决,代码放在 nas 上,两台电脑就开 ide
    hcsu
        23
    hcsu  
       2021-01-23 08:20:19 +08:00 via iPhone
    我也有同样的需求,dropbox 遇上 node_modules 就 gg 了,感觉不太靠谱。最后还是选择随身带着 mbp…
    JasperYanky
        24
    JasperYanky  
       2021-01-23 09:04:23 +08:00
    我目前使用 iCloud 东西都放 iCloud 里,代码基本能实时同步,粘贴板使用 Paste 同步
    iCloud 在迁移电脑的时候非常痛苦,但是后面的增量非常爽
    PS 如果遇到 node_modules 这种可以改成 node_modules.nosync 然后做一个 node_modules 的替身,就不同步了
    hello2060
        25
    hello2060  
       2021-01-23 09:27:42 +08:00 via iPhone
    @hcsu syncthing 可以选择哪些目录不同步,或者根据规则过滤
    lazydog
        26
    lazydog  
       2021-01-23 09:28:18 +08:00 via Android
    croc?
    hcsu
        27
    hcsu  
       2021-01-23 09:33:05 +08:00 via iPhone
    @hello2060 #25 谢谢,我去看看。
    hey2go
        28
    hey2go  
       2021-01-23 10:07:46 +08:00
    把 macmini 出给我,然后就都解决了
    jfdnet
        29
    jfdnet  
       2021-01-23 10:09:43 +08:00
    如果只是同步文件 那方案还是很多很多的
    hrong
        30
    hrong  
       2021-01-23 10:33:24 +08:00 via iPhone
    @Livid 大佬
    Themyth
        31
    Themyth  
       2021-01-23 10:38:53 +08:00
    @gzlock 人家楼主都已经说了 有没有在不使用远程桌面的情况下。
    ys0290
        32
    ys0290  
       2021-01-23 10:39:42 +08:00 via iPhone
    所有终端都是瘦客户端,远程到桌面就好了
    victor
        33
    victor  
       2021-01-23 10:49:48 +08:00
    软件配置用 dropbox + mackup 同步
    源代码目录用 iCloud 同步
    hcsu
        34
    hcsu  
       2021-01-23 10:58:23 +08:00 via iPhone
    有没有可能做到连打开的窗口、浏览器打开的页面、编辑中还未保存的文件也能同步的?(除了远程桌面)
    q197
        35
    q197  
       2021-01-23 11:05:45 +08:00
    @goldiorl 如果只是文件、ssh 那种远程还行,图形界面远程还是有明显卡顿感吧,尤其是动画肯定是不行了
    Badlion
        36
    Badlion  
       2021-01-23 11:15:35 +08:00
    目前除了远程桌面,没找到更好的办法。因为远程桌面可以保存桌面的状态,服务永不停歇。
    远程桌面在有线网络下体验还是很不错的,我经常跨城连接使用,非高峰期远程连接和本地连接区别不大。

    不用远程桌面的话,感觉把这些工具用好其实也就能接近无缝体验了: SSH, vscode remote, git, icloud, bash.
    keepeye
        37
    keepeye  
       2021-01-23 11:36:14 +08:00
    连 cpu 和内存状态时刻保持一样吗,影分身都做不到吧
    wobuhuicode
        38
    wobuhuicode  
       2021-01-23 11:44:45 +08:00
    Macbook Pro 能解决你所有问题。
    第一种情况你只是需要一台升降桌子就好了。
    第二种情况把 Macbook Pro 戴上假。
    wobuhuicode
        39
    wobuhuicode  
       2021-01-23 11:45:00 +08:00
    @wobuhuicode 带回家
    MaxLi77
        40
    MaxLi77  
       2021-01-23 12:27:55 +08:00
    最无损的方法是 macOS 装到移动硬盘里,换电脑换硬盘就行了
    unlighted
        41
    unlighted  
       2021-01-23 13:28:17 +08:00 via Android
    ssh+tmux
    ffxrqyzby
        42
    ffxrqyzby  
       2021-01-23 13:57:47 +08:00
    我的办法是群晖 drive, 共享盘里共享关键文件, 再加上那个 mackup 配置同步, 能解决温饱吧
    zzh7982
        43
    zzh7982  
       2021-01-23 14:01:47 +08:00
    我觉得你需要的是云电脑
    dangyuluo
        44
    dangyuluo  
    OP
       2021-01-23 14:04:53 +08:00
    @wobuhuicode 家里和公司都有宜家 Bekant,就是上下班不想携带任何东西,包括 Macbook Pro 。拿上车钥匙和手机就走人
    itgoyo
        45
    itgoyo  
       2021-01-23 14:27:32 +08:00
    其实所谓的开发环境直白点说就是 dotfiles 之类的配置,只要配置一样在哪里工作的效果不一样,如果知道我表达的意思的话,移动的系统比较麻烦,用 mackup [开源] +dropbox 吧,备份,恢复,这效率太快了
    好处是即便你重装系统,还有买新设备,这货都能很快把你的开发环境给弄回来,支持的 App 列表可太多了
    Sivan2017
        46
    Sivan2017  
       2021-01-23 15:10:16 +08:00
    @MaxLi77 可以做到从移动硬盘里直接启动系统吗?会不会突然间格盘?
    m4d3bug
        47
    m4d3bug  
       2021-01-23 15:10:57 +08:00 via Android
    synergy 跨屏穿越,m1 的 arm 架构当我没说
    MonkeyBro
        48
    MonkeyBro  
       2021-01-23 16:48:23 +08:00
    买个雷电 3 盒子和 nvme 固态,系统装进去即可,我元旦 320 买了个盒子,420 弄了个铠侠 RD20 500G,读写均 2000+M/S,写速比 MacBook Pro 原装硬盘还略快,现在里面装个 win10 pd 虚拟机,多个 Mac 随用随插
    winglight2016
        49
    winglight2016  
       2021-01-23 20:11:27 +08:00
    服务端 jupyter notebook/lab,可以保证界面和代码完全同步,支持的语言也不少,如果服务端能够快速自动部署,支持的开发环境就更多了。
    frantic
        50
    frantic  
       2021-01-23 20:16:12 +08:00
    千万别用 iCloud 同步,遇到 idea 自动生成的一些代码 同步起来超级耗时,也很占用网络
    hello2060
        51
    hello2060  
       2021-01-23 20:18:40 +08:00 via iPhone
    网盘同步的问题是,不能指定某些目录不同步。onedrive 理论上似乎可以,但我一直没搞成功。
    jiyuanz
        52
    jiyuanz  
       2021-01-23 20:44:31 +08:00
    说实话所有的方案都是有一定限制性的,甚至违背你方便的初衷。
    第一个需求我觉得 emmm,累了你应该好好休息(闭目养神听听歌啥的或者切换到其他类型的工作),而不是继续低效工作。
    第二点嘛说实话就带笔记本吧,这可能真的是最方便的方法了。
    oovveeaarr
        53
    oovveeaarr  
       2021-01-23 21:05:39 +08:00
    mstsc 或者虚拟机,二选一~
    Sin
        54
    Sin  
       2021-01-23 21:32:48 +08:00
    没人提 VSCode Online / GitHub Codespaces?
    现在自己台式机上搭了个 code-server 在用
    MaxLi77
        55
    MaxLi77  
       2021-01-23 21:38:33 +08:00
    @Sivan2017 没问题的,可以把 macOS 安装到移动硬盘里,换 mac 的时候从硬盘启动就行了
    miniers
        56
    miniers  
       2021-01-23 21:53:56 +08:00 via iPhone
    @heyjei #6 1t 的 sn550 加 3.2 的硬盘盒就够了呀,日常写 bug 基本感受不到和内置硬盘的区别?成本 900 左右足够
    nomemo
        57
    nomemo  
       2021-01-23 22:12:21 +08:00
    你应该直接不用 mac mini,

    外接上大显示器和键盘,不就没这事了
    SergeGao
        58
    SergeGao  
       2021-01-23 22:58:24 +08:00
    感觉鸿蒙的分布式 OS 可以满足你的这个需求?鸿蒙系统的分布式 OS 架构有什么价值意义? - Eidosper 的回答 - 知乎
    https://www.zhihu.com/question/339737053/answer/795188699
    kingcos
        59
    kingcos  
       2021-01-23 23:02:24 +08:00 via iPhone
    Screen Sharing...
    sxd96
        60
    sxd96  
       2021-01-24 06:40:27 +08:00
    Tmux
    vem
        61
    vem  
       2021-01-24 16:24:09 +08:00
    我目前的方法是
    1 项目文件放坚果云同步, 下班到家肯定同步完了
    2 代码文件 Git 同步
    3 键鼠用同一款
    4 软件环境保持一致
    基本上挺同步的
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5992 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 06:21 · PVG 14:21 · LAX 23:21 · JFK 02:21
    Developed with CodeLauncher
    ? Do have faith in what you're doing.


    http://www.vxiaotou.com