Proxmox OS 自動タグ付け (Proxmox-OS-AutoTagger)
概要
Proxmox-OS-AutoTagger は、Proxmox VE 環境内の稼働中ゲスト(LXC コンテナと QEMU/KVM 仮想マシン)を巡回し、それぞれの OS リリース情報を取得して一貫した形式のタグを自動で付与するシェルスクリプトです。LXC には直接 /etc/os-release を参照して情報を読み取り、VM には QEMU Guest Agent を介してゲスト側の OS 情報を取得します。生成されるタグは全て小文字で “os-” を接頭辞とし、既存のタグは保持され、正しいタグが既に設定されている場合は変更を行わないため冪等に動作します。軽量でシンプルに導入でき、cron や systemd タイマーで定期実行することで運用中のリソースに自動的に OS 情報ラベルを付けられます。
リポジトリの統計情報
- スター数: 7
- フォーク数: 0
- ウォッチャー数: 7
- コミット数: 4
- ファイル数: 3
- メインの言語: Shell
主な特徴
- LXC は /etc/os-release、VM は QEMU Guest Agent を利用して OS 情報を取得
- “os-” プレフィックスの標準化されたタグを小文字・ハイフンで生成
- 既存タグを保持しつつ必要がある場合のみタグを更新する冪等性
- 軽量な単一シェルスクリプトで、cron や systemd と組み合わせて運用可能
技術的なポイント
本スクリプトは Proxmox ホスト上で動作するシェルスクリプト(pve_os_tagger.sh)として実装されており、LXC と QEMU/VM を区別して OS 情報を取得します。LXC コンテナに対してはホストからコンテナ内ファイルを参照するか、pct exec 相当の手段で /etc/os-release を読み取り、NAME、VERSION_ID、VERSION_CODENAME 等の値を取得して結合します。仮想マシンについては QEMU Guest Agent(qemu-guest-agent)がゲスト側で動作していることを前提に、ゲストエージェント経由で OS 情報を問い合わせます。取得した情報は小文字化、空白やスラッシュのハイフン化、特殊文字の除去などの正規化処理を経て “os-
プロジェクトの構成
主要なファイルとディレクトリ:
- LICENSE: file
- README.md: file
- pve_os_tagger.sh: file
まとめ
運用環境の OS 情報を自動で一元管理する軽量なタグ付けツール。
リポジトリ情報:
- 名前: Proxmox-OS-AutoTagger
- 説明: Script to automatically tag Proxmox VE LXC containers and virtual machines with their OS release version
- スター数: 7
- 言語: Shell
- URL: https://github.com/nullpo7z/Proxmox-OS-AutoTagger
- オーナー: nullpo7z
- アバター: https://avatars.githubusercontent.com/u/106151323?v=4
READMEの抜粋:
Proxmox OS Auto-Tagger
Automatically tags Proxmox VE LXC containers and VMs with their OS release version (e.g., “os-ubuntu-24.04-lts” or “os-debian-gnu-linux-13-trixie”).
This script scans all running guests (both LXC and QEMU/VM) and uses /etc/os-release
(for LXC) or the QEMU Guest Agent (for VMs) to determine the OS version. It generates a standardized, all-lowercase tag prefixed with os-
and applies it, while preserving any other tags you have set.
It is idempotent: if the correct t…