当前位置:首页>Linux>Ubuntu 24.04下实现Linux版本微信独立配置双开

Ubuntu 24.04下实现Linux版本微信独立配置双开

  • 2026-09-03 00:19:16
Ubuntu 24.04下实现Linux版本微信独立配置双开

字数 1498,阅读大约需 8 分钟

Ubuntu 24.04下实现Linux版本微信独立配置双开

结论

本机已通过为第二个微信实例隔离 HOME 和 XDG 配置目录,实现原微信与“微信(分身)”同时运行。这里不是复制一份微信程序,也不是虚拟机或完整沙箱;两个实例共用 /opt/wechat 程序本体,但分别使用自己的锁文件、配置、缓存和聊天文件。第二个账号需要在分身窗口中自行扫码登录。

一、适用环境与目标

  • • 系统:Ubuntu 24.04.1,Linux 内核 7.0.0-28-generic,x86_64,X11 会话。
  • • 微信安装方式:腾讯官方 Linux 微信 deb 包,已安装版本 4.1.1.4。
  • • 原微信程序:/opt/wechat/wechat,系统入口为 /usr/bin/wechat。
  • • 目标:保留当前微信账号不变,再提供一个桌面入口,用于同时登录第二个微信账号。
  • • 隔离方式:新建运行环境,不复制原微信安装目录、原 .xwechat 或原聊天记录。

二、初始检查

检查系统、安装入口、桌面文件和当前进程:

uname -acommand -v wechatsed -n '1,120p' /usr/share/applications/wechat.desktoppgrep -a -f 'wechat|WeChat'dpkg -l | rg -i 'wechat|wine'

当前系统情况:

/usr/bin/wechat -> /opt/wechat/wechatwechat 4.1.1.4原实例进程:/usr/bin/wechat原聊天文件目录:/home/ubuntu/文档/xwechat_files原配置根目录:/home/ubuntu/.xwechat

三、最终实现:隔离运行环境

最终方案是给分身设置独立的运行根目录。首次启动时由微信自己创建这些目录和运行文件;实现过程没有把原微信目录复制一份:

/home/ubuntu/.wechat-clone-home/├── .xwechat/       # 分身自己的微信配置、锁、日志、Radium 数据├── .config/        # 分身自己的 XDG 配置├── .cache/         # 分身自己的缓存└── .local/share/   # 分身自己的 XDG 数据/home/ubuntu/.wechat-clone-home/xwechat_files/└──                 # 分身聊天文件目录,首次登录后由微信写入

这样可以同时满足两个条件:

  1. 1. 主程序的 ~/.xwechat 锁文件不再与原实例冲突;
  2. 2. 聊天文件、缓存、登录状态和 WebView/Radium 数据不与原实例混用。

四、创建的启动脚本

脚本位置:/home/ubuntu/.local/bin/wechat-second

当前脚本内容:

#!/bin/shset -euclone_home="/home/ubuntu/.wechat-clone-home"mkdir -p "$clone_home"exec env \  HOME="$clone_home" \  XDG_CONFIG_HOME="$clone_home/.config" \  XDG_CACHE_HOME="$clone_home/.cache" \  XDG_DATA_HOME="$clone_home/.local/share" \  /opt/wechat/wechat "$@"

不要把脚本中的 HOME 理解成复制原用户目录。它只是让微信在启动时把“用户主目录”解析为 /home/ubuntu/.wechat-clone-home。微信随后在该目录下自行生成 .xwechat、xwechat_files、缓存和日志。

方案边界

这是“独立配置实例”,不是完整复制或完整隔离:

  • • 共用:/opt/wechat/wechat 程序本体、系统动态库、网络、显卡、音频和桌面会话。
  • • 分开:HOME、XDG 配置/缓存/数据、.xwechat 单实例锁、微信登录状态、微信聊天文件和 Radium/WebView 数据。
  • • 不会自动复制:原账号聊天记录、联系人数据库、原 .xwechat 配置或原微信安装文件。

脚本权限为可执行:

chmod 755 /home/ubuntu/.local/bin/wechat-second

五、创建桌面应用入口

桌面文件位置:/home/ubuntu/.local/share/applications/wechat-second.desktop

[Desktop Entry]Name=微信(分身)Name[zh_CN]=微信(分身)Comment=使用独立配置登录第二个微信账号Comment[zh_CN]=使用独立配置登录第二个微信账号Exec=/home/ubuntu/.local/bin/wechat-second %UStartupNotify=trueTerminal=falseIcon=/usr/share/icons/hicolor/256x256/apps/wechat.pngType=ApplicationCategories=Utility;

应用入口经过校验:

desktop-file-validate /home/ubuntu/.local/share/applications/wechat-second.desktop

返回 OK 后,在 GNOME 应用菜单中搜索“微信(分身)”即可启动。

六、验证结果

启动分身后,确认原实例与分身主进程同时存在:

pgrep -a -x wechatps -eo pid,ppid,etime,args | rg '/opt/wechat/(wechat|RadiumWMPF)'

验证到的关键现象:

  • • 原实例仍使用 /home/ubuntu/.xwechat 和原聊天目录;
  • • 分身主进程由独立的 HOME 启动;其子进程实际使用独立的微信文件目录:
  • • 分身的 WeChatAppEx 使用:
    --wmpf_root_dir=/home/ubuntu/.wechat-clone-home/.xwechat/radium--wechat-files-path=/home/ubuntu/.wechat-clone-home/xwechat_files
  • • X11 窗口树中同时出现原微信和分身相关窗口;
  • • 两个实例均通过独立的 Qt Selection Owner for wechat,没有复用同一主实例锁;
  • • 分身桌面窗口可以正常创建,最后的第二个账号扫码登录由用户完成。

七、日常使用

  1. 1. 正常账号点击系统中的“微信”。
  2. 2. 第二个账号点击“微信(分身)”。
  3. 3. 在分身窗口中使用第二个微信账号扫码登录。
  4. 4. 后续两个入口分别启动即可;不要把原微信的 ~/.xwechat 内容复制覆盖到分身目录。

若分身显示的是登录二维码,直接用第二个账号扫码。若分身已经残留了错误的登录状态,应只在分身窗口中退出登录,再重新扫码;不要删除原微信目录。

八、检查与故障排查

分身没有启动

pgrep -a -f 'wechat-files-path=/home/ubuntu/.wechat-clone-home/xwechat_files'find /home/ubuntu/.wechat-clone-home/.xwechat/log -maxdepth 1 -type f -printf '%TY-%Tm-%Td %TH:%TM:%TS %p\n'

确认原微信和分身没有被同一个脚本或同一个 HOME 启动。必要时从当前图形桌面会话直接点击“微信(分身)”,不要只在无图形环境的终端中测试。

分身和原微信互相退出

检查两个实例的启动命令,重点确认分身仍有:

HOME=/home/ubuntu/.wechat-clone-home--wechat-files-path=/home/ubuntu/.wechat-clone-home/xwechat_files

如果分身脚本被改成直接执行 /usr/bin/wechat,就会重新共享原来的单实例锁。

需要重新初始化分身

这是破坏性操作,只针对分身目录,不影响原账号。确认不需要分身内的聊天文件后,再移走或备份以下两个目录:

/home/ubuntu/.wechat-clone-home/home/ubuntu/.wechat-clone-home/xwechat_files

不要删除或覆盖:

/home/ubuntu/.xwechat/home/ubuntu/文档/xwechat_files

九、卸载分身入口与回滚

如果以后不再使用分身,先退出分身微信,再移除桌面入口和启动脚本:

rm /home/ubuntu/.local/share/applications/wechat-second.desktoprm /home/ubuntu/.local/bin/wechat-second

是否删除分身数据目录应单独决定;若需要保留历史聊天文件,先备份:

/home/ubuntu/.wechat-clone-home/home/ubuntu/.wechat-clone-home/xwechat_files

此回滚不会影响原微信,因为实现过程没有修改 /opt/wechat、原 .xwechat 或原聊天文件目录。

最新文章

随机文章