#author("2020-08-14T02:57:09+00:00","default:sysosa","sysosa") #author("2020-08-14T02:59:49+00:00","default:sysosa","sysosa") &size(10){過去記事:[[windowsServer/nfs200806]]}; &color(green){Windows Server 2019 Essentials};はライセンス的にストレージの上限はない. windowsのGUI操作で新規ユーザのフォルダを作ったり、ACLを駆使した複数ユーザ限定なフォルダなど管理的には非常に簡便である. っで、この&color(green){Windows Server 2019 Essentials};のこれら共有フォルダをNFSにしてLinuxらにマウントさせてみる. ***共有向けドライブの作成 [#vc0e3579] 記憶域プールからホームディレクトリ向けの&color(magenta){Hドライブ};とプロジェクト向けな&color(crimson){Sドライブ};を設ける &color(red){*};&size(10){記憶域プールの構築、切り出しなどはここでは扱わない}; 「サーバーマネージャ」を立ち上げて、左ペインで「ファイルサービスと記憶域サービス」を選択後に「ディスク」を選ぶ &ref(2020y08m07d_220606449.png,nolink); &ref(2020y08m07d_220614344.png,nolink); このwindowsServerには、40GBのCドライブを設置して、追加で 64GB と 128GB のディスクを追加している。 &ref(2020y08m07d_221116000.png,nolink); 64GB と 128GB のそれぞれを選択して、その右クリックから「オンラインにする」を有効にします。 その後に再度ディスクを選択して、その右クリックから「ボリュームの新規作成...」で新しいボリュームウイザードでドライブの定義とフォーマットを行います。 &ref(2020y08m07d_221124320.png,nolink); &ref(2020y08m07d_221757047.png,nolink); っで2つドライブが追加された &ref(2020y08m07d_222500280.png,nolink); この2つのドライブをNFS供出させる ***機能の追加 [#f84bf2aa] windowsServerにNFSサーバの機能を持たせるので、まずは「サーバーマネージャ」からNFSサーバの機能を追加させる 「サーバーマネージャ」を開いて「管理」->「役割と機能の追加」を選ぶ &ref(2020y08m07d_215112761.png,nolink); 「役割と機能の追加ウィザード」が立ち上がる。「次へ」ボタンを押下し続け、「サーバーの役割」項目にて役割として「NFSサーバー」を選択します。 &ref(2020y08m07d_215542729.png,nolink); チェックボックスを有効にすると、下記画面が表示されます。その画面下部の「機能の追加」ボタンを押下します。 &ref(2020y08m07d_215740937.png,nolink); 元の「役割と機能の追加ウィザード」画面に戻り、再度「次へ」ボタンを押下し続けます。 「確認」項目で、「インストール」ボタンを押下して完了させます。 ***nfsサービスプリンシパルを設ける [#g7b8a03c] nfsクライアントとなるマシンにnfsサービスプリンシパルを付けます。 sambaADで言うところの「samba-tool spn add nfs/client.biosym.local client$」 参照[[samba/NFS#m2dade07]] まずはwindowsADに参加しているマシンの今持っているサービスプリンシパルは下記で調べられる #code(nonumber){{ C:\Users\Administrator>setspn -L centos7 次の項目に登録されている CN=CENTOS7,CN=Computers,DC=biosym,DC=local: RestrictedKrbHost/CENTOS7 HOST/CENTOS7 RestrictedKrbHost/CENTOS7.biosym.local HOST/CENTOS7.biosym.local C:\Users\Administrator> }} っでnfs識別子を加える #code(nonumber){{ C:\Users\Administrator>setspn -A nfs/centos7.biosym.local centos7 ドメイン DC=biosym,DC=local を確認しています CN=CENTOS7,CN=Computers,DC=biosym,DC=local の ServicePrincipalNames を登録しています nfs/centos7.biosym.local 更新されたオブジェクト C:\Users\Administrator>setspn -L centos7 <--- 確認 次の項目に登録されている CN=CENTOS7,CN=Computers,DC=biosym,DC=local: nfs/centos7.biosym.local RestrictedKrbHost/CENTOS7 HOST/CENTOS7 RestrictedKrbHost/CENTOS7.biosym.local HOST/CENTOS7.biosym.local C:\Users\Administrator> }} 次にnfsサーバとなるwindowsサーバにもnfsサービスプリンシパルを付ける &color(red){*};&size(10){nfsサーバ/クライアント共にnfsサービスプリンシパルが必要です}; #code(nonumber){{ C:\Users\Administrator>setspn -A nfs/windows2019e.biosym.local windows2019e ドメイン DC=biosym,DC=local を確認しています CN=WINDOWS2019E,OU=Domain Controllers,DC=biosym,DC=local の ServicePrincipalNames を登録しています nfs/windows2019e.biosym.local 更新されたオブジェクト C:\Users\Administrator> }} ***NFS共有フォルダへ設定 [#ubbffc75] ホームディレクトリ向けの&color(magenta){Hドライブ};とプロジェクト向けな&color(crimson){Sドライブ};を設けた &ref(2020y08m13d_234743439.png,nolink); まずはホームディレクトリから &color(magenta){Hドライブ};を選択して、その右クリックから「プロパティ」を開き、「NFS共有」タブを開きます &ref(2020y08m13d_235145414.png,nolink); そこにある「NFS共有管理」欄の「NFS共有の管理...」ボタンを押下します &ref(2020y08m13d_235355007.png,nolink); 開いた「NFSの詳細な共有」画面にて -「このフォルダーを共有する」を有効にして -「設定」の共有名を「home」 この値はnfsマウントする際のフォルダ名になります -「エンコード」はそのままの「ANSI」 -認証は「Krb5」「Krb5i」「Krb5」を有効にします 「サーバー認証なし」を選んでもいいが、同じwindowsADに参加しているLinuxマシンならKerberosでいいのではと。 &ref(2020y08m14d_114701586.png,nolink); 次に、同じ「NFSの詳細な共有」画面の「アクセス許可」ボタンを押下します。 &ref(2020y08m14d_115233274.png,nolink); これはクライアントの接続制限を課すもので「/etc/exports」な感じでしょうか。 特定のマシンに読み書き(rw)を与えて、「no_root_squash」を付けたりできます。 ここでは「Kerberos」にしたので全てに読み書き(rw)を与えることにしました。 &ref(2020y08m14d_115621873.png,nolink); ***Linuxからnfsマウント [#if1ea9f7] ごく単純にnfsマウント操作でマウント可能です #code(nonumber){{ [root@centos7 ~]# mount -o sec=krb5 windows2019e:/home /home [root@centos7 ~]# df -Th /home Filesystem Type Size Used Avail Use% Mounted on windows2019e:/home nfs4 64G 612M 64G 1% /home [root@centos7 ~]# }}