すべてのプロダクト
Search
ドキュメントセンター

Elastic Compute Service:Alibaba Cloud Linux イメージ要件

最終更新日:Apr 28, 2026

カスタム Linux イメージは、インポートまたは Alibaba Cloud Marketplace でのリリース前に、以下の要件を満たし、ECS インスタンスタイプとの互換性テストに合格する必要があります。

ディスクパーティション

イメージは、以下のディスクパーティション要件を満たす必要があります。

  • ディスクのサイズ変更

    • 物理パーティションに基づいてディスクを論理パーティションに分割します。システムディスクパーティションの障害を防ぐため、各ディスクの最後の論理パーティションをルートパーティションとして使用してください。

    • オンラインでのディスクサイズ変更をサポートするオペレーティングシステムでは、cloud-utils-growpart パッケージをインストールし、growpart を使用してパーティションを拡張します。詳細については、「Linux インスタンス上のディスクのパーティションとファイルシステムを拡張する」をご参照ください。

  • スワップ領域

    スワップ領域を使用しないでください。

  • ディスクのマウント

    fstab ファイルおよび grub ファイル内に UUID を設定します。詳細については、「/etc/fstab で UUID を使用してデータディスクを自動マウントする」および「GRUB で UUID を使用してディスクパーティションを識別する」をご参照ください。

    重要

    fstab の構成が誤っていると、インスタンスが再起動後に起動しなくなる可能性があります。

  • LVM 管理

    ディスクパーティションの管理に LVM を使用しないでください。

  • ディスクサイズ

    システムディスクのサイズを最低でも 20 GiB に設定してください。

  • イメージのブートモード

    オンプレミス環境で作成したイメージのブートモードを、ターゲットインスタンスタイプと一致するように構成してください。イメージをインポートする際に、ブートモードを指定します。

    説明

    オンプレミスイメージが BIOS および UEFI の両方をサポートしている場合は、イメージをインポートする際に UEFI-Preferred モードを指定してください。これにより、すべてのインスタンスタイプのブートモードに対応でき、イメージ作成コストを削減できます。

必須ソフトウェア

  • virtio ドライバーのインストール

    virtio ドライバーをインストールし、イメージをリリースする前に一時ファイルシステムに追加してください。virtio ドライバーは、イメージが ECS インスタンス上で正常に動作するために必要です。詳細については、「virtio ドライバーをインストールする」をご参照ください。

  • NVMe ドライバーのインストール

    ecs.g8i や ecs.g7se などの新しい ECS インスタンスファミリーは、ディスクの添付に Non-Volatile Memory Express (NVMe) プロトコルを使用します。これらのインスタンスファミリーでイメージを使用するには、NVMe ドライバーをインストールする必要があります。詳細については、「カスタムイメージに NVMe ドライバーをインストールする」をご参照ください。イメージをインポートする際には、NVMe DriveSupported に設定してください。詳細については、「イメージのプロパティとタグを変更する」をご参照ください。

  • cloud-init のインストール

    インスタンスの初期化を有効にするために cloud-init をインストールしてください。詳細については、「cloud-init をインストールする」をご参照ください。セキュリティ強化モードでインスタンスメタデータへのアクセスをサポートする cloud-init 23.2.2 の使用を推奨します。

    説明

    cloud-init を使用してパスワードを変更するには、カーネルが CONFIG_FW_CFG_SYSFS をサポートしている必要があります。Linux コミュニティカーネル 4.6 以降および CentOS カーネル 3.10.0-826.el7 以降は、デフォルトでこの機能をサポートしています。確認するには、ソースサーバー上で grep -nr CONFIG_FW_CFG_SYSFS /boot/config-$(uname -r) を実行します。出力に CONFIG_FW_CFG_SYSFS=y が含まれている場合、カーネルは CONFIG_FW_CFG_SYSFS をサポートしています。

  • クラウドアシスタントのインストール

    ECS 向けのネイティブな自動運用管理ツールであるクラウドアシスタントをインストールしてください。クラウドアシスタントを使用すると、パスワードやジャンプサーバーなしで ECS インスタンス上でシェル、PowerShell、バッチコマンドを一括実行できます。自動運用管理、プロセス監視、ソフトウェア管理、サービス制御、パッチインストールなどに活用できます。詳細については、「クラウドアシスタントエージェントをインストールする」をご参照ください。

  • Security Center を使用したイメージソースサーバーの保護

    Security Center を使用してご利用のサーバーを保護してください。Security Center は、クラウドおよびオンプレミスサーバー向けに、アラート通知、ウイルス検出・駆除、Web シェル検出・駆除、クライアント保護、イメージスキャンを提供します。

システム構成

  • 時計の構成

    ハードウェアクロックを協定世界時 (UTC) に設定します。サンプルコマンド:

    cat > /etc/adjtime << EOF
    0.0 0 0.0
    0
    UTC
    EOF
    
    timedatectl set-local-rtc 0

    詳細については、「Linux の時刻とタイムゾーン」をご参照ください。

  • sshd サービスの構成

    リモートアクセスのために sshd サービスを構成します。

    sshd は、SSH ベースの暗号化されたリモートログインおよび Linux の管理を可能にします。/etc/ssh/sshd_config を次のように変更します。

    UseDNS no
    AddressFamily inet 
    SyslogFacility AUTHPRIV 
    PermitRootLogin yes 
    PasswordAuthentication yes 
  • chrony サービスまたは NTP サービスの構成

    時刻同期のために chrony サービスまたは Network Time Protocol (NTP) サービスを構成します。

    chrony および NTP は、システムクロックを時刻ソースと同期させることで時刻精度を確保し、時刻ずれによる問題を防止します。

    chrony サービスを構成するためのサンプルコマンド

    chrony_file=/etc/chrony.conf
    cat >$chrony_file <<EOF
    # Use Alibaba NTP server
    # Public NTP
    # Alicloud NTP
    
    
    server ntp.cloud.aliyuncs.com minpoll 4 maxpoll 10 iburst
    server ntp.aliyun.com minpoll 4 maxpoll 10 iburst
    server ntp1.aliyun.com minpoll 4 maxpoll 10 iburst
    server ntp1.cloud.aliyuncs.com minpoll 4 maxpoll 10 iburst
    server ntp10.cloud.aliyuncs.com minpoll 4 maxpoll 10 iburst
    server ntp11.cloud.aliyuncs.com minpoll 4 maxpoll 10 iburst
    server ntp12.cloud.aliyuncs.com minpoll 4 maxpoll 10 iburst
    server ntp2.aliyun.com minpoll 4 maxpoll 10 iburst
    server ntp2.cloud.aliyuncs.com minpoll 4 maxpoll 10 iburst
    server ntp3.aliyun.com minpoll 4 maxpoll 10 iburst
    server ntp3.cloud.aliyuncs.com minpoll 4 maxpoll 10 iburst
    server ntp4.aliyun.com minpoll 4 maxpoll 10 iburst
    server ntp4.cloud.aliyuncs.com minpoll 4 maxpoll 10 iburst
    server ntp5.aliyun.com minpoll 4 maxpoll 10 iburst
    server ntp5.cloud.aliyuncs.com minpoll 4 maxpoll 10 iburst
    server ntp6.aliyun.com minpoll 4 maxpoll 10 iburst
    server ntp6.cloud.aliyuncs.com minpoll 4 maxpoll 10 iburst
    server ntp7.cloud.aliyuncs.com minpoll 4 maxpoll 10 iburst
    server ntp8.cloud.aliyuncs.com minpoll 4 maxpoll 10 iburst
    server ntp9.cloud.aliyuncs.com minpoll 4 maxpoll 10 iburst
    
    # Ignore stratum in source selection.
    stratumweight 0.05
    
    # Record the rate at which the system clock gains/losses time.
    driftfile /var/lib/chrony/drift
    
    # Enable kernel RTC synchronization.
    rtcsync
    
    # In first three updates step the system clock instead of slew
    # if the adjustment is larger than 10 seconds.
    makestep 10 3
    
    # Allow NTP client access from local network.
    #allow 192.168/16
    
    # Listen for commands only on localhost.
    bindcmdaddress 127.0.0.1
    bindcmdaddress ::1
    
    # Disable logging of client accesses.
    noclientlog
    
    # Send a message to syslog if a clock adjustment is larger than 0.5 seconds.
    logchange 0.5
    
    logdir /var/log/chrony
    #log measurements statistics tracking
    EOF

    NTP サービスを構成するためのサンプルコマンド

    ntp_conf=/etc/ntp.conf
        cat > $ntp_conf << EOF
    driftfile  /var/lib/ntp/drift
    pidfile    /var/run/ntpd.pid
    logfile    /var/log/ntp.log
    
    
    # Access Control Support
    restrict    default kod nomodify notrap nopeer noquery
    restrict -6 default kod nomodify notrap nopeer noquery
    restrict 127.0.0.1
    restrict 192.168.0.0 mask 255.255.0.0 nomodify notrap nopeer noquery
    restrict 172.16.0.0 mask 255.240.0.0 nomodify notrap nopeer noquery
    restrict 100.64.0.0 mask 255.192.0.0 nomodify notrap nopeer noquery
    restrict 10.0.0.0 mask 255.0.0.0 nomodify notrap nopeer noquery
    
    
    # local clock
    server 127.127.1.0
    fudge  127.127.1.0 stratum 10
    
    restrict ntp.aliyun.com nomodify notrap nopeer noquery
    restrict ntp.cloud.aliyuncs.com nomodify notrap nopeer noquery
    restrict ntp1.aliyun.com nomodify notrap nopeer noquery
    restrict ntp1.cloud.aliyuncs.com nomodify notrap nopeer noquery
    restrict ntp10.cloud.aliyuncs.com nomodify notrap nopeer noquery
    restrict ntp11.cloud.aliyuncs.com nomodify notrap nopeer noquery
    restrict ntp12.cloud.aliyuncs.com nomodify notrap nopeer noquery
    restrict ntp2.aliyun.com nomodify notrap nopeer noquery
    restrict ntp2.cloud.aliyuncs.com nomodify notrap nopeer noquery
    restrict ntp3.aliyun.com nomodify notrap nopeer noquery
    restrict ntp3.cloud.aliyuncs.com nomodify notrap nopeer noquery
    restrict ntp4.aliyun.com nomodify notrap nopeer noquery
    restrict ntp4.cloud.aliyuncs.com nomodify notrap nopeer noquery
    restrict ntp5.aliyun.com nomodify notrap nopeer noquery
    restrict ntp5.cloud.aliyuncs.com nomodify notrap nopeer noquery
    restrict ntp6.aliyun.com nomodify notrap nopeer noquery
    restrict ntp6.cloud.aliyuncs.com nomodify notrap nopeer noquery
    restrict ntp7.cloud.aliyuncs.com nomodify notrap nopeer noquery
    restrict ntp8.cloud.aliyuncs.com nomodify notrap nopeer noquery
    restrict ntp9.cloud.aliyuncs.com nomodify notrap nopeer noquery
    
    
    server ntp.aliyun.com iburst minpoll 4 maxpoll 10
    server ntp.cloud.aliyuncs.com iburst minpoll 4 maxpoll 10
    server ntp1.aliyun.com iburst minpoll 4 maxpoll 10
    server ntp1.cloud.aliyuncs.com iburst minpoll 4 maxpoll 10
    server ntp10.cloud.aliyuncs.com iburst minpoll 4 maxpoll 10
    server ntp11.cloud.aliyuncs.com iburst minpoll 4 maxpoll 10
    server ntp12.cloud.aliyuncs.com iburst minpoll 4 maxpoll 10
    server ntp2.aliyun.com iburst minpoll 4 maxpoll 10
    server ntp2.cloud.aliyuncs.com iburst minpoll 4 maxpoll 10
    server ntp3.aliyun.com iburst minpoll 4 maxpoll 10
    server ntp3.cloud.aliyuncs.com iburst minpoll 4 maxpoll 10
    server ntp4.aliyun.com iburst minpoll 4 maxpoll 10
    server ntp4.cloud.aliyuncs.com iburst minpoll 4 maxpoll 10
    server ntp5.aliyun.com iburst minpoll 4 maxpoll 10
    server ntp5.cloud.aliyuncs.com iburst minpoll 4 maxpoll 10
    server ntp6.aliyun.com iburst minpoll 4 maxpoll 10
    server ntp6.cloud.aliyuncs.com iburst minpoll 4 maxpoll 10
    server ntp7.cloud.aliyuncs.com iburst minpoll 4 maxpoll 10
    server ntp8.cloud.aliyuncs.com iburst minpoll 4 maxpoll 10
    server ntp9.cloud.aliyuncs.com iburst minpoll 4 maxpoll 10
    EOF
  • MOTD サービスの構成

    ユーザーがログインした際にメッセージを表示するよう、Message of the Day (MOTD) サービスを構成します。

    サンプルコマンド:

    echo -e "\nWelcome to Alibaba Cloud Elastic Compute Service !  \n" > /etc/motd
  • Firewalld サービスの無効化

    Firewalld サービスを無効化します。クラウド環境ではセキュリティグループがファイアウォール保護を提供するため、Firewalld は不要です。サンプルコマンド:

    systemctl stop firewalld
    systemctl disable firewalld
  • pip リポジトリの構成

    pip が構成されている場合は、Alibaba Cloud pip リポジトリを使用します。~/.pip/pip.conf のサンプル内容:

    [global]
    index-url=http://mirrors.cloud.aliyuncs.com/pypi/simple/
    
    [install]
    trusted-host=mirrors.cloud.aliyuncs.com
  • ネットワーク設定の構成

    NetworkManager またはネットワークサービスを使用している場合は、/etc/sysconfig/network-scripts/ifcfg-eth0 を次のように構成します。

    DEVICE=eth0
    BOOTPROTO=dhcp
    ONBOOT=yes

    その他のネットワーク構成については、「セカンダリ ENI を構成する」をご参照ください。

カーネルパラメーター構成

  • kernelopt パラメーターの構成

    オペレーティングシステムが正しく起動するよう、GRUB カーネルパラメーターを構成します。以下の例は Debian オペレーティングシステムを使用しています。

    1. /etc/default/grub 内の GRUB_CMDLINE_LINUX= 行に、以下を追加します。

      • x86_64 アーキテクチャ

        net.ifnames=0 console=tty0 console=ttyS0,115200n8
      • Arm64 アーキテクチャ

        net.ifnames=0 console=tty0 console=ttyAMA0,115200n8 
    2. sudo update-grub2 を実行して GRUB 構成を適用します。

      説明

      GRUB 構成ファイルのパスおよび変更を適用するコマンドは、オペレーティングシステムによって異なります。詳細については、「カスタムイメージに NVMe ドライバーをインストールする」をご参照ください。

  • sysctl パラメーターの構成

    Linux カーネルのランタイム動作を最適化するよう、sysctl パラメーターを構成します。

    1. /etc/sysctl.conf に以下を追加します。

      vm.swappiness = 0
      kernel.sysrq = 1
      
      net.ipv4.neigh.default.gc_stale_time = 120
      
      net.ipv4.conf.all.rp_filter = 0
      net.ipv4.conf.default.rp_filter = 0
      net.ipv4.conf.default.arp_announce = 2
      net.ipv4.conf.lo.arp_announce = 2
      net.ipv4.conf.all.arp_announce = 2
      
      net.ipv4.tcp_max_tw_buckets = 5000
      net.ipv4.tcp_syncookies = 1
      net.ipv4.tcp_max_syn_backlog = 1024
      net.ipv4.tcp_synack_retries = 2
      net.ipv4.tcp_slow_start_after_idle = 0
    2. sudo sysctl -p を実行して変更を適用します。

システムセキュリティに関する推奨事項

カスタムイメージをインポートする前に、以下のセキュリティ強化対策を適用してください。

  • パスワードによるルートログインを防止するため、ルートアカウントをロックします。

  • パスワード認証によるログインを無効にするため、PasswordAuthentication を no に設定します。

    説明

    インスタンス初期化時にルートパスワードを設定する場合は、パスワード認証によるログインを有効にするため、PasswordAuthentication を yes に設定します。

サンプルコード:

  dst=/etc/ssh/sshd_config
  sed -i 's/^SyslogFacility.*//' $dst
  sed -i 's/^PermitRootLogin.*//' $dst
  sed -i 's/^PasswordAuthentication.*//' $dst

  echo UseDNS no >> $dst
  echo SyslogFacility AUTHPRIV >> $dst
  echo PasswordAuthentication no >> $dst

  passwd -l root
  sed -i -e 's/root:[^:]*:/root:*:/g' /etc/shadow

イメージ情報のクリア

独立系ソフトウェアベンダー (ISV) は、イメージをリリースする前に履歴レコードおよびログをクリアできます。