Jump to Navigation

Linux

Linux/Unix操作系统

macbook linux问题

macbook linux问题

启动声音后键盘输入响应慢的问题

这个响应时间大概在10s以上了,非常成问题。

并且启动Linux后也有可能键盘布局有问题。

这时需要手动执行rc.local脚本,修改键盘的布局。(这里参数archlinux Macbook wiki)

目前还不明键盘响应慢的原因。多方查找无果。

修复快捷键

  • Option + Command + P + R 重置NVRAM
  • Ctrl + Option + Shift + Power 重启mce

mac os x的linux化改造

brew 包管理

安装一些包还是比较方便的,虽然限制比较大。

有些GUI程序也可以通过brew 来安装。

终端软件:iterm2

iterm2的问题,方向键盘导航响应速度慢。

和konsole相比,还是差太多了。

这应该不是哪个终端软件的问题,而应该是系统问题。

brew install coreutils findutils binutils gawk gnu-sed gnu-tar

brew install git golang python python3

brew install libtool automake autoconf check

brew install emacs-plus

brew install google-chrome thunderbird evernote virtualbox iterm2 skype

brew install Caskroom/cask/osxfuse

brew install Caskroom/cask/xquartz

注:brew 安装还是需要代理服务器的。

自建ngrok服务

自建ngrok服务

源代码

ngrok1.7及以下版本有源代码

ngrok2+版本没有源代码,但有bin版本。不知道是否有什么黑科技呢。

本文以有源代码的ngrok-1.7为例,说明自建ngrok服务的过程。

生成ngrok使用的自签加密证书

ngrokd客户端与ngrok客户端tunnel全程使用tls加密传输,所以要在编译前生成加密证书。

简单的生成脚本,

开用spacemacs

开用spacemacs

大概试用spacemacs一个月了,试用感受是,对我来说spacemacs是一个高度整合的emacs配置优化与管理项目。
除此之外,spacemacs还有简单整合vim操作的操作功能。

spacemacs中,配置一个emacs扩展非常容易,只需要加一行配置,加入扩展的名字即可。
在spacemacs中,扩展叫做layer,以实现与扩之间的整合封装。
每个layer管理并使用一个或者多个emacs扩展,并提供适当的接口实现统一配置。
这样当然有一个缺点,有些没有进spacemacs layer的扩展,还需要手动做一些定制化配置。
在定制化方面,spacemacs实际上仍然做的比较好,提供了丰富的接口与详细的说明。

另外,spacemacs还提供了统一的theme支持与theme管理功能,
并且最新v0.104.1版本默认的theme已经比较好看了,一直用着的。

Category:

Linux 微信(weixin)代理项目(wxagent)介绍

微信登陆代理:wxagent

微信桌面版做的很弱,并且没有Linux版。

虽然在Linux上可以使用微信web版,有时很难在一堆浏览器标签中找到。

像这样的应用,应该有属于自己的程序窗口与桌面空间。

微信登陆代理实现目标

提供后台服务,管理微信登陆会话,负责与服务器通信。

以后台服务的方式运行,占用资源少,并且能够长时间运行,避免了需要经常手机扫描登陆的麻烦。

不过,由于这个代理提供的消息服务不再有认证等安全功能,登陆代理最好安装在安全的机器上,像本机上,或者是内网的私有服务器上。

微信登陆代理原理

提到实现,不免要涉及到微信通信协议,好在已经有人对微信web版协议做了分析,虽然还有不完善的地方,基本上可以实现简单登陆与消息收发功能了。

微信登陆代理根据现有资料,使用PyQt5实现了微信web版协议,通过测试,把相关API更新到了最新的微信的wx2版本。

并且把二维码以dbus服务方式提供出来,这样该服务就不需要有UI的支持了,这也是与现有几个Linux版微信不同的地方。

除了以DBus方式提供API,还可以使用socket方式,可以更灵活了。

在PyQt5中使用Qt DBus的延时响应返回

在PyQt5中使用Qt DBus的延时响应返回

### dbus介绍
dbus是一种现代linux系统中的本机RPC调用实现,实现了程序间的松耦合依赖。

### RPC调用
RPC调用可分为同步调用和异步调用。
常用的同步调用很容易理解,就是调用并一直等待RPC服务器端的返回值。
异步调用,是针对某次耗时的RPC调用而言,像文件操作,或者是网络操作,或者计算操作。
如果再一直等待服务器端的返回,客户端的效率将非常低下。

### 原始DBus的方式
dbus是使用了异步IO回调方式,所以并不存在所谓的延时响应返回问题。
因为所有的调用都可以看作是异步的,延时的。
不过dbus提供了一个超时机制,如果超时,则dbus调用端不再接收响应返回值了。

### Qt DBus的方式
在Qt中,把DBus的服务,调用响应封装成为Qt的QObject和slots,从而简化DBus的使用。
同时,默认情况下,Qt还把对应slots的返回作为DBus调用结束的标志。
这样就引入一个问题,如果在这个slots中无法立即完成一个dbus调用,应该怎么处理?

docker应用小记

docker应用小记

这两天搞了点docker相关的东西,涉及到了docker两个相关的点,
都是关于网络方面的。

一个是docker使用的子网的配置。
一个是 docker pull/push使用的代理方式配置。

###
在centos7上,docker使用了这些配置文件:
/etc/sysconfig/docker
/etc/sysconfig/docker-network
/etc/sysconfig/docker-storage
/etc/sysconfig/docker-storage-setup

这几个文件内容比较简单,每个文件一行,而且默认是空参数。
这些文件叫做EnvironmentFile,用来设置docker的固定配置参数。

对本文开头提到的两个问题,修改这些文件即可实现。
比如这里只修改了/etc/sysconfig/docker-network文件,因为这两个配置都是关于网络方面的。

shadowsocks安装,portable化

sss

配置文件:

115syncd项目介绍

115网盘是个比较好用的网盘,提供比较大的磁盘容量。

该115syncd项目主要提供以下功能,
自动模拟登陆115网盘api。
以服务模式运行。
指定本地目录以及对应的115网盘目录。
监控指定目录,如有目录或者文件发生变化,则自动上传到115网盘对应的目录。
指定目录对可配置多个。
本地目录与网盘目录能够保持一到,在缺少目录时自动创建。
支持任务队列式并发上传控制,默认3个并发上传。
文件上传采用POST协议方式,有上传文件大小限制。
能够自动过滤掉一些指定的临时文件。
能够实现仅上传模式功能,即本地删除而网盘不删除,这样保持本地空间远小于网盘空间。
反复修改重复上传的文件,根据哈希去重,只保留最近一次上传的文件。

该实现使用PyQt5,在linux系统上安装使用都非常简便。
项目地址:https://github.com/kitech/115syncd

我的Arch Linux aur包仓库

由于一些aur包需要多台机器使用,每台机器都安装很不方便,
借助Git @ OSC建立了一个简单的aurcare仓库,方便一些aur包的使用。
感谢Git @ OSC 的开放免费存储服务。
当然这样也还有不方便的地方,就是这个仓库允许的单文件最大50M,有些大的包无法放在上面。

仓库使用,在/etc/pacman.conf中添加这么一行即可。

[aurcare]
Server = https://git.oschina.net/kitech/aurcare/raw/master/

Category:

頁面

訂閱 RSS - Linux


Main menu 2

by Dr. Radut