Hi there 👋

Welcome to my blog

记录一次不一样的 Arch Linux 安装

前言 Arch Linux 的安装和其他傻瓜式的安装程序相比,显得那么与众不同,但更让人心动的是它的 AUR 仓库的丰富性。在此之前我曾安装并体验过一段时间,结果错误的更新配置导致系统的崩溃。这当然是我极不愿意忍受的,为此我准备使用 Debian 来作为我台式电脑的系统。但 Debian 的稳健让它的自带驱动不能很好的满足我的新设备,又意外的在 清华源 发现了 Arch Linux GUI 中我垂涎已久的 i3wm。 Arch Linux GUI 没有很好的处理 LVM 分区 的缘故,让我花费了大量的时间进行这次安装。我的处理方法是先使用本地正常分区安装,然后将已安装好的系统移到配置号的 LVM 分区。 我不认为傻瓜式的 GUI 安装需要再次说明,唯一值的一提的是我使用的是 archlinux-gui-i3-2022.05-x86_64.iso, 以往没有使用过 i3wm 导致我花费了很久的是指摸索,最后在 Arch Linux GUI 中找到相关说明这里备份一份 Basic Keybindings to help you get started: ( mod = windows key) Open Terminal Window (Kitty): mod + enter Launch Program Launcher (rofi): mod + d Close Any Window: mod + shift + x...

July 10, 2022 · 2 min · 420 words · ha0zi

Java rotateLeft 和 rotateRight 方法

这篇博客很清楚的解答了我对 Integer.rotateLeft() 方法的理解,在这之前我花费了好几个小时找了多篇博客都没有说到重点。 博客原文 正文 这两个方法实现的思想是循环左移和循环右移。首先来理解这两个概念 循环移位就是把数值变成二进制,然后循环移动的过程;换句话说,循环移位就是将移出的低位放到该数的高位(循环右移)或把移出的高位放到该数的低位(循环左移),左移,和右移动都是对整数进行的操作,在Win32控制台应用程序中,整形占4Byte节32bit。 循环左移的过程: 循环左移的过程可以分为3步: 将x左端的n位先移动到y的低n位中,x>>(32-n); 将x左移n位,其右面低位补0,x< 进行按位或运算(x >> (32 - n) | (x << n)); 循环右移的过程: 循环右移的过程可以分为3步: 1. 将x的左端的低n位先移动到y的高n位中 x<<(32-n) 2. 将x右移n位,其左面高n位补 0x>>n; 3. 进行按位或操作 (x << (32 - n) | (x >> n)); 上代码: public static long rotateLeft(long i, int distance) { return (i << distance) | (i >>> -distance); } public static long rotateRight(long i, int distance) { return (i >>> distance) | (i << -distance); } 实现的代码量可以说已经精简到最少了,有一点要注意的是,循环移位时,参数distance可以接受负数,当 distance 为负数时,这个等式是成立的,rotateLeft(i, distance) = rotateRight(i, -distance)。这个方法中有两点值得借鉴的,第一从整体上讲循环移位的实现方式;第二是 distance 与 -distance 的巧妙运用。...

December 23, 2021 · 3 min · 462 words · ha0zi

计算小技巧

说明 本文准备长期更新,以记录工作、学习中发现的一些关于计算的小技巧。 目前仅掌握了 JAVA,以后的案例随着掌握的语言可能不限于 JAVA 当除数为 10 的 n 次幂; 提防精度丢失,可以考虑使用字符串分割然后拼接的方式获取结果 // 计算 432843 / 10^3 int a = 432843; String aStr = String.valueOf(a); Strint aLen = aStr.subtring(0, 3) String aReg = aStr.subtring(3, 7); return Integer.valueOf(aLen + "." + aReg);

October 23, 2021 · 1 min · 40 words · ha0zi

KVM 使用 virsh 的 console 连接配置

原文地址 现象是连接时卡在这里就不动了 virsh console centos7.0 Connected to domain centos7.0 Escape character is ^] 解决方法(在虚拟机中做如下操作) 修改 /etc/securetty 到最后添加 ttyS0 echo ttyS0 >> /etc/securetty 修改/etc/inittab 到最后添加 S0:12345:respawn:/sbin/agetty/ ttyS0 115200 echo 'S0:12345:respawn:/sbin/agetty/ ttyS0 115200' >> /etc/inittab 修改/etc/grub.conf 或者/etc/grub2.cfg 在系统配置添加console=ttyS0 我的是/etc/grub2.cfg,修改后的配置如下: 之后重启虚拟机就可以

February 14, 2021 · 1 min · 38 words · ha0zi

部分 Windows 利用 KMS 激活

步骤 修改激活服务器地址 添加/修改激活密钥 执行激活操作 PS: 该教程需要使用的 Windows 系统需要是 VL 版本的 KMS 该教程来源于 Window7 贴吧, 目前已经删除, 以前逛的贴吧还是获取过很多的资源的. 修改激活服务器 首先如果是 Windows10 系统的话其实可以考虑去淘宝找一下, 可以购买永久激活版本的,也就是花费 15 元左右并不会很贵, 这种的激活码会把你的电脑硬件数据提交到中国的微软服务器, 如果意外重装了系统并不需要再次激活, 之所以提这个是因为 KMS 系统本身或许是没有问题的, 但并不代表提供这个服务的系统所有者的系统是"干净"的. 以下我所举例的 KMS 系统仅是我所知的, 并不保证它是"干净"的. 点击 Windows 系统的开始菜单输入 cmd 右键单击选择 管理员模式运行, 在黑窗口中输入 slmgr /skms kms.03k.org 输入对应的激活码 请将下方的 [code] 替换成对应系统的激活码 slmgr /ipk [code] Windows Server 系列: Windows Server 2019 Datacenter:WMDGN-G9PQG-XVVXX-R3X43-63DFG Windows Server 2019 Standard:N69G4-B89J2-4G8F4-WWYCC-J464C Windows Server 2016 Datacenter:CB7KF-BWN84-R7R2Y-793K2-8XDDG Windows Server 2016 Standard:WC2BQ-8NRM3-FDDYY-2BFGV-KHKQY Windows Server 2012 R2 Server Standard:D2N9P-3P6X9-2R39C-7RTCD-MDVJX WindowsServer 2012 R2 Datacenter:W3GGN-FT8W3-Y4M27-J84CP-Q3VJ9 Windows Server 2012 Server Standard:XC9B7-NBPP2-83J2H-RHMBY-92BT4 Windows Server 2012 Datacenter:48HP8-DN98B-MYWDG-T2DCC-8W83P- Windows Server 2008 R2 Standard:YC6KT-GKW9T-YTKYR-T4X34-R7VHC Windows Server 2008 R2 企业版:489J6-VHDMP-X63PK-3K798-CPX3Y Windows Server 2008 R2 Datacenter:74YFP-3QFB3-KQT8W-PMXWJ-7M648 Windows Server 2008 Standard:TM24T-X9RMF-VWXK6-X8JC9-BFGM2 不带 Hyper-V 的 Windows Server 2008 Standard:W7VD6-7JFBR-RX26B-YKQ3Y-6FFFJ Windows Server 2008 企业版:YQGMW-MPWTJ-34KDK-48M3W-X4Q6V 不带 Hyper-V 的 Windows Server 2008 企业版:39BXF-X8Q23-P2WWT-38T2F-G3FPG Windows Server 2008 Datacenter:7M67G-PC374-GR742-YH8V4-TCBY3 不带 Hyper-V 的 Windows Server 2008 Datacenter:22XQ2-VRXRG-P8D42-K34TD-G3QQC 个人 Windows 系列: Windows 8....

January 1, 2021 · 1 min · 184 words · ha0zi