2014-09-03 1 views
0

나는 문제 runas /USER:testuser cmd 또는 runas /USER:testuser powershell을 실행이 : testuser를가 RDP 세션을 열 경우사용자 홈 폴더 포인트

  1. %의 HOMEPATH %의 포인트 사용자를 \ 수 \ testuser를을
  2. testuser를 인 경우 로그 오프, 환경은 나에게 이상한 같습니다

PS C:\Windows\system32> echo $env:HOMEPATH 
\Windows\system32 
PS C:\Windows\system32> echo $env:APPDATA 
C:\Users\testuser\AppData\Roaming 
PS C:\Windows\system32> echo $env:USERPROFILE 
C:\Users\testuser 
PS C:\Windows\system32> cd ~ 
PS C:\Windows\system32> cd $home 
PS C:\Windows\system32>   
내가 내 스케줄 SCRI에 대한 올바른 %의 HOMEPATH %의 필요 태평양 표준시. 예상되는 행동인가? 그것에 대해 무엇을 할 수 있습니까?

두 개의 Win2008, Win7, Win2012에서 동일한 결과를 테스트했습니다.

업데이트 : 초기 문제는 매달린 예약 된 작업이었습니다. runas로 테스트했을 때 ssh 명령은 사용자 디렉토리에 배치 된 구성을 보지 못했고 사용자에게 추가 정보를 묻습니다.

+0

HOMEPATH는 기존 기술이며 무엇을 사용하고 있습니까? –

+0

게시물을 업데이트했습니다. 내 예약 된 스크립트는 사용자 설정 파일 (gpg, git, ssh)을 찾을 수 없으며 % HOMEPATH % 변수가 그 일을 담당합니다. – maxnasonov

+0

음, 환경 변수 일뿐입니다. 스크립트는 필요한 모든 것을 설정할 수 있습니다. –

답변

0

ssh에 대해 언급 한 이래로 비슷한 문제를 해결 했으므로 답을 찔러야합니다. 나는 cwRsync 3.1.0을 사용하고 있으며 패키지와 함께 제공되는 예제 스크립트는 % HOMEPATH %를 사용하여 rsync 실행을 위해 % HOME %을 (를) 설정합니다. 숙련 된 사용자와 마찬가지로 호스트에 로그인하지 않은 대상 사용자와 함께 'runas'를 사용하면 Windows \ system32.ssh가 없으므로 스크립트가 호스트 ID를 허용하도록 중지됩니다. HOMEPATH는 Windows \ system32로 설정됩니다.

대상 사용자가 호스트에 로그인했지만 runas가 고유 한 사용자 로그인으로 실행되면 HOMEPATH가 사용자의 프로필 경로 (Users \)로 설정되고 .ssh 경로가 해결됩니다.

내 솔루션은 % HOMEPATH % 대신 % USERPROFILE %을 (를) 사용하여 스크립트를 변경하는 것이 었습니다. https://serverfault.com/questions/29948/difference-between-profile-and-home-pathhttp://blogs.msdn.com/b/patricka/archive/2010/03/18/where-should-i-store-my-data-and-configuration-files-if-i-target-multiple-os-versions.aspx에는 % HOMEPATH %는 사용자 콘텐츠 용이고 % USERPROFILE %는 설정 용이고, 아마도 .ssh를 가리키는 것이 더 좋습니다.

관련 문제