diff options
| author | Yuqian Yang <crupest@crupest.life> | 2025-06-10 16:18:17 +0800 | 
|---|---|---|
| committer | Yuqian Yang <crupest@crupest.life> | 2025-06-10 16:18:17 +0800 | 
| commit | 73d711416dc50378321982c88fe01e48ea18e20a (patch) | |
| tree | 8042080497ae08092e3ca45b85e0ec4de730ff47 | |
| parent | e956c5c35ad1ccdc9ae1ec5d4b66e45541985e1a (diff) | |
| download | crupest-73d711416dc50378321982c88fe01e48ea18e20a.tar.gz crupest-73d711416dc50378321982c88fe01e48ea18e20a.tar.bz2 crupest-73d711416dc50378321982c88fe01e48ea18e20a.zip | |
feat(www): add more cheatsheet, especially from old python scripts.
| -rw-r--r-- | www/content/notes/cheat-sheet.md | 164 | 
1 files changed, 162 insertions, 2 deletions
| diff --git a/www/content/notes/cheat-sheet.md b/www/content/notes/cheat-sheet.md index efb3b35..d78759b 100644 --- a/www/content/notes/cheat-sheet.md +++ b/www/content/notes/cheat-sheet.md @@ -4,11 +4,171 @@ date: 2025-04-01T23:09:53+08:00  lastmod: 2025-04-01T23:09:53+08:00  --- +## GRUB +  Update GRUB after `grub` package is updated. Replace `/boot` with your mount  point of the EFI partition in `--efi-directory=/boot`. Replace `GRUB` with your  bootloader id in `--bootloader-id=GRUB`.  ```bash-session -grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB -grub-mkconfig -o /boot/grub/grub.cfg +# grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB +# grub-mkconfig -o /boot/grub/grub.cfg +``` + +## (Private) My Service Infrastructure Management + +All commands should be run at the project root path. + +### Rebuild Blog + +```bash-session +$ docker exec -it blog /scripts/update.bash +``` + +### Add Git Server User / Set Password + +```bash-session +$ docker run -it --rm -v "./data/git/user-info:/user-info" httpd htpasswd /user-info [username] +``` + +### Certbot + +A complete command is `[prefix] [docker (based on challenge kind)] [command] [challenge] [domains] [test] [misc]` + +| part | for | segment | +| --- | --- | --- | +| prefix | * | `docker run -it --rm --name certbot -v "./data/certbot/certs:/etc/letsencrypt" -v "./data/certbot/data:/var/lib/letsencrypt"` | +| docker | challenge standalone | `-p "0.0.0.0:80:80"` | +| docker | challenge nginx | `-v "./data/certbot/webroot:/var/www/certbot"` | +| command | create/expand/shrink | `certonly` | +| command | renew | `renew` | +| challenge | standalone | `--standalone` | +| challenge | nginx | `--webroot -w /var/www/certbot` | +| domains | * | `[-d [domain]]...` | +| test | * | `--test-cert --dry-run` | +| misc | agree tos | `--agree-tos` | +| misc | cert name | `--cert-name [name]` | +| misc | email | `--email [email]` | + +For example, **test** create/expand/shrink with standalone server: + +```bash-session +# docker run -it --rm --name certbot \ +>   -v "./data/certbot/certs:/etc/letsencrypt" -v "./data/certbot/data:/var/lib/letsencrypt"` \ +>   -p "0.0.0.0:80:80" \ +>   certonly \ +>   --standalone \ +>   -d crupest.life -d mail.crupest.life \ +>   --test-cert --dry-run +``` + +## System Setup + +### Debian setup + +#### Setup SSL Certificates and Curl + +```bash-session +# apt-get update +# apt-get install ca-certificates curl +# install -m 0755 -d /etc/apt/keyrings +``` + +### Docker Setup + +#### Uninstall Packages Provided by Stock Repo + +```bash-session +# for pkg in docker.io docker-doc docker-compose \ +>     podman-docker containerd runc; do +>   apt-get remove $pkg; +> done +``` + +#### Install Certs From Docker + +Remember to [setup ssl and curl](#setup-ssl-certificates-and-curl) first. + +```bash-session +# curl -fsSL https://download.docker.com/linux/debian/gpg \ +>   -o /etc/apt/keyrings/docker.asc +# chmod a+r /etc/apt/keyrings/docker.asc +``` + +#### Add Docker Repos + +```bash-session +# echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] \ +>   https://download.docker.com/linux/debian \ +>   $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ +>   tee /etc/apt/sources.list.d/docker.list > /dev/null +``` + +#### Install Docker Packages + +```bash-session +# apt-get update +# apt-get install docker-ce docker-ce-cli containerd.io \ +>   docker-buildx-plugin docker-compose-plugin +``` + +#### Start And Enable Docker + +Remember to log out and log back to let user group change take effects. + +```bash-session +# systemctl enable docker +# systemctl start docker +# groupadd -f docker +# usermod -aG docker $USER +``` + +### Font Config + +```xml +<?xml version="1.0"?> +<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd"> +<fontconfig> + +  <alias> +    <family>sans-serif</family> +    <prefer> +      <family>MiSans</family> +      <family>Noto Color Emoji</family> +    </prefer> +  </alias> + +  <alias> +    <family>serif</family> +    <prefer> +      <family>MiSans</family> +      <family>Noto Color Emoji</family> +    </prefer> +  </alias> + +  <alias> +    <family>Maple Mono</family> +    <prefer> +      <family>Maple Mono NF</family> +      <family>Maple Mono</family> +    </prefer> +  </alias> + +  <alias> +    <family>Noto Sans</family> +    <prefer> +      <family>Noto Sans</family> +      <family>Noto Sans CJK SC</family> +    </prefer> +  </alias> + +  <alias> +    <family>Noto Serif</family> +    <prefer> +      <family>Noto Serif</family> +      <family>Noto Serif CJK SC</family> +    </prefer> +  </alias> + +</fontconfig>  ``` | 
