RSSAmplifier

Blog

Anduin

Anduin's Tech Blog covers software development and optimization, system and network configuration, data management and analysis, cutting-edge technology discussions, development tools, and best practices.

RSS feed ↗50 posts

Latest posts

三级等保:一座所有人都没有恶意,却共同搭起来的合规戏台

The Chinese Level 3 Security Protection system, often criticized as a bureaucratic hurdle, reveals a profound paradox when examined through the lens of organizational maturity. Initially perceived by tech-savvy engineers as an absurd checklist of hardware purchases—firewalls, bastion hosts, and audit boxes—rather than genuine security engineering, this framework appears disconnected from modern…

Setup DGX Spark with Qwen 3.6 27B Dense

Deploying large language models on edge devices often feels like a high-stakes game of memory Tetris, where every megabyte counts and stability hangs by a thread. The NVIDIA DGX Spark, with its unified 128GB memory architecture, presents a unique playground for running dense models like Qwen 3.6 27B in full BF16 precision without quantization. This approach challenges the common assumption that…

Ultimate Fix: Rudder (Yaw) Axis Conflict for X-Plane 12 on Linux

Controlling a high-fidelity simulator like X-Plane 12 on Linux with an Xbox controller often feels like trying to drive a race car with a broken steering wheel, especially when the rudder axis stubbornly locks in place. The core of this frustration lies in a fundamental mismatch: modern triggers report as two independent absolute axes, while flight simulators demand a single, centered axis that…

Highly Reliable Data Disaster Recovery Architecture: Asynchronous Snapshot Backup Solution for Heterogeneous File Systems

In high-performance computing environments, the relentless pursuit of raw I/O throughput often forces a compromise on data safety, creating a paradox where the most efficient file systems lack the inherent ability to recover from logical errors. Traditional backup strategies frequently fail to bridge this gap; tools like rsync risk propagating accidental deletions to the backup target if…

Rescuing a Stuck Nextcloud Sync: Debugging Flatpak Clients and Server-Side Ghost Files

A stuck Nextcloud sync isn’t always a client problem—it’s often a silent war between the database and the filesystem, where a phantom file haunts the sync process like a digital ghost. When a Flatpak client endlessly retries downloading a file that no longer exists, the real culprit lies buried in the server’s database, where a deleted file from a Group Folder still holds a tenuous, broken link in…

Anduin的CQE定理:为什么大型组织的采购永远在买电子垃圾

What happens when compliance becomes the only law in corporate procurement? A deep dive into the absurd machinery behind large-scale IT purchases reveals a system that systematically rewards mediocrity, punishes innovation, and turns technology into a theater of bureaucratic theater. At the heart of this dysfunction lies the CQE Theorem: in any large organization, you can have two out of…

Run Human Fall flat on AnduinOS

What if your dream of playing Human: Fall Flat on Linux turns into a nightmare of 2 FPS and instant crashes—despite owning a top-tier gaming rig? This deep dive reveals why the game’s native Linux version, long abandoned since 2018, is a ticking time bomb of hardware conflicts and memory exploits, silently sabotaging your experience through ancient code that clashes with modern CPUs and security…

告别丑陋的 Tag 后缀:使用 Docker Buildx 构建真正的多架构镜像

Imagine a world where your Docker image seamlessly runs on both x86 and ARM devices—no more messy tag suffixes, no more fragmented builds. With Docker Buildx and QEMU user-mode emulation, this isn’t just possible; it’s effortless. The magic lies in how a standard x86 machine can compile ARM-native code by tricking the kernel into running foreign binaries through real-time instruction translation.…

给Caddy上Cloudflare以清洗流量

The system employs a modular Caddy configuration strategy to securely route traffic through Cloudflare with mutual TLS authentication and strict proxy trust. Caddy is configured to only accept requests from Cloudflare by validating mTLS certificates using Cloudflare's public CA, while also presenting its own certificate signed by Cloudflare to ensure authenticity. The configuration is built…

AI 时代的普通人究竟应该学习什么?

In an era where AI can generate code, text, and solutions in seconds, the fundamental question isn’t whether to learn—but what to learn, and why. The old model of learning: master basics, then struggle through mid-level problems, hoping for mastery at the end, no longer works. It’s like building a city without a master plan—patches fix symptoms, but the system collapses under its own complexity.…

Use yubikey to protect SSH key.

What if your most sensitive digital access could be protected by a small, untraceable hardware token that never lets your private key leave its secure enclave? This guide reveals how a YubiKey transforms SSH authentication from a vulnerable convenience into a fortress of security—by generating a resident Ed25519 key directly on the device, pin-protected and impossible to extract. No more worrying…

让模糊的视频变清晰

What if you could breathe new life into grainy, forgotten home videos—transforming decades-old 480p footage into crisp, detailed 4K clarity with a single command? This isn’t science fiction; it’s the power of AI-driven video super-resolution, and this article dives deep into how a simple Bash script turns complex, GPU-intensive image restoration into a seamless, one-click process. At its core lies…

Windows 11: The Last Version of Windows 10

Windows 11 isn’t a new operating system—it’s a rebranded evolution of Windows 10, built on the same 10.0 kernel and shaped by a radical shift in Microsoft’s development philosophy. What began as a promise in 2015 that Windows 10 would be the last version was never about technical limits, but a strategic pivot to “Windows as a Service”—a rolling release model where updates flow continuously, not in…

Bridging Identity and Email Management Synchronizing Authentik Groups with Mailcow Aliases

What happens when your organization’s identity system knows exactly who belongs to which team, but your email server remains in the dark? This article explores the silent gap between modern identity management and email distribution, revealing how Authentik’s rich group structures can be seamlessly mirrored into Mailcow’s email aliases through automated synchronization. It’s not just about…

使用 Clickhouse 来可视化 Caddy 产生的日志

The article details the process of setting up a real-time log analysis system using ClickHouse to process Caddy server logs, enabling comprehensive monitoring and visualization of web traffic. By parsing Caddy's JSON logs and ingesting them into ClickHouse via a custom script, the author creates a high-performance database for querying and analyzing traffic patterns. A variety of SQL queries are…

我家里搭建了 Authentik,我非常后悔我搭晚了。

Integrating applications with OpenID Connect (OIDC) via Authentik enables seamless single sign-on, allowing users to access multiple services without repeated registration, enhancing user experience and reducing friction. Each application has specific requirements for OIDC configuration, including client ID and secret setup, attribute mapping, group-based role assignment, and handling user…

Set up a local docker registry mirror

This guide outlines a comprehensive process for setting up a self-hosted Docker registry to mirror public Docker images locally, ensuring reliable access and improved performance. It details the creation of four essential Python scripts: is_latest.py to check if a Docker image is the latest version, check.py to verify image integrity by inspecting the registry, delete.py to remove outdated or…

复习数据结构 - 撸个哈希树

What if you could build a data structure that guarantees constant-time insertion, lookup, and deletion—no libraries, no built-in hash tables, just pure logic and bit manipulation? This post dives into the elegant yet underappreciated idea of a binary hash trie, a structure that uses the bits of a hash value to navigate a tree-like hierarchy, achieving O(1) performance in theory by treating each…

Run docker container with GPU in Docker swarm

Running GPU-accelerated containers in Docker Swarm has long been a challenge, as native support for GPU devices in swarm mode is restricted—deploying services with `devices` in `resources.reservations` triggers validation errors. Yet, a clever workaround unlocks this capability by leveraging Docker’s overlay networks and nested containerization. The solution hinges on creating an attachable…

使用 NPU 来运行 DeepSeek R1 32B

Running a 32B language model like DeepSeek R1 on a consumer laptop with an Intel Lunar Lake CPU might seem like a fantasy—until you unlock the hidden potential of its built-in NPU. This journey begins with the stark reality of CPU-only inference: sluggish performance, high memory usage, and a frustratingly slow experience that barely justifies the effort. But what if the real bottleneck isn’t the…

Some quick Docker tips

Build and run Docker containers with commands for managing images, containers, and volumes, including pruning unused data, sorting by resource usage, and monitoring disk space. Use copy and exec commands to transfer files and interact with running containers, restore databases from SQL backups, and browse image content. Configure timezones and locales in Dockerfiles for proper application…

AnduinOS 究竟是怎么诞生的……

What if a Linux distribution born from a single afternoon’s tinkering could spark global curiosity, challenge assumptions about open source, and reveal deeper truths about motivation, ownership, and the nature of software itself? AnduinOS isn’t a revolution—it’s a quiet experiment in personal utility, a customized Ubuntu with a Windows-like aesthetic, built not to replace anything, but to feel…

How to share a big file via BitTorrent

Sharing massive files doesn’t have to mean slow transfers or server strain—BitTorrent turns distribution into a collaborative, self-sustaining network where every downloader becomes a potential uploader. This guide walks through the mechanics of turning a single large file into a shared torrent, but it’s not just about commands and configuration. It’s about reimagining how data flows in a world…

Run Windows on Linux for best experience

Imagine running Windows on Linux with near-native performance, seamless GPU passthrough, and enterprise-grade security—all from a single, open-source tool. This guide dives deep into transforming your Linux system into a powerful virtualization hub using Virt Manager and KVM, unlocking the ability to run Windows VMs with full hardware access, secure boot, and simulated TPM for advanced security…

How to use apt

apt is a powerful command-line package manager for Debian-based systems like Ubuntu, used for installing, updating, removing, and managing software packages. It handles dependencies automatically, ensuring that required libraries and components are installed alongside the main package. Key commands include apt install for installing packages, apt remove to uninstall them, apt update to refresh…

应用商店、包管理……每天都会使用的东西有什么开发难度?

The article explores the complexities and trade-offs in software package management across different systems and philosophies. Traditional package managers like apt, dnf, pip, npm, and maven face challenges with dependency conflicts, version incompatibilities, and inconsistent builds due to environmental differences. Solutions range from monolithic bundling—where all dependencies are packaged…

在 2024 年学习汇编还有必要吗

The relationship between applications and operating systems is best understood through the concept of ABI—Application Binary Interface—which serves as the foundational abstraction defining how software interacts with hardware and other software components. Rather than a strict chronological order, both applications and operating systems emerge from the need to standardize interactions at the…

开放性问题 Windows 和 Linux 哪个更加安全?

What makes an operating system truly secure isn’t a simple comparison between Windows and Linux—it’s a question of context, intent, and threat model. While Windows builds a tightly integrated, hardware-backed security chain from TPM and Secure Boot to Virtualization-Based Security and automatic defenses like Windows Defender, it relies heavily on defaults that shield the average user from…

在2024年发布一个Linux发行版还难吗

In 2024, creating a Linux distribution feels both absurdly easy and profoundly difficult—like building a house with LEGO bricks while knowing the foundation must withstand a hurricane. The tools are there: from Arch’s manual install guide to automated factory-like systems like linux-factory, anyone can spin up a working OS in hours. But beneath the surface lies a brutal truth: the real challenge…

Using SwinIR for Image Super-Resolution Reconstruction

What if a single image could be transformed from blurry and pixelated into a sharp, lifelike masterpiece with just a few lines of code? SwinIR, a cutting-edge image super-resolution model built on the Swin Transformer architecture, makes this possible by intelligently reconstructing high-resolution details from low-quality inputs. This article walks through the practical journey of deploying…

Run Linux Desktop experience in Docker container

This tutorial demonstrates how to run a Linux desktop environment within a Docker container, offering a lightweight method to explore desktop Linux without installing it locally. It details key packages and their dependencies, such as gdm3 for display management, gnome-shell as the core desktop shell, and various GNOME extensions like ubuntu-dock, appindicator, and desktop-icons-ng for enhanced…

How to use C# to manage InfluxDB data

Imagine a world where every sensor reading, system log, and application metric flows seamlessly into a database built for speed and scale—this is the power of InfluxDB, and with C#, you’re not just connecting to it, you’re commanding it. This piece dives into the elegant fusion of C# and InfluxDB, showing how to write, query, and manage time-series data with precision and grace. From spinning up a…

How to setup CUDA environment for Docker on Ubuntu?

Setting up a CUDA-enabled Docker environment on Ubuntu isn’t just about following steps—it’s about unlocking the power of GPU-accelerated computing in a portable, reproducible way. This guide walks through the essential configuration: from verifying your GPU is detected and installing the correct drivers, to integrating Docker with NVIDIA’s container toolkit and testing everything with real…

第三届Anduin编程大赛

Imagine building a file system from scratch—not just a simple abstraction, but a robust, production-ready layer that can sit beneath your entire operating system, managing data across SATA, NVMe, USB, and SD devices with real performance and resilience. This is the challenge of the Third Anduin Programming Contest, where participants are tasked with creating a complete filesystem that supports not…

Web 应用开发检查单

The document outlines a comprehensive set of best practices across the entire software lifecycle, from infrastructure and security to development, deployment, compliance, and user experience. It emphasizes securing the system through robust network configurations, strong authentication, encryption, and adherence to security protocols like TLS and DNSSEC. Infrastructure should be resilient with…

Ubuntu 22.04 Network Diagnostic Handbook

The guide outlines a systematic approach to diagnosing and managing network traffic issues on Linux systems. It begins with verifying network connectivity and configuration using tools like ip, netstat, and ss to check interface status, routing, and active connections. For monitoring overall traffic, tools such as nload and iftop provide real-time graphs and summaries of bandwidth usage on…

Mirror YouTube channel to watch videos with best experience

What if you could watch YouTube videos without ads, in the highest quality, even when the video is gone or you’re offline? This article explores a powerful yet surprisingly accessible way to mirror YouTube content to your own server, transforming how you consume online video. By setting up an Ubuntu server, installing tools like youtube-dl, and automating downloads with scripts, you can build a…

Setup a Ubuntu apt mirror server

Setting up a local Ubuntu apt mirror isn’t just about saving bandwidth—it’s a strategic move toward building a more resilient, faster, and self-sufficient infrastructure, especially in environments with multiple servers or limited internet connectivity. By replicating official or regional mirrors locally, you eliminate the bottleneck of repeated downloads from distant sources, dramatically…

基于 Docker Swarm Mode 建设你家里的数据中心!

Docker Swarm enables clustering and orchestration of Docker containers across multiple hosts, with key concepts including Stack, Service, Task, Node, Volume, and Network. A Stack is a collection of services defined via a docker-compose.yml file, where each Service manages a group of Tasks—individual containers that execute specific functions. Nodes represent physical or virtual machines in the…

C# start a process and get output. (Fix process won't quit issue)

Ever wondered why a seemingly simple C# process call hangs indefinitely when dealing with large command outputs? The real culprit isn’t the process itself, but a silent buffer overflow in the standard output stream—once it hits the 4KB limit, the process freezes, waiting for someone to read the data, and no one does. This subtle but critical issue explains why Git commands can stall forever, even…

为笔记本安装 Chrome OS

What if your aging laptop could feel brand new again—not just faster, but smarter, more secure, and capable of running Android apps, Linux tools, and sleek animations all in one seamless experience? This guide explores how to breathe new life into old hardware by installing Chrome OS not from Google’s official Flex version, but through a community-driven, deeply customized approach using Brunch.…

挑选合适尺寸的显示器

What if your screen’s resolution and size were perfectly tuned not just for clarity, but for how your eyes actually perceive text and interface elements? This article dives into the hidden math behind display design—PPI, scaling, and why your 27-inch 4K monitor might be subtly misaligned with your expectations. It reveals that the ideal screen isn’t just about resolution or size, but about how…

Aiursoft 事故调查、分析与总结

The incident began when a backup script was executed directly in production without prior testing, leading to a critical failure. The script created a snapshot on the primary dataset, sent it to a backup pool using zfs send and receive, and then destroyed the original snapshot. However, the zfs receive command preserved the original mountpoint of the dataset, causing both the primary and backup…

在服务器中部署单独的Docker应用

This guide outlines the process of deploying Docker containers within a virtual machine (VM), emphasizing best practices for managing containers, ensuring data persistence, handling port mapping, enabling auto-restart, and upgrading containers. It details the use of Docker commands for running, stopping, and removing containers, with a focus on preserving data through volume mounts such as mapping…

快速配置 - 无痛让你的所有 Git Commit 都被 GPG 数字签名

What if every commit you made could be proven, beyond doubt, to be truly yours—no impersonation, no tampering, no digital forgery? This isn’t a hypothetical; it’s a reality enabled by GPG signing, a powerful yet often overlooked layer of trust in the world of open-source collaboration. The article dives into how a simple, automated setup can turn your Git commits into cryptographically verifiable…

Make Gnome looks like Windows 11

What if your Linux desktop could look and feel like Windows 11—without ever leaving the open, customizable world of GNOME? This isn’t a fantasy; it’s a playful yet profound exploration of how much identity a desktop environment can truly hold. By blending themes, icons, extensions, and subtle visual tricks, a familiar Ubuntu setup transforms into a sleek, modern interface that mirrors Windows 11’s…

简明 LLAMA 体验指南

What if you could run a powerful language model like Llama—developed by Meta—on your own machine, not just in the cloud, but in your own hands, with full control over its behavior and output? This guide cuts through the noise to deliver a streamlined, hands-on journey from setup to execution, turning technical complexity into a personal experiment. It walks you through acquiring GPU power,…

Use your own cert to sign your package to identify your code identity.

What if you could truly own your digital identity, not through a corporate gatekeeper, but by creating your own trusted signature? This article dives into the powerful, often overlooked practice of using self-signed certificates to sign code—whether executables or NuGet packages—giving developers full control over their digital footprint. It reveals how a simple certificate, built with a few…

Manually Enable Windows RE in an independent partition

What if your Windows system won’t boot, and you have no way to recover it—no tools, no options, no safety net? Windows RE isn’t just a backup plan; it’s your last line of defense when everything else fails. This deep dive explores how Windows RE works, why it’s essential for both personal and enterprise systems, and how to manually set it up in a dedicated partition—especially when BitLocker or…

Automatically Unlocking LUKS2 Encrypted System Partition Using Clevis and TPM2

What if your encrypted system could unlock itself—securely, silently, and without ever needing a password? This isn’t science fiction; it’s the power of combining LUKS2, Clevis, and TPM2 to create a truly seamless yet robust authentication experience. By leveraging hardware-backed security through the Trusted Platform Module (TPM2), your system’s boot process can be tied to the integrity of your…