昇格したコマンドラインプロンプトが共有ドライブにアクセスできない


62
  1. ユーザーアカウントを使用して、別のマシンから共有をマップします。
  2. 管理者特権でコマンドプロンプトを起動します(cmd.exe、右クリック、管理者として実行)。
  3. 共有ドライブ(Z :)に移動すると、次の結果になります。

The system cannot find the drive specified

ここで、昇格されていないコマンドプロンプトを開くと、Z:に移動できます。


回答:


47

管理者としてWindowsエクスプローラーを開き、ネットワーク共有を再作成しても機能しませんでした。次に、この解決策を見つけました。コマンドプロンプト自体で共有を作成します。それは私のために働いた。

net use f: \\remoteserver\subfolder      

ドライブがWindowsエクスプローラーで既にマップされている場合でも、引き続き機能しました。

注:サブフォルダーの前に単一のバックスラッシュのみを使用してください


25

おそらくそれはファイルのアクセス権の問題ではありませんが、次のものに関連しています。

  • セッションに関連付けられているネットワーク共有(つまり、異なるユーザーが異なるネットワーク共有のセットを持っている場合があります)。ユーザーは複数のセッションを持つことができます。
  • ユーザーアカウント制御の仕組み。

ほとんどのユーザーがXPで管理者アカウントを使用したため(ほとんどのプログラマーは制限付きアカウントでプログラムを動作させなかったため)、MicrosoftはVistaから始まる管理者アカウントの「制限付きバージョン」を作成しました。 」は異なるユーザーとしてカウントされます(ユーザーは別々のセッションであるため)。

昇格したWindowsエクスプローラー(つまり、「管理者として実行」で起動されたWindowsエクスプローラー)を起動して、すべてのネットワーク共有を再作成してみてください。

共有を再作成する必要がある理由は、このMSDNブログエントリで説明されています。

Windows VistaのUACでマップされたネットワークドライブ

編集:ブログエントリの関連部分(強調鉱山):

物事を簡素化するために、UACを有効にして管理者として実行していると仮定します(ただし、安全性を高めるには、標準ユーザーとして実行することをお勧めします)。ログインすると、新しいトークンが作成されます。次に、UACが有効になっていることを検出し、2回ログインして、新しい(高度に制限された)トークンを作成します。これは、シェルの起動に使用されます。2つの個別のログインイベントがあります
(...)
この便利な機能により、マップされたネットワークドライブに関する問題が発生しやすくなります。Windows 2000 SP2より前は、デバイス名は明示的に削除されるかシステムが再起動されるまでグローバルに表示されたままでした。セキュリティ上の理由から、Windows 2000 SP2からこの動作を変更しました。この時点から、すべてのデバイスは認証ID(LUID)に関連付けられています。これは各ログオンセッションに対して生成されたIDです。
(...)
これらのマップされたドライブはLUIDに関連付けられており、昇格したアプリケーションは別のログインイベント中に生成された別のLUIDを使用しているため、昇格したアプリケーションはこのユーザーのマップされたドライブを表示しなくなります。


4
昇格したWindowsエクスプローラーを使用しましたが、昇格したコマンドプロンプトでマップされたドライブが見つかりません。
アイスラバ

1
私の理解では、Windows 7で「管理者として実行」すると、実際には「Administrator」(Windows XP-ish)という名前のアカウントとしてではなく、自分のアカウントとして実行されますが、スーパーユーザービットが設定されます。その場合、私が説明した2つのシナリオに違いがある理由がわかりません。
mindless.panda

1
いくつかの側面の管理者アカウントの2つの「バージョン」は、アクセス許可が異なる同じアカウントであっても、異なるアカウントとして機能するため、違いがあります(リンク先のブログで説明しています)。
アルベルトマルティネス

1
@ mindless.panda:あなたは絶対に正しい。[管理者として実行]オプションは、UAC関連の管理者設定のみを指します。単にAdministratorsグループとは関係ありません。UACを無効にすると(完全に有効にするために再起動が必要になる場合があります)、UACが無効になっている間は[管理者として実行]オプションが存在しない場合があります。管理者のコマンドプロンプトは、共有ドライブをUNCとして引き続き使用できることに注意してください。たとえば、\\ servername \ dirname --Microsoftが設計したために失われるのはドライブ文字だけです。それらをリメイクし、そのプロンプトですべてが良いです。
TOOGAM

私は管理者です。エクスプローラーウィンドウを昇格させることはできません(Win 8)
user15507

7

Alberto Martinezの回答は、マップされたネットワークドライブにアクセスできない理由を説明しています。

問題を解決するためのレジストリの修正は次のとおりです。

  • regeditを開いて HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
  • EnableLinkedConnectionsという名前の新しいDWORD(32ビット)値を追加します。
  • 値を1(または00000001)に調整します。

regeditを終了し、コンピューターを再起動します。



1
これは間違いなくこの問題の最良の解決策です。
アレコフ

1
Win10では動作しません
クリスチャンシェーファー

またはWindows Server 2016
RM

1

ユーザーアカウントを使用して、別のマシンから共有をマップします。

そのネットワークドライブは、ネットワークドライブにマップされたユーザーアカウントでのみ使用できます。


0

管理者としてcmdを起動し、コマンドを入力net use z: \\net\path /persistent:yesして完了です。私がやったもう1つのことは、これがopの質問を超えて拡張されていることですテキストボックスなので、次のようになりました%windir%\system32\cmd.exe /K z:。「開始」パラメータの設定が機能しなかったためです。これにより、タスクバーに管理者としてcmdウィンドウを起動するアイコンが表示され、マップされたドライブにプロンプ​​トが表示されました。また、プロパティに再度アクセスし、フォント、色、ウィンドウサイズ、位置、テキストスクロールバックバッファ、コマンド履歴バッファサイズをカスタマイズすることを忘れないでください!


-2

ネットワークパスを確認し、マップされたドライブを切断します(Z :) CMDを管理者として実行し、そこで「net use」コマンドを使用してドライブを再度マップします。net use Z:\ SharePathその後、再度アクセスしてください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.