mcpField
L
linux-admin

linux-admin

github.com/alphaonedevクラウド・DevOps50 回インストール
リポジトリ

linux-admin について

linux-adminは、Ubuntu Server 24.04 LTSの管理を支援するスキルです。サーバーの構築、保守、トラブルシューティング向けに、シェルコマンドでパッケージ、アカウント、ファイルシステム、カーネル設定、ログを扱います。

主な機能

  1. 01aptによるパッケージ管理
  2. 02ユーザーアカウントの作成と変更
  3. 03ファイルシステムのパーティション設定とマウント
  4. 04sysctlによるカーネルパラメーター調整
  5. 05journalctlによるサービスログ検索

活用シーン

  1. 01Ubuntuサーバーへのソフトウェア導入
  2. 02アカウント作成とアクセス設定
  3. 03ディスクファイルシステムの設定や確認
  4. 04サービスログのエラー調査

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/alphaonedev/openclaw-graph --skill linux-admin

インストール後、Claude Code で/linux-adminを入力して読み込まれたか確認します。

詳細

linux-admin

目的

このスキルは、Ubuntu Server 24.04 LTS の管理ツールを提供します。apt によるパッケージ管理、ユーザーアカウントの作成と変更、ディスクおよびファイルシステムの操作、sysctl によるカーネルパラメーターの調整、ログ管理に重点を置いています。

使用する場面

Ubuntu 24.04 サーバーのセットアップ、保守、トラブルシューティングに使用します。たとえば、本番環境でのアプリケーションのデプロイ、ユーザーアクセスの保護、システムパフォーマンスの最適化、ログの分析などが対象です。

主な機能

  • パッケージ管理(apt):リポジトリの更新、パッケージのインストール/アンインストール、依存関係の管理を、非対話モード用の -y などのフラグを指定して apt で行います。
  • ユーザー管理:useradd、usermod、userdel などのコマンドを使ってユーザーを作成、変更、削除します。ホームディレクトリやシェルのオプションも指定できます。
  • ディスク/ファイルシステム:fdisk でディスクをパーティション分割し、mkfs でファイルシステムをフォーマットし、mount と umount でマウント/アンマウントします。ext4 などの形式に対応しています。
  • Sysctl:/etc/sysctl.conf を編集し、sysctl -p で適用することで、ネットワークやセキュリティなどのカーネルパラメーターを動的に調整します。
  • ログ管理:journalctl を使ってシステムログを検索、フィルタリングします。時間で検索する --since などのオプションや、/var/log への永続的な保存に対応しています。

使用パターン

スクリプト内のシェルコマンドまたは AI プロンプトからこのスキルを呼び出します。root 権限が必要なコマンドには、必ず sudo を付けてください。例 1:パッケージをインストールしてユーザーを追加するには、次のようにコマンドを順に実行します:sudo apt update; sudo apt install nginx -y; sudo useradd webuser -m。例 2:ディスクを管理してログを確認するには、sudo fdisk /dev/sda; sudo mkfs.ext4 /dev/sda1; sudo mount /dev/sda1 /mnt; sudo journalctl -u nginx --since "1 hour ago" を実行します。

主なコマンド/API

  • Apt の例:パッケージの更新とインストール:
    sudo apt update
    sudo apt install vim -y
    
  • ユーザー管理の例:ホームディレクトリ付きのユーザーを追加:
    sudo useradd newuser -m -s /bin/bash
    sudo passwd newuser
    
  • ディスク/ファイルシステムの例:ファイルシステムを作成してマウント:
    sudo fdisk -l /dev/sdb  # List partitions
    sudo mkfs.ext4 /dev/sdb1
    sudo mount /dev/sdb1 /mnt/data
    
  • Sysctl の例:カーネルパラメーターを設定:
    echo "net.core.somaxconn=1024" | sudo tee -a /etc/sysctl.conf
    sudo sysctl -p
    
  • ログ管理の例:サービスのログをフィルタリング:
    sudo journalctl -u apache2 --since yesterday
    sudo journalctl -p err  # Show only errors
    

統合に関する注意

Ubuntu 24.04 の Bash 環境でコマンドを実行します。リモートアクセスには SSH を使用します。主要な機能に API キーは不要ですが、監視 API などの外部ツールと連携する場合は、認証用に $LINUX_API_KEY などの環境変数を設定してください。AI エージェントがコマンドに sudo を付け、出力を解析するようにしてください。たとえば、終了コードで apt の成功を確認します。

エラー処理

コマンドの終了コードを直ちに確認してください。たとえば、sudo apt install package の後に、if [ $? -ne 0 ]; then echo "Installation failed"; fi で検証します。標準出力/標準エラーからエラーを解析してください。たとえば、apt のエラー「E: Unable to locate package」は、リポジトリが見つからないことを示しているため、先に sudo apt update を実行します。sysctl でパラメーターの設定に失敗した場合は、詳細を /var/log/syslog で確認してください。スクリプトでは try-catch を使用します:

command_output=$(sudo apt update 2>&1)
if [[ $command_output == *"ERROR"* ]]; then echo "Handle error"; fi

グラフの関係

  • 関連:ファイアウォール連携には「networking」などの Linux クラスタースキルを使用します。
  • 依存:直接的な依存はありませんが、基本的な Ubuntu のセットアップが前提です。
  • 競合:指定なし。

コメント