BLOGTIMES
2016/10/07

Windows からユーザーがログインしていなくても NFS を使う

  windows  systemmanagemant  tutorial 
このエントリーをはてなブックマークに追加

Windows からファイル共有にアクセスするときにはネットワークドライブの割り当てを行っておくと便利です。

ところが Windows 上で動くバッチからネットワークドライブにアクセスしたいということになると一筋縄ではいきません。これはネットワークドライブの割り当てがユーザーのログイン時に行われることに起因していて、ユーザーがログインしていない状態ではネットワークドライブが存在しないからです。これが以外と困るのでなんとか回避方法がないかなと思って探してみたら、以下の IBM のナレッジベースに小技が紹介されていました。

IBM Knowledge Center - Windows サーバーでの NFS 共有のマウント

18.以下のようにして、Windows の再起動で共有を自動的にマウントするようにします。
  1. バッチ・ファイル (c:¥IBMConversionNFS¥nfsmount.bat など) を作成し、以下のように入力します。
    mount -o mtype=soft retry=10 timeout=6 casesensitive=yes anon DocsLab01.renovations.com:/nfs/viewer_data Y:
  2. 「スタート」 > 「管理ツール」 > 「タスク スケジューラ」をクリックします。
  3. 「タスク スケジューラ (ローカル)」「タスクの作成」をクリックします。
  4. 「全般」をクリックし、「名前」に nfs_auto_mount と入力します。「セキュリティー」オプションで、「ユーザーまたはグループの変更」 > 「拡張」 > 「検索開始」をクリックし、「SYSTEM」を選択します。「最上位の特権で実行する」を選択し、「OK」をクリックします。
  5. 「トリガー」 > 「新規」をクリックし、「タスクの開始」「スタートアップ時」を選択します。「OK」をクリックします。
  6. 「アクション」 > 「新規」 > 「参照」をクリックし、c:¥IBMConversionNFS¥nfsmount.bat を選択して「OK」をクリックします。
  7. 「OK」をクリックします。
マウント・アクションが SYSTEM のユーザー名を使用して行われた場合、ノードやサーバーがどのようなユーザー名で実行されていても NFS 共有にアクセスできます。

以下、具体的な手順。

準備: NFS クライアントを有効化

NFS を使うためにはあらかじめ Windows 側で NFS クライアントを有効化しておく必要があります。
Windows Server の場合には サーバーマネージャーの「役割と機能の追加」から、Windows 7/8/10 についてはコントロールパネルの「プログラムと機能」にある「Windows の機能の有効化または無効化」から「NFS クライアント」を有効にしておきます。

バッチファイルの作成

以下のようなバッチファイルを作成して、適当な場所(今回は C:\NFSMount.bat)に配置します。

NFSMount.bat

nfsadmin client start mount -o mtype=soft retry=10 timeout=6 casesensitive=yes lang=shift-jis fileaccess=777 sec=sys 192.168.1.1:/path/to/export z:

※サーバの IP やパス、ドライブレターは環境に応じて書き換えてください。

タスクの作成

タスク スケジューラを起動し、適当なフォルダでタスクの作成をクリックします。

「全般」タブは以下のように設定します。
ポイントとしては「タスクの実行時に使うユーザーアカウント」SYSTEM を指定すること、「最上位の特権で実行する」にチェックをつけておくことです。
タスクの作成 全般 - Windows からユーザーがログインしていなくても NFS を使う

「トリガー」タブは以下のように設定します。
「タスクの開始」スタートアップ時に設定しておきます。
新しいトリガー - Windows からユーザーがログインしていなくても NFS を使う
タスクの作成 トリガー - Windows からユーザーがログインしていなくても NFS を使う

「操作」タブは以下のように設定します。
新しい操作 - Windows からユーザーがログインしていなくても NFS を使う
タスクの作成 操作 - Windows からユーザーがログインしていなくても NFS を使う

最後に OK をクリックすれば終了です。
これで起動時に NFS がマウントされ、全てのユーザーで NFS にアクセスできるようになります。


    トラックバックについて
    Trackback URL:
    お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
    このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/8832
    Trackbacks
    このエントリにトラックバックはありません
    Comments
    愛のあるツッコミをお気軽にどうぞ。[policy]
    古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
    コメントはありません
    Comments Form

    コメントは承認後の表示となります。
    OpenIDでログインすると、即時に公開されます。

    OpenID を使ってログインすることができます。

    Identity URL: Yahoo! JAPAN IDでログイン