Category: 技术

初探酷走Android行车记录仪

酷走记录仪 博客有段时间没有更新了,提前说好这不是一般的行车记录仪评测文章,我现在开的 SUV 上并没有装记录仪,只是同事刚好送了一个厂商已倒闭的记录仪,看到这款采用 Intel Atom 处理器的行车记录仪有点兴趣,准备初步研究下。 酷走行车记录仪由深圳汉普云联科技生产,具体型号为 KZV201,网上关于此行车记录仪的评测文章还是有一些的,之前 京东众筹 上的链接应该还在,想了解的朋友们可以看看。 这里我就不做具体介绍了,外观图也就不上了。初步了解此记录仪使用 Intel SOFIA Atom x3 处理器,因此集成了 3G 上网功能(带 SIM 卡插槽),支持 2.4 GHz Wi-Fi […]

CentOS 6编译Intel Beignet OpenCL

关于 Intel Beignet OpenCL 之前在 Linux 上为了测试 Intel 核显安装了 Intel 官方闭源的 OpenCL Drivers 库,也解决了 CentOS 6 系统下 C++ 程序的问题,不过换了一台设备之后发现该 OpenCL 库却与 i3-3220 CPU 自带的 HD Graphics 2500 核显不兼容,OpenCL 不能正确加载核显设备。 由于 Intel 闭源的 OpenCL Drivers 现在基本上不再更新了,因此我想着可以试试 Intel 官方的开源 Beignet OpenCL 实现,其 GitHub 项目主页: https://github […]

Linux修改ELF解决glibc兼容性问题

Linux glibc 问题 相信有不少 Linux 用户都碰到过运行第三方(非系统自带软件源)发布的程序时的 glibc 兼容性问题,这一般是由于当前 Linux 系统上的 GNU C 库(glibc)版本比较老导致的,例如我在 CentOS 6 64 位系统上运行某第三方闭源软件时会报: CentOS 6 自带的 glibc 还是很老的 2.12 版本,而下载的第三方程序依赖 glibc 2.17 版本,这种情况要么自己重新编译程序,要么只能升级系统的 glibc 版本。由于我使用的程序是第三方编写并且是闭源软件无法自己编译,升级 glibc 固然可能能解决问题,但是 glibc 做为最核 […]

Linux C++程序使用Intel OpenCL的问题

Intel OpenCL 问题 最近想在 Linux 环境下使用 Intel 核显测试我们的某个程序,该程序是用 C++ 写的,主要调用 OpenCL 库使用 GPU 进行运算。之前我用 AMD 和 NVIDIA 的显卡都测试过没有问题,还以为会比较顺利,结果在程序刚开始调用 clGetPlatformIDs 检测 OpenCL platform 的时候就直接报错退出了。 我的测试环境使用的是 Intel i3-6100 CPU,该处理器自带 Intel HD Graphics 530 核显,操作系统则是 CentOS 6.9 64 位(比较老,为了和使用环境一致),安装的也是 Intel 官 […]

在Docker容器中使用FUSE文件系统

容器使用 FUSE 的问题 我们一般使用的 Docker 容器都是非特权容器,也就是说容器内的 root 用户并不拥有真正的 root 权限,这就导致很多属于系统管理员的操作都被禁用了。 最近有个在 IBM Bluemix 容器内部挂载 FUSE 文件系统的需求,例如我使用 davfs2 挂载 WebDAV 服务器不出意外地会报错: mount.davfs 命令报错表示无法打开 fuse 设备,而 fuse 设备实际上是存在的(说明 fuse 模块也已经加载了): 从容器内部可以查看到 cgroup 实际允许访问的设备,并没有包含 fuse 设备: 手工允许 fuse 设备自然也是不可行的: […]

使用Software Collections编译最新Linux kernel

关于 Software Collections 使用 Software Collections(SCL)的契机是最近我需要在 CentOS 6 系统上编译最新版本的 Linux kernel,主要用于测试 Btrfs 的数据校验对于 AVX2 指令的支持情况。然而大家都知道 CentOS 6 自带的软件包版本都是非常老的,glibc 维持在 2.12 版本,老的 gcc 4.4 版本则根本就不支持 AVX2 指令,这样编译 Linux kernel 时会自动关闭 async xor 对 AVX2 的支持。 如果要自己动手编译新版本 gcc,这感觉还是有点吃力不讨好,幸好 Red Hat 也注意 […]

复制MIFARE Classic小区门禁卡记录

上个月忙着找房搬家换新住处,住进去发现新小区除了稍有点远的大门,平时方便行人出入的侧门都是必须刷门禁卡的,而房东那只有一张 IC 门禁卡,小区物业也无法办理新卡了,因此想着是不是能用手机模拟或者复制门禁卡的方式自己解决。 尝试手机模拟 由于我使用的华硕 Zenfone 2 手机是支持 NFC 功能的,首先可以用手机读取现有的门禁卡信息,这里我使用的是 NXP 官方推出的 NFC TagInfo App: 从 IC Info 里可以看到小区 IC 门禁卡是最常见的 MIFARE Classic EV1 S50 也就是 M1 1k 卡。 另外 App 下方还提示我的手机不兼容此卡,我们可以在 FU […]

Arukas容器使用ge.tt替代Endpoint域名

ge.tt 与 Endpoint 前面写了一篇介绍日本 Arukas 樱花容器及使用其 Endpoint 域名的文章,目前我在 Arukas 上面跑了一个 Shadowsocks 容器用于路由器自动爬墙。不过还是发现如果 Arukas 容器的开放端口里开启了 UDP 端口(给 OpenWRT 路由器上的 ss-tunnel 用于转发解析被封锁的域名),这种情况下 Arukas 的 Endpoint 地址就基本没办法正常访问了。文章中我写的 OpenWRT 下自动获取 Arukas 容器 Shadowsocks 配置的脚本也经常出错,用起来还是不太方便。 刚好之前为了给其他人分享文件,我还写了一 […]

ge.tt文件分享服务CLI及API的问题

关于 ge.tt 最近我一直在寻找支持直链形式的文件分享服务: 支持通过 cURL 或者公开 API 上传文件生成分享地址; 用户可以通过 wget、cURL 等程序直接下载文件; 上传者后续可以更新文件并保持分享地址不变; 国内的普通用户可以正常访问下载分享的文件。 如果使用 Dropbox、Google Drive 应该也可以实现前面几个需求,但这两个网盘的最大问题在于国内难以描述的墙,而且上传下载还是稍微有点复杂。 以前我使用过 DriveHQ 服务,免费用户支持通过 FTP 方式上传文件(付费用户还支持通过 WebDAV 上传),上传到 Web 分享目录的文件可以直接通过 HTTP 下 […]

Arukas樱花Docker容器及Endpoint体验

Arukas 容器介绍 之前我在了解目前主流的容器服务商时除了 IBM Bluemix 还知道了日本 Arukas 容器,不过一直都没有测试的机会,最近 Arukas 难得给我发了注册通过的邮件,最新的政策显示免费测试期会延长到 2017 年 6 月 30 日(未来收费策略待定)。 下面的基本操作都在 Arukas 控制面板: https://app.arukas.io/ Arukas 容器限制 Arukas 容器还处于免费测试阶段,有一些限制需要先说明: 不支持特权容器,无法使用 TUN/TAP 设备(目前的容器服务商基本都不支持); 没有固定公网 IP 地址,容器可能每隔几天甚至几个小时就 […]