GRUB で Windows も起動する

この記事を作った動機 単に今までめんどくさくて放置していた、Windows と Linux の デュアルブート環境において、GRUB を利用しているとき、Windows OS の選択肢が出てこないということについて、対応した時にわかったことを記録したいというだけ。 ちなみに今回の作業をするまでは単に BIOS 側で、.efi ファイルを指定することで、Linuxを起動するエントリと、Windowsを起動するエントリを作って、BIOSのブートメニューで選択していた。 なお今回の記事では前提として、GRUB が入っており、以下に示すコマンドはすでに使えることを想定している。 grub-install grub-mkconfig 環境 System Details Report(GNOME settings からのコピペ) Report details Date generated: 2025-08-04 14:45:58 Hardware Information: Hardware Model: Dell Inc. XPS 15 9575 Memory: 16.0 GiB Processor: Intel® Core™ i7-8705G × 8 Graphics: Intel® HD Graphics 630 (KBL GT2) Disk Capacity: (null) Software Information: Firmware Version: 1.20.0 OS Name: Arch Linux OS Build: rolling OS Type: 64-bit GNOME Version: 48 Windowing System: Wayland Kernel Version: Linux 6.15.7-arch1-1 パティーション構成 どんなパーティション構成で、デュアルブートを構成しているかも示す。Windows も Linux もどちら側も UEFI で動作しており、それぞれ個別に起動用の EFI パーティションを持っているという構成である。 ...

August 4, 2025

libvirtd のファイヤウォール設定

この記事を作った動機 libvirtを使った仮想環境で、ファイヤウォールの設定をしないと、仮想マシンがネットにつながらないので、その記録をするだけ。 やり方 仮想マシンとのインタフェースを確認する ip a # ... # 8: virbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc htb state UP group default qlen 1000 # link/ether 52:54:00:2d:fb:f7 brd ff:ff:ff:ff:ff:ff # inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0 # valid_lft forever preferred_lft forever # ... ファイヤウォールを設定する インタフェース名が、virbr0 であることを想定する。 sudo firewall-cmd --permanent --direct --passthrough ipv4 -I FORWARD -i virbr0 -j ACCEPT sudo firewall-cmd --permanent --direct --passthrough ipv4 -I FORWARD -o virbr0 -j ACCEPT # sudo firewall-cmd --permanent --direct --passthrough ipv4 -I FORWARD -i [ネットワークインタフェース名] -j ACCEPT # sudo firewall-cmd --permanent --direct --passthrough ipv4 -I FORWARD -o [ネットワークインタフェース名] -j ACCEPT sudo systemctl restart firewalld 参考にしたサイトとか Firewall blocks internet on bridge in KVM virtual machine - English / Network/Internet - openSUSE Forums https://forums.opensuse.org/t/firewall-blocks-internet-on-bridge-in-kvm-virtual-machine/138737 (2025年8月2日)

August 2, 2025

ネットワークドライブの削除と作成

この記事を作った動機 ネットワークドライブがつながらないとき、再接続しようと思うと、記録がない場合不便すぎたので記録するだけ。 やり方 前提として、以下の項目を置いておく Z: ドライブ 192.168.1.33 SMB サーバの IP datafolder マウントポイント 接続 net use Z: \\192.168.1.33\datafolder /USER:[UserName] [Password] 削除 net use Z: /Delete 参考にしたサイトとか Net use | Microsoft Learn https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-r2-and-2012/gg651155(v=ws.11) (2025年8月2日) Deleting Mapped network drive - Microsoft Q&A https://learn.microsoft.com/en-us/answers/questions/3253887/deleting-mapped-network-drive?forum=windows-all&referrer=answers (2025年8月2日)

August 2, 2025

cron が動かない

この記事を作った動機 cron を使ってみようと思って重い腰を持ち上げてみたら、意図したとおりにうまく動かせずにつまずいたのでその記録をとるだけ。うまくわかった気がしないし、間違いがあるかもしれないが、ご了承ください。 cron の構造 # 分 時 日(一か月単位) 月 日(一週間単位) * * * * * /path/to/script.sh 確認事項 cron はインストールされているか? yay -Qs cron # pacman -Qs cron # local/cronie 1.7.2-1 # Daemon that runs specified programs at scheduled times and related tools エディターを設定したか? デフォルトだと vi が利用されるようになっており、不便なことがあると思うので設定した方がいいかも。 # neovim -> "nvim" に設定 # visual studio code -> "code" に設定 export EDITOR=nvim echo $EDITOR # nvim cron サービスが実行されているか? 確認 systemctl status cronie # systemctl status crond # ● cronie.service - Command Scheduler # Loaded: loaded (/usr/lib/systemd/system/cronie.service; enabled; preset: disabled) # Active: active (running) since Mon 2025-07-28 21:53:50 JST; 1h 7min ago # Invocation: 748b761f9921445f8a759eb430f3507f # Main PID: 354161 (crond) # Tasks: 2 (limit: 629145) # Memory: 1.3M (peak: 4.5M) # CPU: 1.667s # CGroup: /system.slice/cronie.service # ├─354161 /usr/sbin/crond -n # └─355485 /usr/sbin/anacron -s # # 7月 28 22:58:00 hostName CROND[361012]: (username) CMDEND (/path/to/script.sh) # 7月 28 22:58:00 hostName CROND[361012]: pam_unix(crond:session): session closed for user username # 7月 28 22:59:00 hostName crond[361097]: pam_unix(crond:session): session opened for user username(uid=1000) by username(uid=0) # ... 有効化 systemctl enable --now cronie # systemctl enable --now crond 例(crontab -l の内容) 毎分実行 * * * * * /path/to/script.sh 各時間 5 分目に実行 0時 5分に実行 1時 5分に実行 2時 5分に実行 … ...

July 28, 2025

電力プロファイル設定をできるようにする

この記事を作った動機 Arch linux や Gnome をただ導入しただけでは有効になっていないどころか、インストールすらされていない機能を有効にする方法について、一応ノートとして記録を残すだけ。 デーモンのインストール yay -Sy power-profiles-daemon # sudo pacman -S power-profiles-daemon デーモンの有効化 sudo systemctl enable --now power-profiles-daemon 電力管理が有効になった様子 参考にしたサイトとか Re-enable the GNOME Power Profile service - Ask Ubuntu https://askubuntu.com/questions/1526049/re-enable-the-gnome-power-profile-service (2025年7月25日) Arch Linux - power-profiles-daemon 0.30-1 (x86_64) https://archlinux.org/packages/extra/x86_64/power-profiles-daemon/ (2025年7月25日)

July 25, 2025

VPN越しにHTTPやSSH通信だけ通らなかった話とMTU設定

この記事を作った動機 なんか、キャリアネットワークをデザリングを経由して使って、さらにVPN接続を介した通信のうち、HTTPとSSHだけが繋がらないということがあった。 それで対策としてMTUを小さく設定することをしたのでそのことを記録するだけ。 ちなみになぜMTUが大きすぎるとだめなのかわかっていないが、多分大きすぎるサイズのパケットはなんとなくどこかで落とされている気がする。 VPNや多段NAT構成だとルーティングされているうちに、ヘッダが積み重なって、ネットワークのパケットのサイズが大きくなりすぎたりするのかもしれない。 ネットワークの構成 サーバーやLAN内のルータ マンションのNAT キャリアネットワーク スマホ(デザリング) PCとか 状況 A -> キャリアネットワークのときで、直接マンションのNATを超えたとき B -> キャリアネットワークのときで、VPSなどの固定IPを持ったサーバーを経由したとき C -> 光回線などの固定回線で、直接マンションのNATを超えたときと、VPSなどの固定IPを持ったサーバーを経由したときの両方について含まれる 状況別の表 A B C Ping ✅ OK ✅ OK ✅ OK SMB(ファイル共有) ✅ OK 確かめていない ✅ OK DNS ✅ OK ✅ OK ✅ OK SSH ❌ Failed ✅ OK ✅ OK HTTP(HTTPS) ❌ Failed ❌ Failed ✅ OK MTU設定方法(要管理者権限) デフォルトで設定されているMTUのサイズ 1500 今回うまくいったMTUのサイズ 1000 一時的な設定(とりあえずすぐ設定したいとき) ip コマンドを使う sudo ip link set dev [ネットワークアダプタ名] mtu [設定したいMTUサイズ] ip コマンドを使う例 # 例 # ip a # ... # 4: vpn_vpnhome: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 1000 # link/ether 5e:76:29:d3:1b:85 brd ff:ff:ff:ff:ff:ff # inet 192.168.1.203/24 scope global vpn_vpnhome # valid_lft forever preferred_lft forever # sudo ip link set dev vpn_vpnhome mtu 1000 # ip a # ... # 4: vpn_vpnhome: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1000 qdisc fq_codel state UNKNOWN group default qlen 1000 # link/ether 5e:76:29:d3:1b:85 brd ff:ff:ff:ff:ff:ff # inet 192.168.1.203/24 scope global vpn_vpnhome # valid_lft forever preferred_lft forever 永続化設定(networkmanagerを使っているとき) sudo nmcli connection modify [ネットワークアダプタ名] 802-3-ethernet.mtu [設定したいMTUサイズ] # vpn_vpnhome の MTU サイズを 1000 に変更 # sudo nmcli connection modify vpn_vpnhome 802-3-ethernet.mtu 1000 追記 2025年8月1日 なんか何となくブックマークをあさっていたら、TU,MSS の計算と最適化の便利な手段をまとめるというサイトにたどり着いた。それで、さらにリンクをたどって、Visual packet size calculator — Daniil Baturinというところに行くと、こんな記述が目に止まった。 ...

July 21, 2025

Stable Diffusion WebUI が AURにあった 🎨

この記事を作った動機 なんか最近 AUR に Stable Diffusion WebUIが出現していて気軽に試せそうだったのでインストールして使ってみたということがあった。 その過程で記録しておきたいことがあったので、Stable Diffusion WebUI の導入過程とともに記事を書こうと思った。 環境 System Details Report Report details Date generated: 2025-07-13 20:41:10 Hardware Information: Hardware Model: HP ProLiant DL60 Gen9 Memory: 32.0 GiB Processor: Intel® Xeon® E5-2620 v4 × 16 Graphics: Unknown ※ GTX1080ti Disk Capacity: 30.0 TB Software Information: Firmware Version: U15 OS Name: Arch Linux OS Build: rolling OS Type: 64-bit GNOME Version: 48 Windowing System: X11 Kernel Version: Linux 6.15.5-arch1-1 導入 yay コマンドでインストール yay -Sy stable-diffusion-webui コンフィグの場所 /etc/stable-diffusion-webui/webui.conf ...

July 12, 2025

http-server と SSL、CORS

この記事を作った動機 単にいちいちどうやって開発用に、http-server(npm経由) 上で SSL(HTTPS) を利用できるのかとか、とにかくCORSをどうにかしたいとき、忘れたときにいちいち調べるのはめんどいので、記録するだけ。 必要なもの http-server (via npm) mkcert まとめ http-server --cors --ssl --key ~/path/to/key/key.pem --cert ~/path/to/cert/cert.pem 個別のメモ書き CORSを何とかする http-server --cors SSL を何とかする mkcert -install # mkcertを初めて使うときのみ mkcert [開発用サーバのIP or localhost とか] http-server --ssl --key ~/path/to/key/key.pem --cert ~/path/to/cert/cert.pem 参考にしたサイトとか macos - enable CORS for local http server - Stack Overflow https://stackoverflow.com/questions/63297822/enable-cors-for-local-http-server (2025年6月13日) http-serverによるローカル HTTPS server 構築 (5分でできる) #Node.js - Qiita https://qiita.com/hbjpn/items/925c8012cd93d9165be6 (2025年6月13日)

June 13, 2025

パスワードを無期限で利用できるようにする

この記事を作った動機 最近 Win 11 24H2 を使っているときに、「パスワードの有効期限が切れています」とログオン時にパスワードの再設定を求められるということがあった。なぜか作成したアカウントの有効期限がデフォルトで設定されている状態であった。 それで調べてみるとGUI操作で、設定する方法ばかりヒットして、めんどくさかったので、コマンドでどうにかできないか試したことを記録するだけ。 やり方 以下はすべてのアカウントに対して設定を反映する方法である。一つ一つやる方法もあるらしいが、試していない。 コマンド (base) PS C:\Users\username> net accounts /maxpwage:unlimited コマンドは正常に終了しました。 全体像 (base) PS C:\Users\username> net accounts 強制ログオフまでの時間 (分): しない パスワード変更禁止期間 (日数): 0 パスワード有効期間 (日数): 42 最小パスワード長: 0 使用できない旧パスワード数: なし ロックアウトしきい値: 10 ロックアウト期間 (分): 10 ロックアウト監視ウィンドウ (分): 10 コンピューターの役割: WORKSTATION コマンドは正常に終了しました。 (base) PS C:\Users\username> net accounts /maxpwage:unlimited コマンドは正常に終了しました。 (base) PS C:\Users\username> net accounts 強制ログオフまでの時間 (分): しない パスワード変更禁止期間 (日数): 0 パスワード有効期間 (日数): 無制限 最小パスワード長: 0 使用できない旧パスワード数: なし ロックアウトしきい値: 10 ロックアウト期間 (分): 10 ロックアウト監視ウィンドウ (分): 10 コンピューターの役割: WORKSTATION コマンドは正常に終了しました。 (base) PS C:\Users\username> net user username ユーザー名 username フル ネーム コメント ユーザーのコメント 国/地域番号 000 (システム既定) アカウント有効 Yes アカウントの期限 無期限 最終パスワード変更日時 2025/05/29 21:33:43 パスワード有効期間 無期限 パスワード次回変更可能日時 2025/05/29 21:33:43 パスワードあり Yes ユーザーによるパスワード変更可能 Yes ログオン可能なワークステーション すべて ログオン スクリプト ユーザー プロファイル ホーム ディレクトリ 最終ログオン日時 2025/05/29 21:33:44 ログオン可能時間 すべて 所属しているローカル グループ *Administrators *Users 所属しているグローバル グループ *なし コマンドは正常に終了しました。 参考にしたサイトとか Set User Password to never expire | NTLite Forums https://www.ntlite.com/community/index.php?threads/set-user-password-to-never-expire.3328/ (2025年5月29日)

May 29, 2025

ローカルリポジトリをリモートへアップロード

この記事を作った動機 単にすでに存在する、git リポジトリを LAN 内の Gitea 上にアップロードするための方法の簡易的なメモ。Githubの場合でも同じようなことはできると思う。(そもそも github のページ参考にしたし) やり方 リポジトリの URL は、“https://aaa.info/urlToAremoteRepo.git" と仮定している。 リポジトリの作成(リモート側) リモート側に、最小構成で、readme や license、gitignore を追加しないようにして空っぽのリポジトリを作成する。 リポジトリの URL を設定する(ローカル側) git remote add origin https://aaa.info/urlToAremoteRepo.git ブランチの確認(ローカル側) アップロードしたいブランチの確認。今回は “master” という名前のブランチを、リモートにアップロードする。 git branch * master アップロード(ローカル側) git push origin master リポジトリが設定できたかの確認方法 git remote -v origin https://aaa.info/urlToAremoteRepo.git (fetch) origin https://aaa.info/urlToAremoteRepo.git (push) 参考にしたサイトとか Adding locally hosted code to GitHub - GitHub Docs https://docs.github.com/en/migrations/importing-source-code/using-the-command-line-to-import-source-code/adding-locally-hosted-code-to-github (2025年5月19日)

May 19, 2025