Archive

Linux18 writings

7 writings

  1. Nushell - Cross-Platform
    Encapsulating cross-platform functions and isolating OS-specific configs using Nushell.

    OSLinuxShellWindowsNushellmacOS4 min

  1. Set System Env-Vars in UNIX
    How to set true system-wide environment variables on macOS with a simple Launch Agent and shell script, so GUI apps and every shell see them.

    OSTerminalLinuxShellNushellmacOS6 min

  2. IO Multiplexing
    A brief walkthrough of how select, poll, and epoll are implemented.

    OSLinuxNetworkIOFileSocket6 min

  3. Clean Disk Space in Ubuntu
    Fix apt install errors caused by no free space in /var/cache/apt/archives by locating the full partition and using a temporary cache path.

    OSLinuxUbuntu3 min

  4. Network IO Models
    A walkthrough of the five I/O models on Linux, with C and Java implementations.

    OSLinuxNetworkCfdIOFileSocket13 min

  5. Linux File System Architecture Introduction
    Explore Linux file system architecture through VFS, ext4/XFS, disk structures, kernel tables, inodes, and file descriptors.

    Linuxfd4 min

  1. Learn Git Data Structure Design
    A look at Git's data structures — objects, references, and branches. These concepts are the foundation for understanding how Git actually works.

    LinuxGitSVC8 min

  2. Use Docker and SSH to Work Around Old Ubuntu Dev Environment Compatibility Issues
    Ubuntu 18.04's glibc is too old for newer VS Code Remote SSH Server and some Node.js binaries. Run the dev environment in Docker and SSH into it.

    LinuxVSCodeDockerSSH8 min

  3. Installing FastFetch on Ubuntu 18
    Compile and install FastFetch on Ubuntu 18.04 manually, including the steps needed to resolve an outdated CMake version.

    TerminalLinuxUbuntu3 min

  1. VS Code DevContainer
    Use VS Code Dev Containers to develop inside Docker, reusing an existing Dockerfile while keeping dependencies isolated and reproducible.

    LinuxVSCodeDocker3 min

  2. Internet Checksum
    Notes from designing an Internet checksum lab, covering parallel summation and incremental checksum updates.

    LinuxNetworkC6 min

  1. Linux Network Namespace
    Hands-on with Linux network namespaces, from ip link, ARP, and route basics to connecting namespaces with veth pairs and a Linux bridge.

    Linux14 min

  2. Shell Programming
    Shell startup and features, command forms, I/O redirection and pipes, shell variables and quoting, writing and running shell scripts, plus a brief intro to sed and awk.

    LinuxShell5 min

  3. Unix/Linux OS Introduction
    An introduction to the Linux operating system, file operations, and permission management

    OSLinux7 min

  1. Move WSL to Another Drive
    Move an installed WSL distribution to another drive by exporting, unregistering, importing, and restoring the default user.

    OSLinuxWSL2 min

  2. Linux Commands
    Notes on common Linux commands, shortcuts, and plugins, plus recommended terminals and shells.

    Linux7 min

  3. Process & Thread
    An introduction to processes and threads

    OSProcessThreadLinux12 min

  1. Setting Up a C/C++ Debug Environment in VSCode
    How to set up a C/C++ debug environment in VSCode, with a walkthrough of `task.json` and `launch.json` and sample configurations.

    LinuxCWindowsVSCodeCpp6 min