<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>https://ryan.0412.online/en/experience/sample-project/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/experience/sample-project/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/experience/sample-project/"/></url><url><loc>https://ryan.0412.online/en/learn/getting-started/first-note/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/learn/getting-started/first-note/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/learn/getting-started/first-note/"/></url><url><loc>https://ryan.0412.online/en/learn/getting-started/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/learn/getting-started/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/learn/getting-started/"/></url><url><loc>https://ryan.0412.online/en/experience/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/experience/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/experience/"/></url><url><loc>https://ryan.0412.online/en/learn/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/learn/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/learn/"/></url><url><loc>https://ryan.0412.online/en/blog/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/blog/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/blog/"/></url><url><loc>https://ryan.0412.online/en/links/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/links/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/links/"/></url><url><loc>https://ryan.0412.online/en/tags/kernel-modules/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod></url><url><loc>https://ryan.0412.online/en/tags/kernels/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod></url><url><loc>https://ryan.0412.online/en/tags/linux/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/tags/linux/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/tags/linux/"/></url><url><loc>https://ryan.0412.online/en/tags/os/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/tags/os/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/tags/os/"/></url><url><loc>https://ryan.0412.online/en/tags/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/tags/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/tags/"/></url><url><loc>https://ryan.0412.online/en/blog/custom-linux-kernel-in-vm/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/blog/custom-linux-kernel-in-vm/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/blog/custom-linux-kernel-in-vm/"/></url><url><loc>https://ryan.0412.online/en/tags/vmware/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/tags/vmware/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/tags/vmware/"/></url><url><loc>https://ryan.0412.online/en/tags/cname/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/tags/cname/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/tags/cname/"/></url><url><loc>https://ryan.0412.online/en/tags/dns/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/tags/dns/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/tags/dns/"/></url><url><loc>https://ryan.0412.online/en/blog/dns-cname-notes/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/blog/dns-cname-notes/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/blog/dns-cname-notes/"/></url><url><loc>https://ryan.0412.online/en/tags/tls/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/tags/tls/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/tags/tls/"/></url><url><loc>https://ryan.0412.online/en/tags/websites/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod></url><url><loc>https://ryan.0412.online/en/tags/security/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod></url><url><loc>https://ryan.0412.online/en/tags/ssh/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/tags/ssh/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/tags/ssh/"/></url><url><loc>https://ryan.0412.online/en/blog/linux-ssh-security-notes/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/blog/linux-ssh-security-notes/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/blog/linux-ssh-security-notes/"/></url><url><loc>https://ryan.0412.online/en/tags/systemd/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/tags/systemd/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/tags/systemd/"/></url><url><loc>https://ryan.0412.online/en/tags/ufw/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/tags/ufw/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/tags/ufw/"/></url><url><loc>https://ryan.0412.online/en/tags/blogging/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod></url><url><loc>https://ryan.0412.online/en/tags/hugo/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/tags/hugo/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/tags/hugo/"/></url><url><loc>https://ryan.0412.online/en/tags/oink/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/tags/oink/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/tags/oink/"/></url><url><loc>https://ryan.0412.online/en/blog/oink-site-setup-notes/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/blog/oink-site-setup-notes/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/blog/oink-site-setup-notes/"/></url><url><loc>https://ryan.0412.online/en/tags/catkin/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/tags/catkin/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/tags/catkin/"/></url><url><loc>https://ryan.0412.online/en/tags/ros/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/tags/ros/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/tags/ros/"/></url><url><loc>https://ryan.0412.online/en/blog/ros-workspace-migration/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/blog/ros-workspace-migration/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/blog/ros-workspace-migration/"/></url><url><loc>https://ryan.0412.online/en/tags/workspaces/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod></url><url><loc>https://ryan.0412.online/en/categories/</loc><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/categories/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/categories/"/></url><url><loc>https://ryan.0412.online/en/search/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/search/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/search/"/></url><url><loc>https://ryan.0412.online/en/</loc><lastmod>2026-09-30T21:25:01+08:00</lastmod><xhtml:link rel="alternate" hreflang="zh-CN" href="https://ryan.0412.online/"/><xhtml:link rel="alternate" hreflang="en-US" href="https://ryan.0412.online/en/"/></url></urlset>