蓝灯(lantern)在服务器(vps)上运行
蓝灯(lantern)在无界面的linux下运行的时候,会遇到一个错误:
error while loading shared libraries: libappindicator3.so.1: cannot open shared object file: No such file or directory
错误原因是蓝灯运行需要加载一个系统托盘的类,这个类的作用就是出现一个最小化的图标,图标虽小,还是调用了ui的类库,因此,没有桌面是没办法运行蓝灯的。特别注意,诸如:
apt-get install libappindicator3-1
的解决办法对不想要桌面的用户是没有毛线用处的。因为你不得不为了这个类库,再安装一大堆桌面依赖类库,甚至不小心把桌面系统安上了。
说实话,这个类应当是可以选择加载的。比如:
lantern -headless
确实,这样运行蓝灯就不会加载那个托盘了。但坑爹的地方在于,从源码可以看出,蓝灯运行的时候只是根据headless决定是否显示界面,而非是否加载界面。真心想不明白,加载界面不显示,为什么蓝灯要捂着耳朵盗铃,闭上眼睛就说界面没有了。
因此,解决方案是,编译的时候就不要那个托盘小界面。这里:
HEADLESS=true make linux
这个编译可以说是漫长而且痛苦的,各种依赖类库安装一大堆,索性丢到docker里面去编译:
HEADLESS=true make docker-linux
为了支持docker,配置go。坑爹的是vps不支持。因为docker需要创建虚拟网卡。只能拉到本地编译。下面是我编译好的linux server版本:
校验码(sha512):
c86ef16d17aee3cf9aed6c175c597426991c6b3fec6bc4944bfc5dfe4ef115f2d21a3ee8dbee75be2a06d20e7e8411d1b5a081016d5c77330613642294305146 lantern_linux_386_server
491e6c28ff1a1de5baee7139ebdae5cfcb06327d4a586e9404632adcfdf83fd19e2a08177800482df6c618e745b7b811ad8fe92e256a50901c9702936c2b8dc3 lantern_linux_amd64_server
幸好生在个开源的世界,看看源码,或许能够彻底的解决问题 :)
本文首发:https://program-dog.blogspot.com/2016/06/LanternRunningOnServer.html
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
蓝灯(lantern)在服务器(vps)上运行的更多相关文章
- 92.vue---新手从本地项目开发到服务器线上运行爬坑。
因为我做的是后台,所以不用做SEO 参考 本项目的定位是后台集成方案,不太适合当基础模板来进行二次开发.因为本项目集成了很多你可能用不到的功能,会造成不少的代码冗余.如果你的项目不关注这方面的问题,也 ...
- 服务器(Linux)上运行python总结
跑实验换了几次服务器了,每次遇到相似问题都要重新百度,而且每次百度搜索出的顺序都不一样,又得重新找半天,这次把遇到的问题都总结一下. 1.准备 PuTTY和FileZilla FileZilla使用F ...
- vps上运行serv-u的问题
为了给产品环境建个测试站,今天特意申请一个vps来做开发用,但运行了Serv-U的ServUDaemon.exe后始终提示: 响应: 530 User czhan cannot log in. 很无语 ...
- 在Linode VPS上搭建离线下载神器Aria2+WEBUI管理及对国内云盘看法
在Linode VPS上搭建离线下载神器Aria2+WEBUI管理及对国内云盘看法 2015-09-21 by Hansen 原文链接:http://www.hansendong.me/archive ...
- 【vps】如何在vps上安装mirai机器人?
[vps]如何在vps上安装mirai机器人? 前言 由于某位师傅在群里设置了一个bot,吸引了我,所以我之前找他问了点bot的相关知识,这几天正好服务器搬迁,所以就在新服务器上再装一遍bot 1.安 ...
- 将 java 项目打包成可运行的 jar 包(main 函数带参数),并上传到 linux 服务器上运行
一.概述 java项目有两种架构,一种是 B/S 架构的,一种是 C/S 架构的. 对于 B/S 架构来说,我们常见的 java ee 即是 B/S 架构,通常,开发人员会在本地进行开发,然后将项目打 ...
- Visual Studio写的项目在 IIS 服务器上运行的两种简单方法
首先需要PC上开启了IIS服务,相关方法网上很多,也很简单 第一种:直接在项目中操作 1.创建一个项目,然后右击选中项目,右击,单击属性,打开项目属性标签页面 如图,选择Web标签,在服务器栏目中选中 ...
- Linux 笔记 #03# 在 Debian远程服务器上运行 Java socket程序
我试图做什么:把我的破代码放到服务器上运行,并成功与客户端进行 socket通信. 预备环境:刚安装好 MySQL 和 JVM 的 Linux远程服务器(Debian 8)一台. 主要有如下几个步骤: ...
- 如何使用Cygwin在Windows上运行OpenSSH SSHD服务器
记录几款非常有趣, 但不怎么耳熟的软件: Cygwin 是可以安装 OpenSSH server 和 client 的, Mosh 也可以, 这对于 Linux 用户而言就非常方便了. 如何使用Cyg ...
随机推荐
- JavaScript的几种继承方式
看<JavaScript高级程序设计>做的一些笔记 ECMAScript只支持实现继承,不支持接口继承(因为函数没有签名) 原型链(实现继承的主要方法): function SuperTy ...
- [zt]OJ常见的Judge Status
Queuing : 提交太多了,OJ无法在第一时间给所有提交以评判结果,后面提交的程序将暂时处于排队状态等待OJ的评判.不过这个过程一般不会很长. Compiling : 您提交的代码正在被编译. R ...
- js再学习笔记
#js再学习笔记 ##基本 1.js严格区分大小写 2.js末尾的分号可加,也可不加 3.六种数据类型(使用typeof来检验数据的类型) `typeof` - undefined: `var ...
- bzoj3594: [Scoi2014]方伯伯的玉米田--树状数组优化DP
题目大意:对于一个序列,可以k次选任意一个区间权值+1,求最长不下降子序列最长能为多少 其实我根本没想到可以用DP做 f[i][j]表示前i棵,操作j次,最长子序列长度 p[x][y]表示操作x次后, ...
- Greenplum 生成加分区语句
在使用greenplum中会使用分区表,但同时分区表需要维护分区:比如加分区,这个过程比较痛苦,查询相关资料以后有了相应的解决办法,但是该办法也不是万能的,有诸多限制,关于限制有兴趣的同学可以查看我文 ...
- thinkphp打印执行的sql
打印下执行的sql,也就是在执行add或save语句下面写下: echo M()->getlastsql();
- SpringMVC下的Shiro权限框架的使用
SpringMVC+Shiro权限管理 博文目录 权限的简单描述 实例表结构及内容及POJO Shiro-pom.xml Shiro-web.xml Shiro-MyShiro-权限认证,登录认证层 ...
- gif 图片制作和拆解
http://app.baidu.com/app/enter?appid=120980 gif 制作http://app.baidu.com/app/enter?appid=143534 gif 分解
- Latex 页面样式
LATEX支持三种预定义的页眉/页脚(header/footer)样式,称为页面样式(pagestyle).如下命令: \pagestyle{style} 中的style参数确定了使用哪一种页面样式. ...
- 使用本地phpmyadmin管理远程数据库
使用放下挺简单的,因为某些业务需求,phpmyadmin不让放在网站服务器上,所以放在本地可以方便管理远程数据库 点击下载会下载一个 config.inc.php 吧这个文件放在phpmyadmin ...
