tencent cloud

Cloud Virtual Machine

最新情報とお知らせ
製品情報
パブリックイメージの更新情報
OSの公式サポート終了計画
製品に関するお知らせ
製品概要
CVM概要
製品の強み
基本概念
リージョンとゾーン
初心者ガイド
Service Regions and Service Providers
製品の課金
課金概要
課金モデル
課金項目
課金モデルの変更
購入インスタンス
仕様変更の料金説明
料金未払いに関する説明
クイックスタート
カスタム設定によるLinuxインスタンスの購入
カスタム設定によるWindowsインスタンスの購入
ユーザーガイド
操作ガイド一覧
ご利用制限一覧
インスタンス
スポットインスタンス
リザーブドインスタンス
イメージ
ストレージ
バックアップと復元
ネットワーク
セキュリティ
パスワード/キー
監視とアラート
運用管理
便利な機能
サーバー移行
オンライン移行
オフライン移行
移行に関するご相談
トラブルシューティング
CVMインスタンスにログインできない原因や対処法
Windowsインスタンスのログインに関する障害
Linuxインスタンスのログインに関する障害
その他のインスタンスログインに関する障害
インスタンス実行時の障害
Linuxインスタンスのメモリに関する障害
ネットワーク障害
実践チュートリアル
CVMの選定ガイド
環境構築
ウェブサイトの構築
アプリケーションの構築
可視化ページの構築
ローカルファイルをCVMへアップロード
ネットワークパフォーマンステスト
その他の実践チュートリアル
API リファレンス
History
Introduction
API Category
Making API Requests
Region APIs
Instance APIs
Cloud Hosting Cluster APIs
Image APIs
Instance Launch Template APIs
Placement Group APIs
Key APIs
Security Group APIs
Network APIs
Data Types
Error Codes
セキュリティとコンプライアンス
Cloud Access Management(CAM)
ネットワーク
よくあるご質問
リージョンとアベイラビリティゾーンに関するご質問
課金クラス
インスタンスに関するご質問
ストレージに関するご質問
イメージに関するご質問
サーバー移行について
ネットワークに関するご質問
セキュリティに関するご質問
OSに関するご質問
運用と監視に関するご質問
CAMに関するご質問
NTPサービスに関するご質問
適用シナリオに関するご質問
Agreements
CVM Service Level Agreements
Red Hat Enterprise Linux Image Service Agreement
Public IP Service Level Agreement
用語集

カスタムデータの設定(Linux)

PDF
フォーカスモード
フォントサイズ
最終更新日: 2025-08-14 17:15:55

操作シナリオ

Cloud Virtual Machine(CVM)を作成する際、カスタムデータを指定することでインスタンスを設定できます。CVMの初回起動時には、カスタムデータがテキストとしてCVMに渡され、そのテキストが実行されます。一度に複数のCVMを購入した場合、カスタムデータはすべてのCVMを最初に起動したときにそのテキストが実行されます。
このドキュメントでは、Linux CVMの初回起動時に、Shell形式のスクリプトを渡す場合を例に説明します。

注意事項

カスタマイズデータをサポートするLinux OSは、以下のとおりです。
64ビットのOS:CentOS 6.8 64ビット以上、Ubuntu Server 14.04.1 LTS 64ビット以上、suse42.3x86_64
32ビットのOS:CentOS 6.8 32ビット以上
CVMの初回起動時のみ、テキストを渡すことでコマンドを実行します。
渡されるテキストはBase64でエンコーディングされている必要があります。Linux環境でエンコーディングを行い、フォーマットの非互換性を避けてください
rootアカウントを使用して、ユーザーデータによる入力テキストを実行します。スクリプトではsudoコマンドを使用しません。作成されたファイルはすべてrootに属します。root以外のユーザーにファイルアクセス権を許可する必要がある場合は、スクリプトで権限を変更してください。
起動時に、カスタマイズデータで指定されたタスクを実行すると、サーバーの起動時間が長くなります。数分待って、タスクの完了後にタスクが正常に実行されたかをテストすることをお勧めします。
この例では、Shellスクリプトは #!文字、およびスクリプトを読み取るインタープリターへのパス(通常は/bin/bash)で始まる必要があります。

操作手順

Shellスクリプトの作成

1. 次のコマンドを実行して、「script_text.sh」という名前のShellスクリプトファイルを作成します。
vi script_text.sh
2. iを押して編集モードに切り替え、次の内容を参照し、「script_text.sh」スクリプトファイルに記述して保存します。
#!/bin/bash
echo "Hello Tencent Cloud."
ご注意:
Shellスクリプトは必ず#!文字およびスクリプトを読み取るインタープリターへのパス(通常は /bin/bash)で始まる必要があります。Shellスクリプトの詳細については、Linux ドキュメントプロジェクト (tldp.org)の BASHのプログラミング方法

Base64エンコードスクリプトを使用する

1. 次のコマンドを実行して、「script_text.sh」スクリプトファイルに対してBase64エンコード操作を実行します。
# スクリプトに対してBase64エンコーディング操作を実行する
base64 script_text.sh
以下の情報を返します。
# エンコードされた結果
IyEvYmluL2Jhc2gKZWNobyAiSGVsbG8gVGVuY2VudCBDbG91ZC4iCg==
2. 次のコマンドを実行し、Base64でscript_textスクリプトファイルをエンコーディングして返された結果を検証します。
# 返された結果に対してBase64エンコーディングを実行し、実行が必要なコマンドかどうかを検証します。
echo "IyEvYmluL2Jhc2gKZWNobyAiSGVsbG8gVGVuY2VudCBDbG91ZC4iCg==" | base64 -d

テキストを渡す

インスタンスを起動するさまざまな方法を提供しています。主に次の2つの方法があり、実際のニーズに合わせてお選びください。
公式サイトまたはコンソールから渡す
APIから渡す
1. 下図に示すように、インスタンスの作成 を参照してインスタンスを購入し、「2.ホストの設定」のステップで詳細設定をクリックしてください。


2. 「高度な設定」の「カスタマイズデータ」 テキストボックス内に、 使用Base64コードスクリプト文件 を入力して返された結果は下図に示すとおりです。 たとえば、Base64でscript_textスクリプトファイルをエンコーディングして返された結果は IyEvYmluL2Jhc2gKZWNobyAiSGVsbG8gVGVuY2VudCBDbG91ZC4iCg==です。


3. 画面情報に従ってステップごとに操作し、CVMの作成を完了します。
説明:
Tencent CVMはオープンソースソフトウェアcloud-initを介してスクリプトを実行します。cloud-initの詳細については cloud-init公式サイト をご参照ください。

APIを介してCVMを作成する場合、Base64でコードスクリプトファイルをエンコーディングする で返されたエンコーディング結果をRunInstancesインターフェースのUserDataパラメータに代入することにより、テキストを渡すことができます。 例えば、UserDataパラメータを持つCVMへのリクエストパラメータを作成する場合、以下のような例があります。
https://cvm.tencentcloudapi.com/?Action=RunInstances
&Version=2017-03-12
&Placement.Zone=ap-guangzhou-6
&ImageId=img-pmqg1cw7
&UserData=IyEvYmluL2Jhc2gKZWNobyAiSGVsbG8gVGVuY2VudCBDbG91ZC4iCg==
&<パブリックリクエストパラメータ>

実行ログの確認

サーバーの作成に成功すると、次のコマンドを実行して、スクリプト実行ログを確認することができます:
cat /var/log/cloud-init-output.log


ヘルプとサポート

この記事はお役に立ちましたか?

フィードバック