ubuntu系统安装微信

  • electronic wechat
  • deepin-wine
  • Wine-HQ安装
  • docker-wechat
  • 常用docker命令
  • 存储库
    • Main
    • Universe
    • Multiverse
    • Restricted
    • Partner
  • 问题
    • 更换源
    • 依赖众多
    • Got permission denied while trying to connect to the Docker daemon socket at unix
    • 无home目录权限
    • WeChat.exe exit with code 0
  • 参考

之前,在Linux系统安装微信一般都是使用 electron构建的,比如 electronoic-wechat。

而深度系统出来之后,对微信、QQ等的适配比较好,可以通过deepin进行安装,但是这种方式可能依赖比较多。

另外,还有通过docker进行安装的。

electronic wechat

electronic wechat是一个开源项目,地址https://github.com/geeeeeeeeek/electronic-wechat。该项目由第三方社区发布,不是官方微信团队发布的产品,其本质是对网页版微信的一种封装。

这种方式前几年还可以使用,但是由于最近两年微信风控趋严,网页版微信登录被禁,因此这种方式也就无法正常使用。登录时,一般会出现如下信息:

由于安全原因,此微信号不能使用网页版微信。你可以前往微信官网 https://weixin.qq.com/ 下载客户端登录。

deepin-wine

使用deepin的安装步骤如下:

  1. 更新软件源
# 更新软件源
$ sudo apt-get update
  1. 添加仓库

首次使用时,需要运行如下一条命令将移植仓库添加到系统中。

wget -O- https://deepin-wine.i-m.dev/setup.sh | sh
  1. 安装应用

执行完上面的命令,就可以正常地通过apt-get命令进行应用安装、更新和卸载清理了。

比如安装微信只需要运行下面的命令,

sudo apt-get install com.qq.weixin.deepin

将com.qq.weixin.deepin替换为下列包名,可以继续安装其他应用:

应用   包名
微信  com.qq.weixin.deepin
QQ  com.qq.im.deepin
TIM com.qq.office.deepin
钉钉  com.dingtalk.deepin
阿里旺旺    com.taobao.wangwang.deepin
QQ音乐    com.qq.music.deepin
QQ视频    com.qq.video.deepin
爱奇艺 com.iqiyi.deepin

deepin支持更丰富的应用,详细的列表参见https://deepin-wine.i-m.dev。

Wine-HQ安装

参考:
Ubuntu16.04LTS安装Wine的官方终极解决方案
脚本安装wechat

docker-wechat

  1. 安装docker
sudo apt update && apt install docker.io
  1. 加入用户组
    通过将用户添加到docker用户组可以将sudo去掉,命令如下:
#添加docker用户组
sudo groupadd docker
#将登陆用户加入到docker用户组中
sudo gpasswd -a $USER docker     #更新用户组
newgrp docker
#测试docker命令是否可以使用sudo正常使用
docker ps  -a

重启系统后生效,如果不是特别着急,可以先重启然后再做docker操作。
需要添加用户组的原因:在用户权限下docker 命令需要 sudo ,否则出现以下问题:

Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.39/images/create?fromImage=zixia%2Fwechat&tag=3.3.0.115: dial unix /var/run/docker.sock: connect: permission denied
  1. 安装docker-wechat
# 通过dochat启动docker-wechat
curl -sL https://gitee.com/mirrors/dochat/raw/main/dochat.sh | bash
  1. 脚本启动wechat
    通过上面curl -sL https://gitee.com/mirrors/dochat/raw/main/dochat.sh | bash命令的方式启动dochat,会出现下面总结问题中的目录权限不够的问题,这里启动之前先运行xhost +命令,并编写启动脚本放在~/soft/wechat/wechat_start.sh文件中,脚本内容如下:
#bin/bash
#When you encounter problem that the app exit with code 5 on openSUSE Leap, you need to disable X server access control to allow any user to connect to the X server before you start the app. Use below command to disable it:
xhost +
#运行docker通过指定参数
docker run \--name WeChat \--rm \-i \\-v "$HOME/DoChat/WeChat Files/":'/home/user/user/WeChat Files/' \-v "$HOME/DoChat/Applcation Data":'/home/user/user/.wine/drive_c/users/user/Application Data/' \-v /tmp/.X11-unix:/tmp/.X11-unix \\-e DISPLAY \\-e XMODIFIERS=@im=fcitx \-e GTK_IM_MODULE=fcitx \-e QT_IM_MODULE=fcitx \-e GID="$(id -g)" \-e UID="$(id -u)" \\--ipc=host \--privileged \\zixia/wechat

以后想要在ubuntu系统查看微信信息,运行微信脚本即可:

cd ~/soft/wechat
sh wechat_start.sh
  1. 查看docker运行状态
docker ps -a
  1. 停止已运行容器
    如果通过运行上面的启动脚本,提示容器已经存在,可以通过docker ps -a查看各个容器的运行状态并找到对应容器的id,如果容器的STATUS状态不是Exited,则可以通过如下docker stop 容器id 的方式停止该容器(docker stop命令对已经推出的容器不起作用)。
docker stop containerId

然后,再次运行上面的启动微信的脚本即可。

常用docker命令

docker 常用命令总结

存储库

Ubuntu在默认情况下只启用主存储库,不同的应用有不同的依赖,如果要访问更多软件,可能就需要添加其他存储库。

目前,ubuntu系统支持的主要有Main、Restricted、Universe、Multiverse、Partner几种存储库。

Main

安装Ubuntu时,这是默认启用的存储库,主存储库仅包含FOSS(免费和开源软件),可以自由分发而不受任何限制。

Ubuntu开发人员完全支持此存储库中的软件,Ubuntu提供安全更新,直到你的系统达到使用寿命。

Universe

此存储库还包含免费和开源软件,但Ubuntu不保证此类软件的定期安全更新。

此类别的软件由社区打包和维护,Universe存储库拥有大量的开源软件,因此你可以通过apt包管理器访问大量软件。

Multiverse

Multiverse包含不是FOSS的软件,由于许可和法律问题,Ubuntu默认情况下无法启用此存储库,无法提供修复和更新。

可以配置是否要使用Multiverse存储库并检查你是否有权使用该软件。

Restricted

Ubuntu试图只提供免费和开源软件,但在支持硬件方面并不总是这样。受限制的存储库由专有驱动程序组成。

Partner

该存储库由Ubuntu为其合作伙伴打包的专有软件组成,早些时候,Ubuntu曾经通过这个存储库提供Skype。

第三方存储库和PPA(个人包存档,Ubuntu不提供)

如果想要添加其他存储库,可以通过sudo add-apt-repository命令添加,比如:

# 如果想要启用Universe存储库,请使用:
sudo add-apt-repository universe
# 如果想要启用Multiverse存储库,请使用以下命令:
sudo add-apt-repository multiverse
# 如果想要启用Restricted存储库,请使用:
sudo add-apt-repository restricted

添加存储库后,必须使用sudo apt update命令,以便系统使用包信息创建本地缓存。

如果要删除存储库,只需添加-r,如sudo add-apt-repository -r universe。

问题

在通过deepin-wine的方式安装wechat时,有些依赖可能无法正常下载,此时可以添加相关存储库、更换源等。

更换源

安装ubuntu系统后,默认的安装源下载速度可能比较慢,可以更换为国内的软件源,国内比较知名的软件源有清华、中科大、阿里、163等,这些软件源的访问速度在国内还是比较快的。

sudo vim /etc/apt/sources.list

比如,我的ubuntu系统是16.04(可以通过lsb_release -a查看)

#tsing hua mirror site
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-proposed main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-proposed main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main multiverse restricted universe

PS:不同发行版的Linux 操作系统的不同版本也是不一样的,可以先到清华大学开源软件镜像根据自己的发行版,找到对应的软件源版本添加到/etc/apt/sources.list。

系统升级

sudo apt-get update
sudo apt-get upgrade

依赖众多

添加完软件源、存储库后,运行sudo apt-get install com.qq.weixin.deepin命令安装微信,出现下面的问题。

错误:1 http://cn.archive.ubuntu.com/ubuntu xenial InRelease暂时不能解析域名“cn.archive.ubuntu.com”
忽略:2 https://deepin-wine.i-m.dev  InRelease
命中:3 https://deepin-wine.i-m.dev  Release
忽略:4 https://deepin-wine.i-m.dev  Release.gpg
错误:5 https://packages.microsoft.com/ubuntu/16.04/prod xenial InReleaseCould not resolve host: packages.microsoft.com
错误:6 http://cn.archive.ubuntu.com/ubuntu xenial-updates InRelease            暂时不能解析域名“cn.archive.ubuntu.com”
错误:7 http://packages.ros.org/ros/ubuntu xenial InRelease                     暂时不能解析域名“packages.ros.org”
错误:8 http://security.ubuntu.com/ubuntu xenial-security InRelease             暂时不能解析域名“security.ubuntu.com”
错误:9 http://packages.microsoft.com/repos/code stable InRelease               暂时不能解析域名“packages.microsoft.com”
错误:10 http://ppa.launchpad.net/eivnaes/network-manager-sstp/ubuntu xenial InRelease无法连接上 ppa.launchpad.net:80 (2001:67c:1560:8008::19),连接超时
错误:11 http://ppa.launchpad.net/git-core/ppa/ubuntu xenial InRelease          不能连接到 ppa.launchpad.net:http:
0% [正在连接 cn.archive.ubuntu.com (2001:67c:1562::15)]
0% [正在连接 cn.archive.ubuntu.com (2001:67c:1562::15)]
命中:12 http://cn.archive.ubuntu.com/ubuntu xenial-backports InRelease
正在读取软件包列表... 完成
W: 无法下载 http://cn.archive.ubuntu.com/ubuntu/dists/xenial/InRelease  暂时不能解析域名“cn.archive.ubuntu.com”
W: 无法下载 http://cn.archive.ubuntu.com/ubuntu/dists/xenial-updates/InRelease  暂时不能解析域名“cn.archive.ubuntu.com”
W: 无法下载 http://security.ubuntu.com/ubuntu/dists/xenial-security/InRelease  暂时不能解析域名“security.ubuntu.com”
W: 无法下载 http://ppa.launchpad.net/eivnaes/network-manager-sstp/ubuntu/dists/xenial/InRelease  无法连接上 ppa.launchpad.net:80 (2001:67c:1560:8008::19),连接超时
W: 无法下载 http://ppa.launchpad.net/git-core/ppa/ubuntu/dists/xenial/InRelease  不能连接到 ppa.launchpad.net:http:
W: 无法下载 https://packages.microsoft.com/ubuntu/16.04/prod/dists/xenial/InRelease  Could not resolve host: packages.microsoft.com
W: 无法下载 http://packages.ros.org/ros/ubuntu/dists/xenial/InRelease  暂时不能解析域名“packages.ros.org”
W: 无法下载 http://packages.microsoft.com/repos/code/dists/stable/InRelease  暂时不能解析域名“packages.microsoft.com”
W: 部分索引文件下载失败。如果忽略它们,那将转而使用旧的索引文件。
忽略:1 https://deepin-wine.i-m.dev  InRelease
命中:2 https://deepin-wine.i-m.dev  Release
忽略:3 https://deepin-wine.i-m.dev  Release.gpg
正在读取软件包列表... 完成
......

之后,是一堆依赖需要解决

下列软件包有未满足的依赖关系:com.qq.weixin.deepin:i386 : 依赖: deepin-wine6-stable:amd64 (>= 6.0.0.18-1)
E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。
$ sudo apt-get install deepin-wine6-stable:amd64
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
有一些软件包无法被安装。如果您用的是 unstable 发行版,这也许是
因为系统无法达到您要求的状态造成的。该版本中可能会有一些您需要的软件
包尚未被创建或是它们已被从新到(Incoming)目录移出。
下列信息可能会对解决问题有所帮助:下列软件包有未满足的依赖关系:deepin-wine6-stable : 依赖: deepin-wine6-stable-i386 (= 6.0.0.19-1)依赖: deepin-wine6-stable-amd64 (= 6.0.0.19-1) 但是它将不会被安装
E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。
$ sudo apt-get install deepin-wine6-stable-amd64
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
有一些软件包无法被安装。如果您用的是 unstable 发行版,这也许是
因为系统无法达到您要求的状态造成的。该版本中可能会有一些您需要的软件
包尚未被创建或是它们已被从新到(Incoming)目录移出。
下列信息可能会对解决问题有所帮助:下列软件包有未满足的依赖关系:deepin-wine6-stable-amd64 : 依赖: libc6 (>= 2.27) 但是 2.23-0ubuntu11.3 正要被安装依赖: libgphoto2-6 (>= 2.5.10) 但是 2.5.9-3 正要被安装依赖: libgphoto2-port12 (>= 2.5.10) 但是 2.5.9-3 正要被安装依赖: libusb-1.0-0 (>= 2:1.0.21) 但是 2:1.0.20-1 正要被安装依赖: libvkd3d1 (>= 1.0) 但是它将不会被安装推荐: libcapi20-3 但是它将不会被安装推荐: libosmesa6 但是它将不会被安装
E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。
$ sudo apt-get install deepin-wine6-stable-i386
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
有一些软件包无法被安装。如果您用的是 unstable 发行版,这也许是
因为系统无法达到您要求的状态造成的。该版本中可能会有一些您需要的软件
包尚未被创建或是它们已被从新到(Incoming)目录移出。
下列信息可能会对解决问题有所帮助:下列软件包有未满足的依赖关系:deepin-wine6-stable-i386:i386 : 依赖: libc6:i386 (>= 2.28) 但是 2.23-0ubuntu11.3 正要被安装依赖: libgphoto2-6:i386 (>= 2.5.10) 但是它将不会被安装依赖: libgphoto2-port12:i386 (>= 2.5.10) 但是它将不会被安装依赖: libusb-1.0-0:i386 (>= 2:1.0.21) 但是它将不会被安装依赖: libvkd3d1:i386 (>= 1.0) 但是它将不会被安装推荐: libcapi20-3:i386 但是它将不会被安装推荐: libglu1-mesa:i386 但是它将不会被安装 或libglu1:i386推荐: libgsm1:i386 但是它将不会被安装推荐: libodbc1:i386 但是它将不会被安装推荐: libosmesa6:i386 但是它将不会被安装推荐: libsane:i386 但是它将不会被安装 或libsane1:i386 但无法安装它推荐: libsdl2-2.0-0:i386 但是它将不会被安装推荐: libv4l-0:i386 但是它将不会被安装推荐: libxslt1.1:i386 但是它将不会被安装推荐: libxxf86vm1:i386 但是它将不会被安装
E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。
......

安装和使用过程遇到的问题可以参考:https://github.com/zq1997/deepin-wine

Got permission denied while trying to connect to the Docker daemon socket at unix

在使用如下命令安装完docker,并运行dochat脚本以启动docker-wechat时

# 安装docker
sudo apt update && apt install docker.io
# 通过dochat启动docker-wechat
curl -sL https://gitee.com/mirrors/dochat/raw/main/dochat.sh | bash

会出现如下问题:

Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.39/images/create?fromImage=zixia%2Fwechat&tag=3.3.0.115: dial unix /var/run/docker.sock: connect: permission denied

大意是:docker进程使用Unix Socket而不是TCP端口。而默认情况下,Unix socket属于root用户,需要root权限才能访问。

解决方法1:
使用sudo获取管理员权限,运行docker命令

解决方法2:
docker守护进程启动的时候,会默认赋予名字为docker的用户组读写Unix socket的权限,因此只要创建docker用户组,并将当前用户加入到docker用户组中,那么当前用户就有权限访问Unix socket了,进而也就可以执行docker相关命令

#添加docker用户组
sudo groupadd docker
#将登陆用户加入到docker用户组中
sudo gpasswd -a $USER docker     #更新用户组
newgrp docker
#测试docker命令是否可以使用sudo正常使用
docker ps

在重启系统后生效,再去运行脚本

无home目录权限

通过如下命令运行docker wechat

curl -sL https://gitee.com/mirrors/dochat/raw/main/dochat.sh | bash

会出现类似如下的问题提示:

Disabling patch for /home/user/.wine/drive_c/users/user/AppData/Roaming/Tencent/WeChat ...
Disabling patch for /home/user/.wine/drive_c/users/user/Application Data/Tencent/WeChat ...
mkdir: 无法创建目录 “/home/user/.wine/drive_c/users/user/Application Data/Tencent”: 权限不够

提示/home/user权限不够,明明home目录下都是当前用户的权限,新建user目录也不可以。
you need to disable X server access control to allow any user to connect to the X server before you start the app. Use below command to disable it:
遇到这个问题,在启动docker-wechat脚本之前,需要禁用X服务器访问控制,以允许任何用户连接到X服务器。使用下面的命令禁用它即可:

xhost +; sudo chown -R $USER $HOME/DoChat/

详见issues150。

重新运行上面的命令,提示容器已经在使用过程中,需要先移除或者重命名:

Pulling the docker image...3.3.0.115: Pulling from zixia/wechat
Digest: sha256:xxxxxxx
Status: Image is up to date for zixia/wechat:3.3.0.115												

ubuntu系统安装微信过程与问题解决记录相关推荐

  1. 【最快的ubuntu系统安装微信教程】

    全网最快的ubuntu系统安装 微信 教程 这个标题可能有点狂,但是确实简单快捷 这一段全是废话 如果你还在为ubuntu系统安装不了微信而烦恼,那这篇文章可能很适合你. 进入正题 进入微信应用下在页 ...

  2. 新台式机装win7+ubuntu双系统过程及问题记录

    这篇日志重点记录新台式机装机过程当中遇到的一些问题以及解决的办法. 首先是硬件篇,拿到主机之后安装电源,主板,安装主板的时候注意主板不是直接被七个钉子钉在机箱上,需要安装铜柱架空一下.然后是SSD,这 ...

  3. Ubuntu系统安装微信(解决高分辨率屏幕问题及图标显示问题)

    安装 wget -O- https://deepin-wine.i-m.dev/setup.sh | sh sudo apt-get install com.qq.weixin.deepin sudo ...

  4. 五.开发记录之ubuntu系统安装各个软件

    专栏系列文章如下: 一.开发记录之AHRS.惯导传感器SBG-Ellipse-N传感器配置和使用_goldqiu的博客-CSDN博客_sbg传感器数据格式 二.开发记录之派勤工控机远程使用和ubunt ...

  5. Win10 环境下安装Ubuntu 18.04过程记录

    Win10 环境下安装Ubuntu 18.04过程记录 步骤1:下载镜像文件 从Ubuntu官网https://www.ubuntu.com/download/server下载系统的iso镜像文件 , ...

  6. 【以太坊】搭建测试网络之ubuntu系统安装geth客户端以及同步区块数据

    一.前言 在前两天就开始研究这个geth客户端,奈何中间一直遇到各种各样的问题,最后总算是成功在服务器上安装geth并开始同步区块了.这里记录一下过程. 1.虚拟机配置问题 博主最开始用的是虚拟机,但 ...

  7. Linux(二):VMware虚拟机中Ubuntu安装详细过程

    Linux(二):VMware虚拟机中Ubuntu安装详细过程 文章目录 1 准备 2 安装 2.1 虚拟机的建立 2.2 虚拟机安装Ubuntu系统 2.3 虚拟机设置 3 完成 1 准备 1.操作 ...

  8. Ubuntu系统安装及常用软件设置

    Ubuntu系统安装及常用软件设置(2020年10月12日) 情况: 安装Ubuntu系统,并安装常用办公软件:jre.QQ_for wine.微信_for wine.企业微信_for wine.WP ...

  9. Windows重装系统+虚拟机virtuabox安装+ubuntu系统安装+linux环境下安装fsl 一条龙(步步亲测有效)

    Windows重装系统+虚拟机virtuabox安装+ubuntu系统安装+linux环境下安装fsl 一条龙 零:综述 一.windows10系统的安装 1.准备工作 2.制作启动盘 3.修改启动设 ...

最新文章

  1. 【网摘】检测 iframe 是否加载完成
  2. python评语生成_如何评价生成模型框架 ZhuSuan?
  3. 程序员的写作课:三、 海量信息输入指南
  4. java参数注解pam_java – 使用xmlelement defaultvalue注释指定默认值的简单方法
  5. 获取指定某一天的00:00—23:59
  6. 飘逸的python - hack输出流便于调试
  7. 6个座位办公室最佳位置_四人办公室座次的首选最佳座位在哪儿
  8. Python--爬虫初学(11.5)
  9. poj3276(Face The Right Way)反转(开关问题)
  10. MySQL中的insert ignore into, replace into等的一些用法总结
  11. java wsimport https_java – 当服务器需要客户端证书时如何使用wsimport?
  12. xp系统如何更改计算机用户名,xp用administrator_XP系统修改administrator的用户名_xpadministrator...
  13. Android 开启混淆后序列化的问题 Parcelable encountered IOException writing serializable object
  14. AB PLC 1769模拟量模块量程转换
  15. 用php的定界符EOT需要注意的地方
  16. Wireshark 网卡出错 The capture session could not be initiated on interface ‘en0‘
  17. 子平格局——从旺格/从强格
  18. java学习笔记第二周(一)
  19. CSS实现文字竖向排列
  20. Android图像处理之GPUImage for Android

热门文章

  1. 为什么说中小学编程教育是创新思维体操
  2. [来自iPc.me] 技术文,绝对是牛叉的技术文!把妹高手谈如何跟刚搭讪
  3. core_cm3.h文件报错问题
  4. 全家桶靠边站 用Windows自带功能解决3大难题
  5. 通俗易懂解释raid0和raid5_简要阐述raid 0,raid 1,raid5 之间的区别于优缺点以及最低组建条件和可用容量...
  6. 初学者入门级!Python基础知识学习,纯干货【建议收藏】
  7. 怎么把视频语音转换成文字呢?
  8. 开通微信小店显示:系统繁忙,请稍后再试怎么回事?如何解决?
  9. 浅议初中语文微写作(语文教师论文)
  10. CSS实现长宽比的几种方案,CSS如何实现长宽比?