批量下载 BCompare 的语法高亮扩展包

打开语法高亮扩展包的下载页面

http://www.scootersoftware.com/download.php?zz=kb_moreformatsv4

然后在Console里面执行

$('#formats input[type="checkbox"]').click()

如果不想下载带感叹号的项目 也就是提示 warning This format will supercede a default file format. 的项目

for (img of $('#formats img[alt="warning"]')){
parent= $(img).closest('div[......]

继续阅读

蒲公英 X3-3251 root 后的一些配置与共识

  1. MT76xx MIPS SoC 下面的软件包 ,只要不涉及内核模块的,大多数都是二进制兼容的,但是由于裁剪问题,各家内置的工具、方法都不同,有些和系统耦合的模块,不一定通用,比如蒲公英的这个,安装OpenWrt官方源里面的luci主题什么的,基本都用不了。
  2. MTK原厂的SDK,早期的,使用的都是基于OpenWrt 14.0x (barrier_breaker,以下简称BB)修改的系统.这点可以从网上泄漏的SDK看出端倪。
  3. 蒲公英路由器,虽然把系统信息改的面目全非,但是其实还是可以看出端倪是基于BB修改的。
  4. 在MTK给厂家的 MT76xx 的SDK里面,ARCH被设置为[......]

    继续阅读

备份蒲公英X3的固件(以及其他类似mtd类型的固件的一键备份)

评测拿了2台蒲公英路由器,第一件事情当然是先备份固件。编程器到手了,电烙铁还没买。

mkdir -p /tmp/bin/
cd /tmp/bin/
grep mtd /proc/mtd |sed -e 's/://g' -e 's/"//g' |awk '{print "dd if=/dev/"$1" of="$4".bin"}' |sh

 

dev: size erasesize name
mtd0: 00030000 00010000 "u-boot"
mtd1: 00010000 00010000 "kpanic"
mtd2: 00010000 00[......]

继续阅读

反向编译OpenWrt的Lua字节码 (Decompile Lua bytecode of OpenWRT)

  1. Lua有一种预编译机制,能够把文本代码预编译成Bytecode/Opcode 提高解析、执行速度,降低内存占用
  2. 原版Lua(Vanilla Lua)默认的Bytecode的字节结构和OpenWrt的并不相同,因为OpenWrt为了一系列需要,在截止我写此文时候,在Lua5.1.5的版本主线上对原版的LUA引擎打了补丁导致其产生的字节码和原版的Lua产生的并不一样,( http://lua-users.org/lists/lua-l/2012-06/msg00065.html ),因此也不能使用原版的Lua引擎解释,会报类似 bad header in precompiled[......]

    继续阅读

Nginx用rsyslog转发日志的一些小坑

我们从Nginx的代码中可以看到,给syslog发通知的时候,tag后面跟了2个字符 冒号+空格,所以阿里云这里的文档完全是坑爹

这里判断的是$syslogtag,也就是这种配置

这边配置tag为 nginx,而 $syslogtag 不会是 nginx,而是 nginx+冒号+空格

查了rsyslog文档,$syslogtag 行为本来就是程序自己定的,(),真正需要的是 这个 $programname

所以这样的配置是可以work的:[......]

继续阅读

说一说 Git Subtree

写组件代码写一半 ,感觉此组件在不同的项目之间的共性太多 ,该组件完全可以单独作为一个repo独立出来,思考了一下决定用Git Subtree来完成这种拆分。具体的拆分过程由于手册上都有讲,别人也写的比我好,我也就没有必要做搬运工了,点这里进入传送门 

但是该组件所在目录已经存在了,而且我的 PSR-4的命名空间也都写好了 ,现在改也不太方便,怎么弄呢?

也许你会搜索到各种各样的文章 有的会教你clone一个本地单独的repo 然后把原来的目录删掉,再以这个本地repo为桥梁重新保留历史方式进行add subtree ,有的会告诉你直接备份完整的那个目录 删掉以后,再add su[......]

继续阅读

观测到电信存在全国性的端口封禁

服务器上开了个4444端口想零时跑个东西,发现电信的网怎么都不行

改成4445一下就可以了 ,换了宽带通,也一下就可以了

才怀疑是电信的问题 ,找了几个电信的IDC的机房测试,家里的电信树莓测试,无锡电信 北京电信等都存在这个问题。

搜了一下,还真有人整理出了一份电信全国封禁的目的端口列表,发现和UC Cloud的全局封禁列表基本重合,这里就借用这个列表,给后来人避免踩坑了。

以下端口对于ucloud都是禁止的,不管防火墙是否设置开启

  • 使用ucloud的同学可以看下,当心踩到这些坑,仅供参考 来源 https://ruby-china.org/topics/1[......]

    继续阅读

关于一些云服务商批量生成的系统镜像模板里面ssh密钥相同的问题

其实这些问题之前就和hev探讨过 具体见这里 https://hev.cc/2030.html

服务器端证书的用途是加密传输数据,当客户端连接服务器端时,服务器端会选择一种加密协议,如 rsa ,并将服务器端的 RSA 公钥(/etc/ssh/ssh_host_rsa_key.pub)发送给客户端,客户端使用这个公钥将要发送给服务器端的数据(例如认证密码)加密,再通过网络传输给服务器端。服务器端再使用服务器端 RSA 密钥解开被加密的数据,得到明文。只有拥有这个 RSA 密钥的用户可以解开这个加密数据。

客户端证书的用途是鉴定用户身份。

现在的问题是 VPS 服务商的系统都是预安[......]

继续阅读

古老的问题:SSH中粘贴的时候VIM自动缩进了很多空白

简单的方法:

然后插入的时候按下F2 切换到粘贴模式

根本的原因:

开启了自动缩进的各个选项

可以挨个关闭

noai=>noautoindent

或者找到 设置“indentation rules and plugins”的地方 关闭掉即可[......]

继续阅读

MySql 加密 客户端使用的密码配置文件

 

正常情况下,一般数据库密码可以写在用户主目录的.my.cnf 然后设置chmod 600,一般来说是比较安全的。
但是如果不想给人知道用户名和实际的密码,但是又想给人用,可以使用mysql自己带的config edit。

这个时候,用户主目录下会出现一个加密了以后的.mylogin.cnf,权限600

直接查看会发现密码是加密的,调用:

可以看见摘要

直接调用mysql 就可以免密码登录mysql_config_edito[......]

继续阅读