如何優雅地批次安裝 Nerd font 字型

fonts repo 接觸 wsl/ubuntu 的這幾年,經常會需要安裝 zsh 以及字型,因此誕生了 cheat sheet,久而久之連下載->解壓縮->安裝這個過程,都懶了。 於是寫了一個批次下載並安裝最新版本的 Nerd Fond 字型的 shell script,讓 wsl 可以安裝 windows 的字型,linux 可以安裝 linux 字型。 #!/bin/bash declare target="linux" declare repo="ryanoasis/nerd-fonts" declare -a fonts=( BitstreamVeraSansMono CodeNewRoman DroidSansMono FiraCode FiraMono Go-Mono Hack Hermit JetBrainsMono Meslo Noto Overpass ProggyClean RobotoMono SourceCodePro SpaceMono Ubuntu UbuntuMono ) ARGS=`getopt -o p --long windows -- "$@"` if [ $? -ne 0 ]; then echo "getopt failed: " $ARGS exit 1 fi eval set -- "${ARGS}" while true do case "$1" in -p|--windows) target=windows shift ;; --) shift break ;; esac done get_latest_release() { echo $(curl --silent "https://api....

2023-05-03 · 2 min · 310 words

WSL2 中使用 systemd 管理 podman 的 container

原本使用 wsl-distrod 來作為 wsl 中 systemd 的實現方式,後來 microsoft 宣布 wsl 支持 systemd 後,distrod 等等 repo 就沒有在更新了呢,是巧合嗎?我不這麼認為。 這篇簡略紀錄 wsl2 中啟用 systemd 作為 process 管理工具以及配合紅帽推出的 podman 來取代(斷捨離)docker desktop。 環境 wsl2 + ubuntu 22.04 ❯ neofetch .-/+oossssoo+/-. raiven@raiven `:+ssssssssssssssssss+:` ------------- -+ssssssssssssssssssyyssss+- OS: Ubuntu 22.04.1 LTS on Windows 10 x86_64 .ossssssssssssssssssdMMMNysssso. Kernel: 5.10.43.3-microsoft-standard-WSL2 /ssssssssssshdmmNNmmyNMMMMhssssss/ Uptime: 3 hours, 10 mins +ssssssssshmydMMMMMMMNddddyssssssss+ Packages: 2005 (dpkg), 4 (snap) /sssssssshNMMMyhhyyyyhmNMMMNhssssssss/ Shell: zsh 5.8.1 .ssssssssdMMMNhsssssssssshNMMMdssssssss. Theme: Adwaita [GTK3] +sssshhhyNMMNyssssssssssssyNMMMysssssss+ Icons: Adwaita [GTK3] ossyNMMMNyMMhsssssssssssssshmmmhssssssso Terminal: Windows Terminal ossyNMMMNyMMhsssssssssssssshmmmhssssssso CPU: AMD Ryzen 9 5900X (24) @ 3....

2023-02-13 · 3 min · 507 words

解決 VM 關機時等待容器關閉

[ *] A stop job is running for libcontainer container xxxxxxxx (10s / 1m30s)_ 過去 kubernetes 還跟 docker-shim 手牽手時,在關閉 k8s node vm 時常常出現等待 docker-shim 關閉,直到一分三十秒被 time out 才正確關機。若是開發機就當作去尿尿的時間就好,但若是重要的環境停機備份,或是斷電時靠 UPS 提供電源等待系統關機,那浪費時間就不好了。 這次在 home lab 中採取省電措施,不用 1 master + 1 node 的組合,直接使用 k3s 作為家用 kubernetes 的實驗環境。但依然在關機時會需要等待 containerd-shim 等等被 time out kill 才會完成關機。 若是沒有做特別的設定,或是沒有過分的 stateful pod,找到了 k3s issue #2400 中的解決方法 Stopping K3s To allow high availability during upgrades, the K3s containers continue running when the K3s service is stopped....

2023-01-11 · 1 min · 134 words

在 AWS 上使用 EC2 建立 FRP 玩玩內網穿透

前言 TL;DR 2022 年上旬熱衷於軟路由,在 Raspberry Pi 4b 上裝了 openWRT 來玩,使用 USB 網卡作為 LAN NIC,雖然使用上完全沒有問題,但透過 USB 始終有個芥蒂,「就不能多個 pci-e 來接網卡嗎」,於是衝動順勢買了 Mikrotik RB5009UG+S+IN。 RB5009G 為 arm64(ARMv8),系統為 RouterOS v7,透過 ZeroTier 插件可以實現內網穿透以及 VPN,一直以來可在外連回家裡做事,連 Jellyfin 使用起來都很順。 事出必有因,ZeroTier 的服務器在未知的地方,VPN 的設定也是在網頁上設定,即便不需要太過擔心,但若是 ZeroTier 被攻擊,那自己的內網也危險了。後來又遇到一次,在某處透過 Windows rdp 連回家開 VScode 做事,但敲鍵盤會有一到兩秒的延遲,加劇了需要替換掉 ZeroTier 的想法。 frp 是一個由 golang 寫出來的 reverse proxy…,其他的到 github 看比較清楚 XD。 這篇文章主要是透過 frp 建立內網穿透,雖然大部分都在建立 AWS EC2 instance,frp 的建立實在是非常簡單,VPN (maybe WireGuard?)的實現會另外再寫一篇。 事前準備 一個 AWS 帳號 一台 linux 主機作為 frp client 建立 Amazon EC2 建立執行個體 建立好帳號後,進入 AWS console,點擊 EC2。 點擊啟動執行個體 取名為 frp-tunnel 選用自己習慣的 linux distro,這邊我習慣使用 ubuntu,故選 ubuntu 22....

2022-11-19 · 3 min · 457 words

zsh & oh-my-zsh & tmux install cheat sheet on ubuntu 22.04

oh my zsh & power lever 10k install deps sudo apt install git curl -y install zsh sudo apt install zsh -y check is installed cat /etc/shells | grep zsh # raiven@k3s:~$ cat /etc/shells | grep zsh # /bin/zsh # /usr/bin/zsh install oh-my-zsh sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" install powerlevel10k git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k install fonts: wsl: bash -c "$(curl -fsSL https://raw.githubusercontent.com/omegaatt36/dotfiles/main/install_fonts.sh)" --windows linux: bash -c "$(curl -fsSL https://raw.githubusercontent.com/omegaatt36/dotfiles/main/install_fonts.sh)" change login shell(must logout and login again)...

2022-10-30 · 1 min · 210 words

proxmox ve shrink vm disk size

由於 zpool 吃超過 80%,故將其中一個 VM(k8s-worker) 的硬碟縮小(200GB=>100GB) pve: 7.2.7 zfs: zfs-2.1.5-pve1 zfs-kmod-2.1.5-pve1 確認 vm disk 剩餘空間 $ df -h Filesystem Size Used Avail Use% Mounted on /dev/vda1 197G 14G 178G 7% / vm 關機 下載 gparded iso 到 pve vm 從 gparded iso 開機並縮減 disk 大小 pve server 針對 vm 的 hard disk 調整占用大小 switch(allocate storage type) case LV: lvreduce -L 5G /dev/pve/disk-name (縮小到只剩 5G) or lvreduce -L -5G /dev/pve/disk-name (縮小 5G) case qcow2: qemu-img resize --shrink <vmfile....

2022-09-04 · 1 min · 137 words

CentOS 7 kubernetes + containerd + calico basic installation tutorial

前言 鑒於最近接到 1 CentOS master + 2 Gentoo node k8s cluster 建置雜事,被自己不熟系統雷到,做個筆記紀錄一下,未來敲敲指令就可以了 .. root@master .PLTJ. ----------- <><><><> OS: CentOS Linux 7 (Core) x86_64 KKSSV' 4KKK LJ KKKL.'VSSKK Host: KVM/QEMU (Standard PC (i440FX + PIIX, 1996) pc-i440fx-6.1) KKV' 4KKKKK LJ KKKKAL 'VKK Kernel: 5.4.180-1.el7.elrepo.x86_64 V' ' 'VKKKK LJ KKKKV' ' 'V Uptime: 2 mins .4MA.' 'VKK LJ KKV' '.4Mb. Packages: 359 (rpm) . KKKKKA.' 'V LJ V' '.4KKKKK . Shell: bash 4....

2022-02-20 · 4 min · 742 words

CentOS 7 upgrade kernel

查看目前 kernel 版本 > uname -a Linux R350-1 3.10.0-1160.53.1.el7.x86_64 #1 SMP Fri Jan 14 13:59:45 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux 添加 ELRepo 公鑰 rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org 安裝 ELRepo yum 來源 rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm 查看可用的 kernel yum --disablerepo="*" --enablerepo="elrepo-kernel" list available 安裝最新的 kernel,挑一個安裝,這邊選擇 kernel-lt kernel-lt 為長期支援版 kernel-mt 為 linus 個人維護版 yum --enablerepo=elrepo-kernel install kernel-lt 查看目前已安裝的 kernel sudo awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg 0 : CentOS Linux (5....

2022-02-20 · 1 min · 105 words

改善 Proxmox VE/Debian 始終跑在最高頻率

這幾天把便宜撿到的 Threadripper 2950X 平台也上 Proxmox VE 玩玩了,裝完系統後才發現自己太習慣於 windows 下的電源管理,一直都沒發現 linux 下 CPU 頻率都是拉滿的狀態,找了debian 下進行電源管理的電源計畫設定教學達到降溫省電,順便做做紀錄。 此篇文章的硬體基於 root@raiven:~# neofetch _,met$$$$$gg. root@raiven ,g$$$$$$$$$$$$$$$P. ----------- ,g$$P" """Y$$.". OS: Debian GNU/Linux 10 (buster) x86_64 ,$$P' `$$$. Host: HP Z2 SFF G4 Workstation ',$$P ,ggs. `$$b: Kernel: 5.4.106-1-pve `d$$' ,$P"' . $$$ Uptime: 276 days, 9 hours, 51 mins $$P d$' , $$P Packages: 719 (dpkg) $$: $$. - ,d$$' Shell: bash 5.0.3 $$; Y$b._ _,d$P' Terminal: /dev/pts/1 Y$$....

2022-01-09 · 2 min · 311 words

VScode SFTP 快速同步文件到 Server

當 Server 環境使用白名單搭配 Reverce-Proxy 時,或是 dev、test 環境不供外部使用時,或許會將部分 code 存在只能靠內網連線的主機上,並透過 OpenSSH 供內部遠端操作。 而 PHP 快速部屬的便捷在於替換單一檔案不須重啟 Server (前提是並非把檔案載進 Memory 或轉化守護進程),此時可以依靠 FTP 上傳單一檔案即好。但每次改個 code 還要想辦法上傳程式碼實在是太浪費時間了,如標題所述,如何快速同步 code 到 Server 上呢。 vscode-sftp 是一個在 VScode 中非常方便的擴充套件,上傳/下載/同步、單一/多伺服器、ftp/sftp,僅需設置一份或多份的設定檔便能(偷懶不切視窗)上傳檔案到 Server。然而正是環境 (production) 還是走正常 CI/CD 比較好。 安裝 首先在 VScode 中的市集,或是快捷鍵 ctrl+shift+P (或 F1) 打開指令窗口後輸入 extension:install。並搜尋 SFTP,認名作者 liximomo 點一下玩一年,上傳不花一分錢(支持者可以拉到下面點選 donate)。 設定上傳環境/參數 接著同樣打開指令窗口並輸入 SFTP: Config 注意由於是 JSON 格式,不能註解 主要配置好host, port, username, privateKeyPath, remotePath, ignore这参数即可: name : 檔案暱稱 host : server IP/URL port : 若 server 建置好 ssh 環境,可將 port 端口改為 22 username : 在 server 中的使用者名稱 remotePath : 欲上傳的目錄位置 privateKeyPath : 私鑰 password : 若有設私鑰則可有(null)可無 uploadOnSave : 自動上傳,個人是沒有開啟(經常性按 ctrl + S) ignore : { "name": "my_work_space", "host": "192....

2020-01-20 · 1 min · 146 words