Tag: kernel

使用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 也注意 […]

小内存OpenVZ VPS使用UML开启BBR

前言 Bottleneck Bandwidth and RTT(BBR)是 Google 最近提交到 Linux 4.9 版本内核的新 TCP 拥塞控制算法,BBR 相对于 Linux 中已经用了好多年的默认 CUBIC 算法的主要改进是在有一定丢包率的网络链路上充分利用带宽,另外也能有效降低延迟。这对于很多使用美帝 VPS + Shadowsocks 爬墙方案的人来说应该还是比较有用的,目前从一些更新了内核开启 BBR 的 KVM VPS 用户的反馈来看效果也还是不错的。 我目前使用的爬墙服务器是 AlphaRacks 的低配 OpenVZ VPS,内存只有 96 MB,到国内的线路质量倒还 […]

Linux下USB 3.0移动硬盘读写错误问题分析

为了解决 Chromebook 上自带 SSD 空间不足的问题,之前我在淘宝上购入了一个绿帆 F200 USB 3.0 移动硬盘盒,该硬盘盒使用的是 JMicron JMS567 这款使用还比较广泛的 SATA 6.0Gbps to USB 3.0 桥接芯片,准备配上 N 年前的神船笔记本淘汰下来的 2.5 寸硬盘给 Chromebook 使用,这样我就可以在 Chromebook 上安装的 Crouton Ubuntu 系统里无碍的使用各种编译开发环境了。 移动硬盘问题说明 首先我在宏碁 W700 Windows 10 平板上接上此移动硬盘建了一个 NTFS 分区并做各种读写拷贝大文件之类的 […]

修改Remix OS kernel支持Chromebook触控板

继续接着上一篇文章「修改Remix OS适配Chromebook键盘」的修改之后在我的 Dell Chromebook 11 上使用 ext4 U 盘形式的 Remix OS PC 版已经是比较顺利了,那么剩下最大的问题就是触控板问题了,要知道之前我使用 Remix OS 的时候都是必须插着一个 USB 鼠标的。 Chromebook 的触控板由于比较特殊之前很多网友安装的 Ubuntu 系统里经常也用不了,这里我以 Dell Chromebook 11 为例子对 Remix OS PC 版内核模块做一些修改可以实现 Remix OS 下基本的触控功能,对于在 Chromebook 上单独安装 […]

在Koding云平台上编译Chromebook kernel

最近从淘宝收了一台三星的 Series 3 ARM Chromebook,平时当作上网本用起来还是可以的,可以运行一些 Chrome packaged 原生 App,Chrome OS 的运行速度也还凑合,主要电池续航比一般的笔记本要给力多了,这篇博文的编辑及实际 kernel 编译操作我都是在 Chromebook 上完成的。 由于 Chromebook 底层使用的还是 Linux 内核,装了 Crouton 插件之后可以在 Chromebook 里以 chroot 的方式跑另外的 Ubuntu 系统,只不过 Chromebook 自带的内核模块有些缺失,比如我需要的 binfmt_misc […]

NFS和64位inode的问题

本文同步自(最佳显示效果请点击):https://zohead.com/archives/nfs-64bitinode/ 最近在 XFS 文件系统上使用 NFS 时发现一些比较老的 Linux 客户端在挂载时会提示 stale file handle 错误,这似乎是服务器端的 NFS 共享文件夹信息不正确了,比较奇怪为什么新的 Linux 系统又是可以挂载使用的,准备一探究竟。 首先登录到服务器端(也是 Linux 系统,RHEL6 x86_64 服务器),查看 NFS 共享文件夹的状态(NFS 共享路径为 /nfs/share2): 上面的 ls 命令特别增加了 -i 参数用于显示文件的 i […]

NFS读写块大小问题分析

本文同步自(最佳显示效果请点击):https://zohead.com/archives/nfs-rwsize/ Linux NFS 客户端在挂载服务器的 NFS 共享时可以使用 rsize 和 wsize 参数指定 NFS 读写的块大小,但实际使用时发现并不完全凑效,下面简单分析一下。 我先在一台 RHEL6 客户端上挂载另一台 RHEL6 服务器上的 NFS 共享: 从上面可以看到不指定 rsize 和 wsize 参数时,默认的读写块大小都是 256KB(rsize=262144),而且使用的是 TCP 协议(proto=tcp)。 下面使用 UDP 协议挂载 NFS 共享: 从结果可以 […]

强制重启Linux系统的几种方法

实际生产环境中某些情况下 Linux 服务器系统在出现致命错误需要远程进行重启,通过常规的 reboot、init 6 等方法无法正常重启(例如重启时卡在驱动程序里等情况),这时就需要通过下面介绍的几种特殊的方法进行强制重启。 注意 下面这些强制重启 Linux 的方法都是直接跳过 umount 文件系统及 sync 等操作,可能导致数据损坏,不在特殊情况下请勿使用。另外当然这些都是需要 root 超级用户权限的哦。 reboot 命令 直接通过运行 reboot -nf 命令,这样重启时可以指定跳过 init 的处理和 sync 操作,这样可以避免大多数情况下的问题。 magic SysRq […]

构建Lava XOLO X900非官方kernel

本文同步自(最佳显示效果请点击):https://zohead.com/archives/xolo-x900-kernel/ 本文目标为 Lava XOLO X900 这一印度咖喱味手机,同样 Intel Atom Z2460 的芯,移植 kernel 的方法和之前的联想 K800 手机基本一致,具体请移步下面的链接: https://zohead.com/archives/k800-kernel-otg-udisk/ 经过确认 XOLO X900 默认也是 Android 4.0.4 ROM,同样 3.0.8 kernel,当然硬件会有所不同,不过 OTG U盘所需要使用的 usb-stor […]