跳至主要内容

博文

END

 这个博客仅作为存档,内容也是早期写的了。有不少文章在现在看来有更好的解决方案,但我已经没有精力维护。我只希望这些痕迹能作为我存在的证据,多留存一段时间。 我的博客从 gh pages 开始,经历过 Wordpress,hexo,hugo。当我决定不再维护这个博客时,选择了 Google 运营的博客平台。 这个世界上没有什么是永久的,现在我已感同身受,只希望谷歌在砍掉这个项目的时候至少保留只读副本,让世界知道我曾经来过。  博客评论会自动发到我的Gmail,倒是方便以后处理评论内容了。 
最新博文

Nix-shell使用体验

  首先不建议使用 pacman 安装nix。 安装 Nix setproxy() # 使用官方多用户安装脚本 sh <(curl -L https://nixos.org/nix/install) --daemon 在运行之前需要开启 tun 网卡级别的网络代理,或者在它执行 nix-channel --update nixpkgs 时主动停止(跳过)这个任务。 安装脚本最后会提示 nixchannel 更新失败。 更换国内源 配置 Nix 频道镜像(选择其一) sudo -i nix-channel --remove nixpkgs # 清华源 sudo -i nix-channel --add https://mirrors.tuna.tsinghua.edu.cn/nix-channels/nixpkgs-unstable nixpkgs # 或中科大源 sudo -i nix-channel --add https://mirrors.ustc.edu.cn/nix-channels/nixpkgs-unstable nixpkgs # 更新频道 sudo -i nix-channel --update nixpkgs 配置二进制缓存镜像(选择其一) # 编辑 Nix 配置文件 sudo nano /etc/nix/nix.conf # 添加以下内容(选择其一) # 清华源 substituters = https://mirrors.tuna.tsinghua.edu.cn/nix-channels/store https://cache.nixos.org/ # 或中科大源 substituters = https://mirrors.ustc.edu.cn/nix-channels/store https://cache.nixos.org/ trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= 重启nix-daemon 由于修改了nix配置文件,需要重启 daemon sudo systemctl restart nix-daemon 最后便是根据项目需要配置 shell.nix...

OpenSUSE Tumbleweed Enable Secure Boot With Sbctl and Dracut

  AI Generate Warning The Post use MIT LICENSE. AI generates more than 50% of content prompts:[ "bios: setup mode", "sbctl: generate", "sbctl: find db by plocate", "sbctl: /usr/share/secureboot/keys/db", "sbctl: add path to dracut.config.d", "sbctl: manual sign /boot/efi/EFI/opensuse/shim.efi" ] 在这篇文章中,我将展示如何在 OpenSUSE Tumbleweed 中使用 sbctl 和 dracut 启用 Secure Boot。这是一个高级教程,旨在帮助你确保系统的启动过程被完全签名和验证,从而增加安全性。 准备工作 在开始之前,请确保你已经以管理员身份登录,并且你的系统支持 Secure Boot。 1. 设置 BIOS 为 Setup Mode 首先,你需要进入 BIOS 并将其设置为 Setup Mode 。这允许你在 BIOS 中加载和使用自定义的安全引导密钥。 步骤: 重新启动系统并进入 BIOS 设置(通常通过按 F2 , F10 或 Del 键)。 找到 Secure Boot 选项,并将其设置为 Setup Mode 。 保存设置并退出。 2. 使用 Sbctl 生成安全引导密钥 sbctl 是一个用于管理安全引导密钥的工具。我们将使用它来生成密钥并将其安装到系统中。 安装 Sbctl 在终端中运行以下命令来安装 sbctl : sudo zypper install sbctl 生成并安装密钥 生成新的安全引导密钥: sudo sbctl create-keys 这将生成 PK, KEK 和 DB 密钥,它们可能被存储在 /var/lib/sbctl/keys/ 目录中,你可以使用 plocate 工具查找 db.key 文件尝试找到实际路径。 安装...

在严格限制的网络环境中自建docker仓库及代理dockerhub

  实现 Docker 镜像代理的工具有很多,但相对通用的却不多。本文将介绍如何使用 Docker Compose 快速搭建一个镜像代理,此方法也适用于其他软件源的代理。 如果你仅需要对单台机器设置docker网络代理,请查看这篇文章 原始链接 永久链接 所需软件 为了快速搭建环境,我们将使用 Docker Compose。对于 Docker Compose 的安装,这个先有鸡还是先有蛋的问题,还是交给魔法解决吧。以下是配置文件 docker-compose.yml : services: nexus: image: sonatype/nexus3:latest user: 0:0 # 仅因为该 yml 文件放在 /root 目录下,Docker 容器用户无权限,如放在其他目录且注重安全可删除此行 container_name: nexus3 restart: always ports: - 1024:8081 - 8001:8001 volumes: - ./nexus-data:/nexus-data 建议使用 Nginx 进行反向代理,并设置好单个请求文件的最大限制。 本文不涉及反向代理配置。 Nginx配置文件示例 启动并配置 启动 使用以下命令启动服务: docker compose up 启动后,使用以下命令获取管理员密码: docker exec -it nexus3 /bin/bash cat /nexus-data/admin.password 获取到的字符串即为 admin 用户的密码。首次登录时会要求修改密码。 在设置过程中,会询问是否允许匿名访问。如果只需要 Docker 仓库,建议设置为不允许,否则可以允许。但最终使用 Docker 仓库仍需执行 docker login 。 配置 配置 HTTP 代理 首先配置 HTTP 代理,访问 [server-ip]:1024/#admin/system/http ,在 Proxy Settings 中填写正确的 HTTP 代理。 配置仓库 删除无用的镜像仓库。 点击 “Create repository”,选择 “docker (proxy)”。 配置如...

Google Search Console 提交 Sitemap 的离奇错误

  Google Search Console 实在是太不人性化了。出现错误就是不说错误原因。 总结 如果你认为已经做了很多尝试,不会有其他遗漏的了.请直接将 https://20220228.xyz/sitemap.xml 修改为类似下面的结构 https://20220228.xyz//sitemap.xml/ 否则请往下看。 验证 sitemap 存在 curl https://20220228.xyz/sitemap.xml -I 验证 robots.txt 存在 及允许 谷歌机器人抓取 curl https://20220228.xyz/robots.txt 我的配置文件如下 # 允许Google和Bing的机器人抓取 User-agent: Googlebot Allow: / User-agent: Bingbot Allow: / # 拒绝其他所有机器人抓取 User-agent: * Disallow: / # 明确拒绝一些中国的机器人抓取 User-agent: Baiduspider Disallow: / User-agent: Sogou Disallow: / User-agent: 360Spider Disallow: / User-agent: YisouSpider Disallow: / 需要注意的是,如果想要更彻底地拒绝抓取,建议使用 CDN 的防火墙功能,因为 robots.txt 仅仅是一个建议标准。