博文

目前显示的是 2015的博文

通过串口root kindle voyage,并安装koreader

图片
前言 之前入手的kindle voyage整体做工及显示效果确实不错,我一直用来看文档资料什么的。但官方自带的pdf阅读功能实在太弱,所以打算root后安装koreader来看pdf文档。kindle的系统版本升级到5.6后,所有的root漏洞都被封锁了,网上搜索了下,只能通过引出串口root了。 系统版本:kindle 5.6.2.1 参考资源: http://blog.sina.com.cn/s/blog_556474b80102vg8z.html http://www.hi-pda.com/forum/viewthread.php?tid=1559417&extra=page%3D5 拆机及引出串口线 拆机的过程总体来说比较容易,主要是参照了ifixit上关于kindle voyage拆机的向导做的,有个小的十字螺丝刀就可以搞了。刚开始拆顶部那个盖板时要小心些,上面是有胶水粘着的,那些锁扣也比较容易弄坏。 主要是引出串口线费了不小的劲,触点实在太小,太难焊了。对于我们这种完全无焊工的人来说很考验技术。串口线的RX,TX,GND引脚位置如下图所示: 线引出来后,通过usb转串口模块连接到电脑就可以调度了。usb转串口模块淘宝上很多,我采用的是FT232系列的,电压选择的3.3V. 通过串口获取root权限 计算DIAG模式root密码 串口调试工具我使用的是kermit,其他串口工具也行,一般波特率设置成 115200就可以了。串口设置好后,重启kindle,当屏幕上显示“Hit any key to stop autoboot:"时,在终端中输入任意键就可进入uboot中了。此时可以从终端中看到设备信息,记下其中的设备序列号”S/N",后面计算密码时要用到。 可用下面的python脚本计算DIAG模式的root密码: #!/usr/bin/env python import hashlib print("fiona%s"%hashlib.md5("XXXYOURSERIALXXX\n".encode('utf-8')).hexdigest()[13:16]) 将XXXYURSERIAL

在OpenWRT上配置Shadowsocks,并通过Dnsmasq+ipset按域名翻墙

前言 之前家里的路由器一直是连着VPN翻墙的,但随着最近网络环境的日益恶劣,PPTP VPN连接不是很稳定。最近花大价钱(40RMB/月)换了一个VPN服务商,发现他们还提供Shadowsocks代理方式翻墙,所以打算在路由器上装上Shadowsocks代理,期望能有更好的翻墙效果。同时,之前在路由器中设定的是按IP地址判定走VPN还是直连,但这种方式有个比较大的缺陷:没有办法很好的判定一些IP地址经常变化的网站(比如说Instagram)。后来网上搜索了下,发现用Dnsmasq+ipset可以很好的解决此问题,可以通过域名判定是否翻墙还是直连。 在安装和配置的过程中主要参考了如下两篇文章: https://blog.sorz.org/p/openwrt-outwall/ http://abublog.com/openwrt_shadowsocks_dnsmasq_fuckwall.html shadowsocks-libev安装及配置 shadowsocks-libev项目网址: https://github.com/shadowsocks/openwrt-shadowsocks 下载地址: http://sourceforge.net/projects/openwrt-dist/files/shadowsocks-libev/ shadowsocks在openwrt上有两个版本可用,一个是官方版本,支持ss-local建立socks代理;一个是专为openwrt优化的版本shadowsocks-libev-spec。这里,我采用的是shadowsocks-libev-spec。同时,在openwrt上,shadowsocks-libev依赖的ssl库有两个选择,一个是openssl, 一个是polarssl。这里我选择的是polarssl,这个版本更省空间。所以最终我下载的ipk文件为:shadowsocks-libev-spec-polarssl_2.2.1-1_ar71xx.ipk(请根据路由器平台下载对应的版本) 然后将ipk文件通过scp或其他方式上传到路由器,进行安装。安装命令如下: # opkg update # opkg install  libpolarssl #

U-boot移植 (v2012.04.1 S3C2440平台)

图片
一 概述 项目概述: 移植u-boot v2012.4.1到micro2440开发板(S3C2440平台) 项目github地址: https://github.com/novawl/u-boot-v2010.4.1 预期目标: 1) 实现Nand flash Nor flash 烧写; 2) 实现Nand flash 启动U-boot; 3) USB驱动移植,实现USB下载镜像; 4) 网络驱动支持; 5) 设置环境变量,实现Nor flash 和 Nand flash引导Linux kernel. 二 移植过程 1 准备工作 1) 安装ARM交叉编译工具:arm-linux-gcc 4.3.2 2) 下载u-boot代码:git clone git://git.denx.de/u-boot.git 2 配置micro2440编译选项,创建micro2440平台相关文件 1) 和之前的版本不同,平台编译选项不再是在顶层Makefile里添加,而是修改u-boot/boards.cfg文件。查看boards.cfg文件可以看到每一个平台由以下选项组成: Target ARCH CPU Board name Vendor SoC Options mx31ads arm arm1136 - freescale mx31 mx31pdk arm arm1136 - freescale mx31 mx31pdk:NAND_U_BOOT tt01 arm arm1136 - hale mx31 smdk2410 arm arm920t - samsung s3c24x0 micro2440 arm arm920t -