微信,WeChat是腾讯公司于2011年1月21日推出的一款支持Android以及iOS等移动操作系统的即时通信软件,其面对智能手机用户。用户可以透过客户端与好友分享文字、图片以及贴图,并支持分组聊天和语音、视讯对讲功能、群组消息、照片/视讯共享、位置共享、微信支付等服务。
在本教程中,我们将说明如何在ubuntu 20.04以及ubuntu 18.04上安装微信。这其中包括开启deepin存储库,安装deepin-wine微信,解决Ubuntu微信字体乱码框框的问题,解决微信图标问题,使用nohup命令让微信在后台运行以及使用echo和tee命令生成一个脚本,简化微信启动命令。
添加GPG密钥
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 425956BB3E31DF51
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 1C30362C0A53D5BB
添加deepin源
为了可以顺畅的安装微信,我们需要将deepin的两个存储库添加到/etc/apt/sources.list.d/中。你将使用的命令如下:
添加deepin存储库
echo "deb [by-hash=force] https://community-packages.deepin.com/deepin apricot main contrib non-free" | sudo tee /etc/apt/sources.list.d/deepin.list
添加deepin_appstore存储库
echo "deb https://community-store-packages.deepin.com/appstore eagle appstore" | sudo tee /etc/apt/sources.list.d/deepin_appstore.list
安装deepin-wine微信
在安装deepin-wine之前请先将你存储库更换到国内的镜像源,比如163镜像源或者阿里云镜像源,保证下载的速度。在Wine中大多数Windows应用程序是为32位架构而构建的。 第一步是启用Multivec,它允许您在机器上安装64和32位软件包:
sudo dpkg --add-architecture i386
sudo apt update
接下来我们将安装deepin-wine5和微信,你将使用以下命令进行安装:
codename=`cat /etc/lsb-release |grep DISTRIB_CODENAME|awk -F '=' '{print $2}'`
sudo apt install -t $codename deepin-wine5 -fy
sudo apt install -t $codename com.qq.weixin.deepin fonts-wqy-microhei
至此,微信已安装在你的Ubuntu上。为了避免软件依赖项的冲突,我们还需要将deepin的存储删除,请一定要删除deepin存储库。我们将使用以下命令删除deepin存储库:
sudo rm -rf /etc/apt/sources.list.d/deepin_appstore.list /etc/apt/sources.list.d/deepin.list
验证安装
默认情况下,微信安装好后不会在gnome桌面环境生成图标的,因此不能直接gnome的桌面启动器中启动,我们将使用命令启动微信,命令如下:
/opt/apps/com.qq.weixin.deepin/files/run.sh
启动后,你将会看到微信的登录界面,输出你用户名与密码即可登录。你可能会注意到微信在我们当前的终端产生非常多标准输出,因为现在微信是在前台运行,因此我们可以使用ctrl z
将微信切换到后台运行。
当你想再次启动微信时,由于启动命令太长,经常记不住这么长的命令。接下来使用脚本或者alias别名来简化这个启动命令。在这里我们选择脚本的方式,使用以下命令简化微信启动的命令:
echo "nohup /opt/apps/com.qq.weixin.deepin/files/run.sh >/dev/null 2>&1" | sudo tee /usr/bin/wechat && sudo chmod +x /usr/bin/wechat
该命令使用nohup命令让微信在后台运行并将微信的标准输出,标准错误重定向到/dev/null。使用echo和tee命令生成一个简单脚本,然后使用chmod命令让脚本具有可执行权限。
现在,你只需要在终端中键入wechat
即可启动微信。
解决Ubuntu微信字体框框的问题
微信自带字体,理论上你不会遇到字体框框的问题,如果你遇到这个问题可以尝试设置环境变量LC_ALL=zh_CN.UTF-8
到微信启动脚本,执行下面命令的将会自动添加环境变量LC_ALL=zh_CN.UTF-8
到微信启动脚本中
sed -i.bak '2i export LC_ALL=zh_CN.UTF-8' /opt/apps/com.qq.weixin.deepin/files/run.sh
完全退出微信
默认情况下微信并不会完全退出。启动微信然后退出,你可以执行ps命令的查看当前运行的进程。
ps aux | grep WeChat | grep -v grep
输出如下:
myfreax+ 22029 3.9 1.3 2914588 224916 pts/0 SLl 16:23 0:04 c:/Program Files/Tencent/WeChat/WeChat.exe
myfreax+ 22214 3.0 1.1 2014600 186008 pts/0 Sl 16:24 0:02 c:\Program Files\Tencent\WeChat\WeChatApp.exe --applet_init_config={"appId":"preload_1617092662538_0","appVersion":0,"brandName":"","clientVersion":1644758313,"debugType":0,"deviceType":"Windows+7","iconUrl":"","isMiniGame":false,"isNativeView":false,"isPreload":true,"isTest":false,"moduleListInfo":"","orientation":"","originalFlag":0,"originalRedirectUrl":"","productId":1000,"referrer":{"agentId":"","appId":"","launchScene":10086,"sourceType":0},"remote_debug_endpoint":"","shareKey":"","shareName":"","uin":"2752111660","username":"","versionState":0,"wxIconUrl":""} --applet_init_config_ex={"clientJsExtInfo":"","commonJsInfo":"{\"publicVer\":317}\n","dataPath":"C:\\users\\huangyanxiong\\My Documents\\WeChat Files\\huangyanxiong-Lsmile\\Applet\\","enterPath":"","extraData":"","logPath":"C:\\users\\HUAN~PA1\\APPL~JHT\\Tencent\\WeChat\\log\\","messageExtraData":"","nickName":"","openapiInvokeData":"","operationInfo":"","pkgDirPath":"","privateExtraData":"","publicPkgDirPath":"C:\\users\\huangyanxiong\\My Documents\\WeChat Files\\Applet\\publicLib\\317\\clientPublicLib.wxapkg","publicVer":0,"signature":"","tmpPath":"","transitiveData":"","url":"","wxNickName":""}
可以看出微信还存在两个进程在运行。我们不知道它还在干什么,但我们可以一条命令送走它。
pkill -i wechat
我们可以使用alias命令创建bash的别名,简化上面的命令。你将执行以下命令:
alias kwechat="pkill -i wechat"
当添加kwechat别名后,就可以直接终端中运行kwechat
退出微信。最后你可以参考下面的教程,将alias别名命令持久化的文件中:
结论
至此,你已经学会在Ubuntu上安装微信。如果您有任何问题或反馈,请随时发表评论。