2017.12.07

共有ネットワーク接続 Windowsクライアントのコマンド操作 Samba-Ⅳ

コマンドプロンプト net use

Windowsで共有ネットワーク上のディレクトリへ接続しているときに、
別の資格情報IDで接続し直したいときがある。
そんな時は一旦サインオフしていたのだけど、やはり少々わずらわしい。
調べてみたら、net useなるコマンドがあったので使ってみた。便利で良いかも。

■ 共有ネットワーク環境はこんな感じ

  [共有PC-A]    [WindowsPC-11]
   hostname: PC-A コンピューターの名称: PC-11
   ipaddress: 192.168.1.101 ipaddress: 192.168.1.11
   user_account: hanako user_account: taro
   hanako's password: 12345 taro's passwd: abcde
   共有ディレクトリ: /home/hanako

■ 共有ネットワーク上のディレクトリに接続する: PC-11での操作

 ## 共有ネットワーク接続の状態を表示
 C:¥Users¥tato>use net 

 ## 共有ネットワーク接続を切る
 C:¥Users¥tato>use net ¥¥192.168.1.101¥hanako /delete 

 ## 共有ネットワークhanakoディレクトリにUser: hanakoで接続する
 C:¥Users¥tato>use net ¥¥192.168.1.101¥hanako /user:hanako 
 hanako's password: 12345 

 ## ファイルマネージャーを開く
 C:¥Users¥tato>explorer ¥¥192.168.1.101¥hanako 


■ ダブルクリックで実行するbatファイルを置く

デスクトップに簡単なbatファイルを置いて、ダブルクリックで実行します。
テキストエディタ、メモ帳[notepad]などで記入したら拡張子を ".bat" で保存。
<e.g.>
::共有ディレクトリ: ¥¥192.168.1.101¥hanakoへの接続
@echo off
echo.
echo hanakoへ接続します
echo.
use net ¥¥192.168.1.101¥hanako /user:hanako
pause
set TARGET_DIR=¥¥192.168.1.101¥hanako
explorer "%TARGET_DIR%"


■ IPアドレスとコンピュータ名を関連付けする hostsファイル

例えば、ルーターを超えて接続する異なるネットワーク間や、
Port445/tcpに限定したLinux-WindowsのSMB共有ネットワークでは、
コンピューターの名称を指定しての接続を求めても、そのままでは成立しないようだ。
そんな時に、IPアドレスとコンピュータの名称を関連付けする簡単な方法。
ローカル内にWINSサーバーやDNS名前解決の手段がない場合に試してみるとよいでしょう。

<hostsファイルの編集>
1. Fail: C:¥¥Windows¥system32¥drivers¥etc¥hosts
2. メモ帳[notepad]などのテキストエディタを[管理者として実行]で起動して上記ファイルを開く
3. 最終行にIPアドレスとコンピュータ名を関連付けを記入する
   ## e.g.
   192.168.1.101    PC-A

*注: Windowsのシステムでは、いわゆるコンピューターの名称とされるNetbios名とホスト名に
     ついての仕組みが異なっていて結構ややこしいことになっています。
     参考: この方の解説、[NETBIOS名とホスト名の違い] がわかりやすいようです。

green-pen miyagi©2017.8