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

File Storage NAS:SMB ファイルシステムのマウント

最終更新日:Aug 19, 2026

Linux は SMB プロトコルとの互換性が限られています。異なるオペレーティングシステム間でデータを共有する必要がある場合にのみ、Linux クライアントに SMB ファイルシステムをマウントすることを推奨します。このトピックでは、読み書き操作のために Linux Elastic Compute Service (ECS) インスタンスに SMB ファイルシステムをマウントする方法について説明します。

前提条件

  • SMB ファイルシステムと同じリージョンに Linux ECS インスタンスが用意されていること。詳細については、「ECS インスタンスの作成」をご参照ください。

    重要
    • Linux クライアントの場合、NFS ファイルシステムをマウントすることを推奨します。Linux は SMB プロトコルとの互換性が限られているため、異なるオペレーティングシステム間でデータを共有する必要がある場合にのみ、Linux クライアントに SMB ファイルシステムをマウントしてください。

    • 一部の古いバージョンの Linux の SMB クライアントには、特定のシナリオで不具合があります。Alibaba Cloud が公式にサポートしていない Linux オペレーティングシステムのバージョンを使用する場合、SMB ファイルシステムの信頼性は保証できません。

    このトピックは、以下の公式サポート対象の Linux ディストリビューションにのみ適用されます:

    オペレーティングシステム

    バージョン

    CentOS

    CentOS 7.6 64 ビット: 3.10.0-957.21.3.el7.x86_64 以降

    Alibaba Cloud Linux

    • Alibaba Cloud Linux 2.1903 64 ビット: 4.19.43-13.2.al7.x86_64 以降

    • Alibaba Cloud Linux 3.2104 64 ビット: 5.10.23-4.al8.x86_64 以降

    Debian

    Debian 9.10 64 ビット: 4.9.0-9-amd64 以降

    Ubuntu

    Ubuntu 18.04 64 ビット: 4.15.0-52-generic 以降

    openSUSE

    openSUSE 42.3 64 ビット: 4.4.90-28-default 以降

    SUSE Linux

    SUSE Linux Enterprise Server 12 SP2 64 ビット: 4.4.74-92.35-default 以降

    CoreOS

    CoreOS 2079.4.0 64 ビット: 4.19.43-coreos 以降

  • SMB ファイルシステムが作成されていること。詳細については、「汎用型 NAS ファイルシステムの作成」をご参照ください。

  • マウントターゲットが作成されていること。詳細については、「マウントターゲットの作成」をご参照ください。

  • ネットワーク接続が確立されていること。

    • Linux ECS インスタンスと SMB ファイルシステムが同じ VPC 内にあることを確認してください。

    • ファイルシステムに関連付けられているセキュリティグループをチェックして、Linux ECS インスタンスが SMB ファイルシステムにアクセスできることを確認してください。

    • TCP ポート 445 が開いていることを確認してください。SMB ファイルシステムは TCP ポート 445 を介して通信します。

      ポート 445 が開いていない場合は、ターゲット ECS インスタンスのセキュリティグループに、ポート 445 へのアクセスを許可するセキュリティグループルールを追加してください。詳細については、「セキュリティグループルールの追加」をご参照ください。

CIFS クライアントのインストール

Linux クライアントに SMB ファイルシステムをマウントする前に、CIFS クライアントをインストールする必要があります。これは、各 Linux サーバーで一度だけ実行する必要がある設定です。

  1. Linux ECS インスタンスに接続します。詳細については、「接続方法」をご参照ください。

  2. CIFS クライアントをインストールします。

    Ubuntu および Debian

    apt-get パッケージ管理ツールを使用します。

    sudo apt-get update
    sudo apt-get install cifs-utils

    RHEL、CentOS、および Alibaba Cloud Linux

    yum パッケージマネージャーを使用します。

    sudo yum install cifs-utils

    OpenSUSE および SLES12-SP2

    zypper ツールを使用します。

    sudo zypper install cifs-utils

    CoreOS

    以下の方法でクライアントをインストールします。

    1. SELinux を設定します。

      sed -i 's/SELINUXTYPE=mcs/SELINUXTYPE=targeted/' /etc/selinux/config
    2. CoreOS 上で CIFS クライアントツールを手動でコンパイルします。

      これらの手順に従って Fedora コンテナを起動し、CIFS クライアントツールをコンパイルできます。または、CoreOS 用の Alibaba Cloud 公式 CIFS ツールキットをダウンロードし、 /tmp/ または /bin ディレクトリにコピーすることもできます。

      1. CoreOS 上で、Fedora コンテナを起動して cifs-utils をコンパイルします。

        docker run -t -i -v /tmp:/cifs fedora /bin/bash
      2. Docker 環境で、以下のコマンドを順番に実行します。

        1. yum groupinstall -y "Development Tools" "Development Libraries"
        2. yum install -y bzip2
        3. curl https://download.samba.org/pub/linux-cifs/cifs-utils/cifs-utils-6.9.tar.bz2 --output cifs-utils-6.9.tar.bz2;
        4. bunzip2 cifs-utils-6.9.tar.bz2 && tar xvf cifs-utils-6.9.tar
        5. cd cifs-utils-6.9; ./configure && make
        6. cp mount.cifs /cifs/
        7. exit

SMB ファイルシステムのマウント

Linux では、NAS の SMB ファイルシステムを手動または自動でマウントできます。手動マウントは一時的なもので、サーバーが再起動するたびに繰り返す必要があります。自動マウントは永続的で、再起動後に繰り返す必要はありません。再起動後もマウントが維持されるように、ファイルシステムを手動でのマウントに成功した後で、自動マウントを設定することを推奨します。

手動マウント

NAS の SMB ファイルシステムを Linux ECS インスタンスにマウントするには、ファイルシステムのマウントターゲットアドレスを使用する必要があります。

  1. Linux ECS インスタンスに接続します。詳細については、「接続方法」をご参照ください。

  2. 次のコマンドを実行してファイルシステムをマウントします。

    sudo mount -t cifs //file-system-id.region.nas.aliyuncs.com/myshare /mnt -o vers=3.0,guest,uid=0,gid=0,dir_mode=0755,file_mode=0755,mfsymlinks,cache=strict,rsize=1048576,wsize=1048576

    コマンドの構文は次のとおりです: sudo mount -t cifs //<mount-target-address>/myshare <mount-directory> -o <mount-options>

    パラメーター

    説明

    ファイルシステムタイプ

    Linux オペレーティングシステムに SMB ファイルシステムをマウントする場合、 -t cifs パラメーターを指定する必要があります。

    マウントターゲットアドレス

    ファイルシステムのマウントターゲットを作成するときに自動的に生成されるマウントターゲットアドレスです。 プレースホルダーを実際の値に置き換えます。 マウントターゲットアドレスを取得するには、NAS コンソールにログインし、ターゲットファイルシステムの ID をクリックし、マウント使用をクリックしてから、マウントポイントのアドレス 列の挂载点アイコンにカーソルを合わせます。

    myshare

    SMB ファイルシステムの共有ディレクトリの名前です。この名前は変更できません。

    マウントディレクトリ

    ファイルシステムをマウントするローカルディレクトリです。 例: /mnt/sharepath

    マウントオプション

    -o パラメーターを追加して、必須のマウントオプションを指定します:

    • vers:SMB プロトコルのバージョン。バージョン 2.1 以降がサポートされています。セキュリティとパフォーマンスを向上させるために、vers=3.0 を指定することを推奨します。

    • guest:パスワードを必要としないゲストアクセスを有効にします。このオプションは、NTLM 認証を使用するクライアントに必須です。

    • rsize:各読み取りリクエストの最大データサイズ (バイト単位) です。1048576 (1 MB) に設定することを推奨します。

    • wsize:各書き込みリクエストの最大データサイズ (バイト単位) です。1048576 (1 MB) に設定することを推奨します。

    -o パラメーターを追加して、オプションのマウントオプションを指定します:

    • uid:ファイルシステムがマウントされた後のファイル所有者のユーザー ID です。このオプションが指定されていない場合、デフォルト値は 0 です。

    • gid:ファイルシステムがマウントされた後のファイル所有者のグループ ID です。このオプションが指定されていない場合、デフォルト値は 0 です。

    • dir_mode:ディレクトリのアクセス許可です。値は 0 で始まる必要があります。 例: 0755 または 0644。このオプションが指定されていない場合、デフォルト値は 0755 です。

    • file_mode:通常ファイルのアクセス許可です。値は 0 で始まる必要があります。 例: 0755 または 0644。このオプションが指定されていない場合、デフォルト値は 0755 です。

    • mfsymlinks:シンボリックリンクのサポートを有効にします。

    • cache:

      • cache=strict:SMB ファイルシステムのクライアント側のキャッシュを有効にします。cache オプションが指定されていない場合、これがデフォルト設定です。

      • cache=none:SMB ファイルシステムのクライアント側のキャッシュを無効にします。

    • atime|relatime:ファイルのアクセス時刻の更新が業務上、重要でない場合は、atime オプションを使用しないでください。デフォルトでは、ファイルシステムは relatime オプションでマウントされます。

    説明
    • 権限のある管理者は、SMB ファイルシステムを完全に制御できます。

    • mount | grep cifs コマンドを実行して、マウントターゲット情報を照会できます。

    • サポートされていない Linux ディストリビューションを使用する場合、カーネルバージョン 3.10.0-514 以降を使用することを強く推奨します。Linux カーネルのバージョンが 3.7 以前の場合は、マウントオプションで cache=strict パラメーターを設定する必要があります。uname -a コマンドを実行して、現在のカーネルバージョンを確認できます。

  3. mount -l コマンドを実行して、マウント結果を確認します。

    出力が次のようであれば、マウントは成功です。

    debugfs on /sys/kernel/debug type debugfs (rw,relatime)
    hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime)
    mqueue on /dev/mqueue type mqueue (rw,relatime)
    sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw,relatime)
    tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,size=800928k,mode=700)
    //xxx-cn-hangzhou.nas.aliuncs.com/mushare on /mnt type cifs (rw,relatime,vers=3.0,sec=none,cache=strict,domain=,uid=0,noforceuid,gid=0,noforcegid,addr=xxx,file_mode=0755,dir_mode=0755,soft,nounix,serverino,mapposix,rsize=1048576,wsize=1048576,echo_interval=60,actimeo=1)

    マウントが成功したら、df -h コマンドを実行して、現在のファイルシステムの容量情報を表示できます。

    マウントが失敗した場合は、問題をトラブルシューティングしてください。詳細については、「Linux での SMB マウント失敗のトラブルシューティング」をご参照ください。

  4. ファイルシステムがマウントされた後、Linux ECS インスタンスからアクセスして、読み取りまたは書き込み操作を実行できます。

    NAS SMB ファイルシステムは、通常のディレクトリとしてアクセスして使用できます。 例:

    [root@ixxxx ~]# mkdir /mnt/dir1
    [root@ixxxx ~]# mkdir /mnt/dir2
    [root@ixxxx ~]# touch /mnt/file1
    [root@ixxxx ~]# echo 'some file content' > /mnt/file2
    [root@ixxxx ~]# ls /mnt
    dir1  dir2  file1  file2  tmp

(オプション) 自動マウント

Linux ECS インスタンスの /etc/fstab ファイルを設定して、インスタンスの再起動時に SMB ファイルシステムを自動的にマウントできます。

説明

自動マウントを設定する前に、手動でのマウントが成功したことを確認してください。これにより、ECS インスタンスの起動失敗を防ぐことができます。

  1. /etc/fstab 設定ファイルを開き、自動マウント設定を追加します。

    • <file-system-id.region.nas.aliyuncs.com> を NAS ファイルシステムの実際のマウントターゲットアドレス (例: 237*******-*****.cn-hangzhou.nas.aliyuncs.com) に置き換えます。

    • </mnt> をローカルマウントディレクトリ (例: /mnt) に置き換えます。

    //file-system-id.region.nas.aliyuncs.com/myshare /mnt cifs vers=3.0,guest,uid=0,gid=0,dir_mode=0755,file_mode=0755,mfsymlinks,cache=strict,rsize=1048576,wsize=1048576 0 0

    この例の主要なパラメーターの説明については、手動マウントコマンドのパラメーターテーブルをご参照ください。その他のパラメーターは次のとおりです。

    パラメーター

    説明

    0 (wsize の後の最初の値)

    dump コマンドによってファイルシステムをバックアップする必要があるかどうかを示します。ゼロ以外の値はバックアップを示します。NAS ファイルシステムの場合、この値は 0 である必要があります。

    0 (wsize の後の 2 番目の値)

    起動時に fsck コマンドがファイルシステムをチェックする順序です。NAS ファイルシステムの場合、この値は 0 である必要があります。これは、fsck が起動時に実行されないことを示します。

  2. reboot コマンドを実行して ECS インスタンスを再起動します。

    重要

    ECS インスタンスを再起動すると、サービスが中断されます。この操作はオフピーク時に実行することを推奨します。

  3. 自動マウントが成功したことを確認してください。

    説明

    ECS インスタンスの再起動後 1 分以内に df -h コマンドを実行し、NAS ファイルシステムがマウントされていることを確認してください。

ユースケース

さまざまなユースケースに合わせて異なるマウントオプションを設定することで、最適なファイルシステムパフォーマンスを実現できます。以下のセクションでは、一般的なユースケースと推奨されるマウントオプションの設定について説明します。

Linux の共有アクセス

アクセス許可の制御なしで複数の Linux ECS インスタンス間でデータを共有するには、管理者は次のように各インスタンスにファイルシステムをマウントできます:

 mount -t cifs //file-system-id.region.nas.aliyuncs.com/myshare /mnt/sharepath -o vers=3.0,guest,mfsymlinks

次の表に、重要なパラメーターを示します。

  • file-system-id.region.nas.aliyuncs.com: ファイルシステムのマウントターゲットのアドレスです。プレースホルダーを実際の値に置き換えます。マウントターゲットのアドレスを取得するには、NAS コンソールにログインし、ターゲットファイルシステムの ID をクリックし、マウント使用 をクリックしてから、マウントポイントのアドレス 列の 挂载点 アイコンにポインターを合わせます。

  • /mnt/sharepath:ファイルシステムをマウントするローカルディレクトリです。プレースホルダーを実際のパスに置き換えてください。

マルチユーザーのホームディレクトリ

複数の Linux ECS インスタンス間でファイルシステムデータを共有する際に、アクセス許可の制御が必要な場合は、マウントプロセス中に uidgiddir_mode、および file_mode パラメーターを指定できます。

Web サーバーの共有アクセス

Apache などの Web サーバーを複数の Linux ECS インスタンスにインストールし、共有ストレージとして SMB ファイルシステムを使用できます。

説明
  • SMB ファイルシステムは、共有アクセス、水平スケーラビリティ、高可用性を提供します。ただし、その基盤となるメカニズムはローカルディスクとは異なるため、一部のシナリオでは小規模ファイルのアクセス性能が低下する可能性があります。Web サーバーのワークロードで最適なパフォーマンスを実現するには、共有が必要なファイルのみを SMB ファイルシステムに保存することを検討してください。Web サーバーアプリケーションなど、共有アクセスを必要としないコンポーネントは、ローカルディスクに配置してください。

  • Web サーバーアプリケーションは通常、大量のネットワークトラフィックを生成します。このシナリオでは、Web サーバーアクセラレーション機能を有効にする必要があります。この機能を申請するには、Alibaba Cloud NAS チームにお問い合わせください。

Windows と Linux の共有アクセス

Windows と Linux の両方の ECS インスタンスから SMB ファイルシステムの内容にアクセスする必要がある場合は、Linux ECS インスタンスにファイルシステムをマウントする際にクライアント側のキャッシュを使用する必要があります。cache=strict オプションを明示的に設定するか、同様に厳密なキャッシュを使用するデフォルトの動作をそのまま利用することもできます。

アクセス制御

Alibaba Cloud NAS の SMB ファイルシステムは、Active Directory (AD) ドメインに基づくユーザー認証とファイルシステムレベルのアクセス許可制御をサポートしています。ドメインユーザーとして SMB ファイルシステムにアクセスすることで、ファイルおよびディレクトリレベルのアクセス制御を実装できます。

AD システムに基づくユーザー認証とファイルシステムレベルのアクセス制御を実装する方法の詳細については、「SMB マウントターゲットの AD ドメインへの参加」および「AD ドメインユーザーとして Linux クライアントで SMB ファイルシステムをマウントして使用する」をご参照ください。

関連ドキュメント