- blogs:
- cles::blog

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



Windows からファイル共有にアクセスするときにはネットワークドライブの割り当てを行っておくと便利です。
ところが Windows 上で動くバッチからネットワークドライブにアクセスしたいということになると一筋縄ではいきません。これはネットワークドライブの割り当てがユーザーのログイン時に行われることに起因していて、ユーザーがログインしていない状態ではネットワークドライブが存在しないからです。これが以外と困るのでなんとか回避方法がないかなと思って探してみたら、以下の IBM のナレッジベースに小技が紹介されていました。
IBM Knowledge Center - Windows サーバーでの NFS 共有のマウント
18.以下のようにして、Windows の再起動で共有を自動的にマウントするようにします。
- バッチ・ファイル (c:¥IBMConversionNFS¥nfsmount.bat など) を作成し、以下のように入力します。
mount -o mtype=soft retry=10 timeout=6 casesensitive=yes anon DocsLab01.renovations.com:/nfs/viewer_data Y:- 「スタート」 > 「管理ツール」 > 「タスク スケジューラ」をクリックします。
- 「タスク スケジューラ (ローカル)」の「タスクの作成」をクリックします。
- 「全般」をクリックし、「名前」に nfs_auto_mount と入力します。「セキュリティー」オプションで、「ユーザーまたはグループの変更」 > 「拡張」 > 「検索開始」をクリックし、「SYSTEM」を選択します。「最上位の特権で実行する」を選択し、「OK」をクリックします。
- 「トリガー」 > 「新規」をクリックし、「タスクの開始」に「スタートアップ時」を選択します。「OK」をクリックします。
- 「アクション」 > 「新規」 > 「参照」をクリックし、c:¥IBMConversionNFS¥nfsmount.bat を選択して「OK」をクリックします。
- 「OK」をクリックします。
マウント・アクションが SYSTEM のユーザー名を使用して行われた場合、ノードやサーバーがどのようなユーザー名で実行されていても NFS 共有にアクセスできます。
以下、具体的な手順。
† 準備: NFS クライアントを有効化
NFS を使うためにはあらかじめ Windows 側で NFS クライアントを有効化しておく必要があります。
Windows Server の場合には サーバーマネージャーの「役割と機能の追加」から、Windows 7/8/10 についてはコントロールパネルの「プログラムと機能」にある「Windows の機能の有効化または無効化」から「NFS クライアント」を有効にしておきます。
† バッチファイルの作成
以下のようなバッチファイルを作成して、適当な場所(今回は C:\NFSMount.bat)に配置します。
NFSMount.bat
※サーバの IP やパス、ドライブレターは環境に応じて書き換えてください。
† タスクの作成
タスク スケジューラを起動し、適当なフォルダでタスクの作成をクリックします。
「全般」タブは以下のように設定します。
ポイントとしては「タスクの実行時に使うユーザーアカウント」で SYSTEM を指定すること、「最上位の特権で実行する」にチェックをつけておくことです。
「トリガー」タブは以下のように設定します。
「タスクの開始」をスタートアップ時に設定しておきます。
「操作」タブは以下のように設定します。
最後に OK をクリックすれば終了です。
これで起動時に NFS がマウントされ、全てのユーザーで NFS にアクセスできるようになります。
このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/8832
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。
OpenID を使ってログインすることができます。
2 . 年次の人間ドックへ(94704)
3 . 福岡銀がデマの投稿者への刑事告訴を検討中(94627)
4 . 三菱鉛筆がラミーを買収(94340)
5 . 2023 年分の確定申告完了!(1つめ)(94324)