PowerShell에서 이미 매핑 된 네트워크 드라이브에 액세스


8

VMWare Workstation 내에서 Windows Server 2012 설치를 실행하고 있습니다. 공유 폴더가 활성화되어 있으므로 드라이브 Z:가에 매핑되었습니다 \\vmware-host. 탐색기에서이 드라이브에 올바르게 액세스 할 수 있습니다 ( Z:"일반"`cmd 내부에서 액세스 할 수 있음). 파일을 올바르게 열 수 있습니다.

PowerShell을 열고 시도했지만 cd Z:다음 오류가 발생했습니다.

cd : 'Z : \'경로가 없으므로 경로를 찾을 수 없습니다.

PowerShell에서 이미 매핑 된 네트워크 드라이브를 찾을 수없는 이유는 무엇 입니까?

나는 조금 구글 검색하고 New-PSDrive명령을 찾았습니다 . 나는 다음을 실행했다.

New-PSDrive -Name 'Z' -PSProvider FileSystem -Root 'Z:\'

하지만 여전히 위와 같은 오류가 발생합니다. PowerShell 내의 VMWare 공유 폴더에 액세스하려면 어떻게해야합니까?


Get-PSDrive -PSProvider FileSystem새로운 Powershell 콘솔을 열면 무엇을 보고합니까?
jscott

@jscott : 새 콘솔에서, 나는보고 A, C하고 D. 콘솔이 이미 열려 있으면에도 표시 Z됩니다. 새 콘솔이 표시되지 않는 이유는 무엇 Z입니까?
로켓 Hazmat

3
Powershell을 사용하고 있습니까? 그렇다면 "관리자 권한으로 실행"없이 실행하십시오. 관리자 권한으로 실행하는 경우 드라이브를 다시 매핑해야합니다. stackoverflow.com/questions/4742992/…
jscott

@ jscott : 관리자로 실행 중입니다. 나는 또한 달렸다 Set-ExecutionPolicy -ExecutionPolicy Unrestricted. PowerShell을 사용하여 호출 할 스크립트를 실행하려고합니다 New-ADUser.
로켓 Hazmat

@jscott : 방금 관리자 (관리자 아님)로 PowerShell을 실행 Z:했으며 아무런 문제없이 액세스 할 수있었습니다 .
로켓 Hazmat

답변:


8

실행중인 사용자가 드라이브 매핑을 사용할 수 있도록해야합니다 Powershell. 해당 사용자에게 동일한 드라이브 매핑을 제공하기 위해 다음을 수행 할 수 있습니다.

net use Z: "\\vmware-host\Shared Folders"

다음 SO 질문을 참조하십시오. 관리자로 실행중인 PowerShell에서 네트워크 드라이브에 액세스 할 수 없습니다


또한 Powershell이 ​​특정 작업을 위해 드라이브를 임시로 매핑하는 데 더 적합한 PUSHD 및 POPD (또는보다 공식적으로는 푸시 위치 및 팝 위치)의 사용을 지원한다고 언급 할 수 있습니다.
Get-HomeByFiveOClock

5

이 PowerShell 콘솔을 관리자 또는 현재 사용자로 시작하고 있습니까?

높지 않은 명령 프롬프트에서 실행하면 로컬로 매핑 된 모든 네트워크 드라이브가 표시됩니다. 나는 지금 당신과 같은 상황에 있고에 x:매핑했으며 \\vmware-host\[folder], Get-PSDrive -PSProvider FileSystem로컬로 매핑 된 모든 드라이브를 보여줍니다.

그러나이 콘솔을 관리자로 시작하면 관리자 명령 프롬프트의 경우 네트워크 연결을 공유하지 않는 다른 (두 번째) 보안 컨텍스트가 응용 프로그램을로드하는 데 사용되므로 로컬 매핑 드라이브가 표시되지 않습니다.

좋은 소식은 기본적으로 관리자 콘솔에서 드라이브를 한 번만 매핑하면되고 보안 컨텍스트 (재부팅 할 때까지)로 유지된다는 것입니다.

이를 자동화하려면 powershell 세션을 시작할 때 자동 로딩 스크립트를 읽어야합니다. 기본적으로 My Documents호출 된 폴더 WindowsPowerShell안에 Microsoft.PowerShell_profile.ps1파일 을 만드는 폴더 를 만들면 새 powershell 콘솔을 시작할 때마다 트리거됩니다. 여기에서 net use명령을 추가하거나 사용하려는 사용자 정의 함수를 추가 할 수 있습니다.

예를 들어, 관리 콘솔에서 커서를 빨간색으로 바꾸고 PS1 스크립트에 서명하기 위해 쉽게 호출 할 수있는 기능이 있습니다.


그래, 그게 여기서 일어난 일이야 드라이브가 내 사용자로 매핑되었고 PowerShell이 ​​관리자로 실행되었습니다. 저는 PowerShell이 ​​아니라 Linux 셸에 익숙합니다.
로켓 Hazmat

관리 콘솔 프롬프트에 대한 유용한 팁입니다. 세션이 상승했는지 여부를 감지하기 위해 profile.ps1에서 무엇을 사용합니까?
stib
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.