Posted: 2026-06-04
| Tags:
backup ,
cryptsetup ,
Linux ,
LUKS
LUKSで暗号化した外部メディアを秘密鍵バックアップに使う 秘密鍵の backup は、単に別 directory へ copy しても十分ではない。
同じ workstation 上に平文 copy を増やすと、disk 故障や誤削除には少し効くが、侵害時の影響範囲はあまり変わらない。普段は unplug しておく外部メディアを暗号化し、必要な時だけ mount する方が扱いやすい。
ここでは Linux で USB メモリや SD カードを LUKS2 化し、小さい秘密ファイルを保存する手順を整理する。
方針 media 全体を LUKS2 にする backup 対象は暗号化済み filesystem を mount してから copy する plain filesystem へ一時 copy してから暗号化しない backup 後は fingerprint や hash で内容を確認する mount 解除後に LUKS mapper も close する media の label、serial、保管場所、passphrase は公開メモに書かない 対象デバイスの確認 cryptsetup luksFormat、mkfs、wipefs は破壊的である。まず read-only な確認だけを行う。
lsblk -o NAME,PATH,TRAN,MODEL,SIZE,FSTYPE,LABEL,UUID,MOUNTPOINTS
udevadm info --query= property --name= /dev/sdX | grep -E '^(ID_BUS=|ID_MODEL=|ID_SERIAL=|ID_FS_TYPE=|ID_FS_LABEL=)'
見る点:
Read more... Posted: 2026-05-22
| Tags:
ddcutil ,
desktop ,
interface ,
linux ,
midi
目的 KORG nanoKONTROL2 のような USB MIDI controller を、Linux desktop の物理操作盤として使いたいのでGolangで作った。
midi-switch
MIDI event を ALSA sequencer で読み、ddcutil でディスプレイの入力ソース、明るさ、コントラストを操作し、必要なら pactl で音量も操作する。
構成は単純にする。
USB MIDI controller
-> ALSA sequencer event
-> small daemon
-> ddcutil / pactl
-> display input / brightness / contrast / volume
できた感想 リモートワークで窓際で作業してるのですが時間帯や天気によってディスプレーの明るさやコントラストを変えたくなるのですが
MIDIのスライドバーとかボリュームボタンで変えられて嬉しいです
あとラズパイの検証時、ディスプレー入力をちょいちょい変えたくなるので便利になった(稀に起動初期の画面がみたい事がある)
方針 初期実装では MIDI library へ直接つながず、aseqdump の stdout を読む方式で十分に価値がある。
理由:
aconnect -l と aseqdump の結果をそのまま調査ログとして使えるMIDI button、knob、slider の note / controller 番号を目視で確定しやすい ALSA sequencer port が見えていれば Go や shell からすぐ扱える 仕様が固まってから gomidi / RtMidi などへ移行できる ddcutil 側も、まずは ddcutil detect、getvcp、setvcp を外部 command として呼ぶ。
daemon 内で DDC/CI protocol を直接実装しないことで、モニター差分の切り分けを ddcutil に寄せられる。
Read more... Posted: 2026-05-22
| Tags:
cli ,
container ,
docker ,
linux
日常CLIコンテナでhost UID/GIDに合わせてshellへ入る設計 目的 日常的に使う CLI tool をコンテナ image にまとめると、host の環境を壊さずに新しい tool や最新版を試せる。
一方で、作業ディレクトリを bind mount して shell に入る場合、コンテナ内ユーザーの UID/GID が host とずれると、作成ファイルの所有者が壊れる。
Dockerfile に個人の user name、UID、GID を焼かず、起動時に host user に合わせる。
shell wrapperとentrypointを分ける 責務を分ける。
shell wrapper:
- host側で実行する
- container runtimeを選ぶ
- bind mountを組み立てる
- hostのUID/GID/USER/HOMEを環境変数で渡す
- containerは一度rootで起動する
entrypoint:
- container内で実行する
- hostと同じUID/GIDのuser/groupを作る
- 必要な補助groupを設定する
- 作業userへ権限を落としてcommandを実行する
この形にすると、image 自体は汎用のままにできる。
利用者ごとの UID/GID は runtime の入力として扱う。
Read more... Posted: 2026-05-21
| Categories:
device ,
gentoo
| Tags:
Gentoo ,
Linux ,
NEC ,
tablet ,
TypeVT
NEC VersaPro J TypeVT に Gentoo を入れるときのメモ NEC VersaPro J TypeVT PC-VK16XTAAN は、Atom x7-Z8700 世代の 2-in-1 タブレット。
古い Atom タブレットらしい癖はあるが、64-bit UEFI、i915、eMMC、Broadcom Wi-Fi、Wacom touch/pen、UPower、backlight が Linux から見えるため、Gentoo amd64 の軽量デスクトップとしては十分に検証できる。
最初からカーネルを削り込まず、sys-kernel/gentoo-kernel-bin、sys-kernel/linux-firmware、NetworkManager、PipeWire/WirePlumber、ALSA UCM、軽量 Wayland compositor で立ち上げるのがよかった。
機種メモ NEC の商品情報では PC-VK16XTAAN は Atom x7-Z8700 搭載機として扱われている。
Linux 事例を探すときは、NEC の型番だけでなく ThinkPad 10 系の情報も参考になる。
キーボードドックも Linux からは ThinkPad 10 系の USB HID keyboard / mouse として見える。
Boot menu は、キーボードドック接続時なら F12 で入れる。
Secure Boot や firmware 設定は個体や BIOS revision の影響を受けるため、インストール時はまず Secure Boot を無効化したシンプルな構成で確認する方が切り分けしやすい。
Read more...