Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 1개 있습니다.)

TFS에 설치된 SharePoint 의 PowerShell 콘솔 띄우는 방법

SharePoint를 설치하면 전용 PowerShell 아이콘이 하나 생기고, 그 안에서 SharePoint 객체를 다룰 수 있는데요. TFS를 통해 SharePoint를 설치한 경우에는 그 아이콘이 없습니다. 그래서, 일반 PowerShell 콘솔을 띄우고 SP 개체를 접근하려면 오류가 발생합니다.

PS D:\bin> $h = Get-SPServiceHostconfig
Get-SPServiceHostconfig : The term 'Get-SPServiceHostconfig' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:29
+ $h = Get-SPServiceHostconfig <<<<
    + CategoryInfo          : ObjectNotFound: (Get-SPServiceHostconfig:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

이런 경우, 수작업으로 PowerShell 용 SharePoint 어셈블리를 추가해 주면 됩니다. 그런데, 저는 다음과 같은 오류가 발생하는군요. ^^

PS C:\Windows\system32> Add-PSSnapin Microsoft.SharePoint.PowerShell
The local farm is not accessible. Cmdlets with FeatureDependencyId are not registered.

이는 현재 PowerShell 콘솔을 실행한 윈도우의 사용자 계정이 SharePoint_Config 데이터베이스에 권한이 없기 때문입니다. 이와 관련해서는 다음의 글을 참고하셔서 SharePoint_Shell_Access 와 DB_Owner 권한을 추가해 주면 됩니다.

The local farm is not accessible. Cmdlets with FeatureDependencyId are not registered 
; http://www.sharepointassist.com/2010/01/29/the-local-farm-is-not-accessible-cmdlets-with-featuredependencyid-are-not-registered/comment-page-1/

이젠 Add-PSSnapin 명령어 실행은 잘 되지만, 끝이 아니었습니다. ^^

PS C:\Windows\system32> $h = Get-SPServiceHostconfig
Get-SPServiceHostconfig : Microsoft SharePoint is not supported with version 4.0.30319.18010 of the Microsoft .Net Runtime.
At line:1 char:6
+ $h = Get-SPServiceHostconfig
+      ~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidData: (Microsoft.Share...ServiceSettings:SPCmdletGetIisWebServiceSettings) [Get-SPServiceHostConfig], PlatformNotSupportedException
    + FullyQualifiedErrorId : Microsoft.SharePoint.PowerShell.SPCmdletGetIisWebServiceSettings

이 문제는 "Microsoft.SharePoint.PowerShell" 어셈블리는 .NET 2.0 용 어셈블리이고 .NET 2.0 기반에서만 정상동작하지만, 윈도우 서버 2012에 포함된 PowerShell 이 .NET 4.0 기반으로 실행되기 때문입니다.

해결책은 다음의 글에 나오는데요.

SharePoint 2010 Management Shell - .Net 4.0 runtime version error
; http://blogs.technet.com/b/mspfe/archive/2012/09/06/sharepoint-2010-management-shell-net-4-0-runtime-version-error.aspx

즉, PowerShell 콘솔을 .NET 2.0 기반으로 실행하라고 지정해 주면 되는 것입니다.

C:\Windows\System32\WindowsPowerShell\v1.0\PowerShell.exe -Version 2 







[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]






[최초 등록일: ]
[최종 수정일: 4/9/2013]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... [106]  107  108  109  110  111  112  113  114  115  116  117  118  119  120  ...
NoWriterDateCnt.TitleFile(s)
11335정성태10/18/201721102.NET Framework: 694. 닷넷 - <Module> 클래스의 용도
11334정성태10/18/201721699디버깅 기술: 105. windbg - k 명령어와 !clrstack을 조합한 호출 스택을 얻는 방법
11333정성태10/17/201721124오류 유형: 422. 윈도우 업데이트 - Code 9C48 Windows update encountered an unknown error.
11332정성태10/17/201721698디버깅 기술: 104. .NET Profiler + 디버거 연결 + .NET Exceptions = cpu high
11331정성태10/16/201719558디버깅 기술: 103. windbg - .NET 4.0 이상의 환경에서 모든 DLL에 대한 심벌 파일을 로드하는 파이썬 스크립트
11330정성태10/16/201718541디버깅 기술: 102. windbg - .NET 4.0 이상의 환경에서 DLL의 심벌 파일 로드 방법 [1]
11329정성태10/15/201723913.NET Framework: 693. C# - 오피스 엑셀 97-2003 .xls 파일에 대해 32비트/64비트 상관없이 접근 방법파일 다운로드1
11328정성태10/15/201726984.NET Framework: 692. C# - 하나의 바이너리로 환경에 맞게 32비트/64비트 EXE를 실행하는 방법파일 다운로드1
11327정성태10/15/201720554.NET Framework: 691. AssemblyName을 .csproj에서 바꾼 경우 빌드 오류 발생하는 문제파일 다운로드1
11326정성태10/15/201720411.NET Framework: 690. coreclr 소스코드로 알아보는 .NET 4.0의 모듈 로딩 함수 [1]
11325정성태10/14/201721098.NET Framework: 689. CLR 4.0 환경에서 DLL 모듈의 로드 주소(Base address) 알아내는 방법
11324정성태10/13/201722599디버깅 기술: 101. windbg - "*** WARNING: Unable to verify checksum for" 경고 없애는 방법
11322정성태10/13/201721329디버깅 기술: 100. windbg - .NET 4.0 응용 프로그램의 Main 메서드에 Breakpoint 걸기
11321정성태10/11/201722693.NET Framework: 688. NGen 모듈과 .NET Profiler
11320정성태10/11/201723682.NET Framework: 687. COR_PRF_USE_PROFILE_IMAGES 옵션과 NGen의 "profiler-enhanced images" [1]
11319정성태10/11/201731289.NET Framework: 686. C# - string 배열을 담은 구조체를 직렬화하는 방법
11318정성태10/7/201722804VS.NET IDE: 122. 비주얼 스튜디오에서 관리자 권한을 요구하는 C# 콘솔 프로그램 제작 [1]
11317정성태10/4/201728486VC++: 120. std::copy 등의 함수 사용 시 _SCL_SECURE_NO_WARNINGS 에러 발생
11316정성태9/30/201725722디버깅 기술: 99. (닷넷) 프로세스(EXE)에 디버거가 연결되어 있는지 아는 방법 [4]
11315정성태9/29/201742483기타: 68. "시작하세요! C# 6.0 프로그래밍: 기본 문법부터 실전 예제까지" 구매하신 분들을 위한 C# 7.0/7.1 추가 문법 PDF [8]
11314정성태9/28/201724166디버깅 기술: 98. windbg - 덤프 파일로부터 닷넷 버전 확인하는 방법
11313정성태9/25/201722208디버깅 기술: 97. windbg - 메모리 덤프로부터 DateTime 형식의 값을 알아내는 방법파일 다운로드1
11312정성태9/25/201725681.NET Framework: 685. C# - 구조체(값 형식)의 필드를 리플렉션을 이용해 값을 바꾸는 방법파일 다운로드1
11311정성태9/20/201718046.NET Framework: 684. System.Diagnostics.Process 객체의 명시적인 해제 권장
11310정성태9/19/201723117.NET Framework: 683. WPF의 Window 객체를 생성했는데 GC 수집 대상이 안 되는 이유 [3]
11309정성태9/13/201720091개발 환경 구성: 335. Octave의 명령 창에서 실행한 결과를 복사하는 방법
... [106]  107  108  109  110  111  112  113  114  115  116  117  118  119  120  ...