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

비밀번호

댓글 작성자
 




1  2  3  4  5  6  7  8  9  10  11  12  [13]  14  15  ...
NoWriterDateCnt.TitleFile(s)
13724정성태9/3/202413531닷넷: 2296. Win32/C# - 자식 프로세스로 HANDLE 상속파일 다운로드1
13723정성태9/2/202412413C/C++: 170. Windows - STARTUPINFO의 cbReserved2, lpReserved2 멤버 사용자 정의파일 다운로드2
13722정성태9/2/20249975C/C++: 169. C/C++ - CRT(C Runtime) 함수에 의존성이 없는 프로젝트 생성
13721정성태8/30/20249526C/C++: 168. Visual C++ CRT(C Runtime DLL: msvcr...dll)에 대한 의존성 제거 - 두 번째 이야기
13720정성태8/29/202410382VS.NET IDE: 193. C# - Visual Studio의 자식 프로세스 디버깅
13719정성태8/28/20249866Linux: 79. C++ - pthread_mutexattr_destroy가 없다면 메모리 누수가 발생할까요?
13718정성태8/27/202412625오류 유형: 921. Visual C++ - error C1083: Cannot open include file: 'float.h': No such file or directory [2]
13717정성태8/26/202412573VS.NET IDE: 192. Visual Studio 2022 - Windows XP / 2003용 C/C++ 프로젝트 빌드
13716정성태8/21/202410699C/C++: 167. Visual C++ - 윈도우 환경에서 _execv 동작 [1]
13715정성태8/19/202413074Linux: 78. 리눅스 C/C++ - 특정 버전의 glibc 빌드 (docker-glibc-builder)
13714정성태8/19/202410655닷넷: 2295. C# 12 - 기본 생성자(Primary constructors) (책 오타 수정) [3]
13713정성태8/16/202413488개발 환경 구성: 721. WSL 2에서의 Hyper-V Socket 연동
13712정성태8/14/202411642개발 환경 구성: 720. Synology NAS - docker 원격 제어를 위한 TCP 바인딩 추가
13711정성태8/13/202412448Linux: 77. C# / Linux - zombie process (defunct process) [1]파일 다운로드1
13710정성태8/8/202413581닷넷: 2294. C# 13 - (6) iterator 또는 비동기 메서드에서 ref와 unsafe 사용을 부분적으로 허용파일 다운로드1
13709정성태8/7/202411783닷넷: 2293. C# - safe/unsafe 문맥에 대한 C# 13의 (하위 호환을 깨는) 변화파일 다운로드1
13708정성태8/7/202412667개발 환경 구성: 719. ffmpeg / YoutubeExplode - mp4 동영상 파일로부터 Audio 파일 추출
13707정성태8/6/202412222닷넷: 2292. C# - 자식 프로세스의 출력이 4,096보다 많은 경우 Process.WaitForExit 호출 시 hang 현상파일 다운로드1
13706정성태8/5/202411520개발 환경 구성: 718. Hyper-V - 리눅스 VM에 새로운 디스크 추가
13705정성태8/4/202411861닷넷: 2291. C# 13 - (5) params 인자 타입으로 컬렉션 허용 [2]파일 다운로드1
13704정성태8/2/202413562닷넷: 2290. C# - 간이 dotnet-dump 프로그램 만들기파일 다운로드1
13703정성태8/1/202411607닷넷: 2289. "dotnet-dump ps" 명령어가 닷넷 프로세스를 찾는 방법
13702정성태7/31/202413004닷넷: 2288. Collection 식을 지원하는 사용자 정의 타입을 CollectionBuilder 특성으로 성능 보완파일 다운로드1
13701정성태7/30/202414064닷넷: 2287. C# 13 - (4) Indexer를 이용한 개체 초기화 구문에서 System.Index 연산자 허용파일 다운로드1
13700정성태7/29/202413598디버깅 기술: 200. DLL Export/Import의 Hint 의미
13699정성태7/27/202414110닷넷: 2286. C# 13 - (3) Monitor를 대체할 Lock 타입파일 다운로드1
1  2  3  4  5  6  7  8  9  10  11  12  [13]  14  15  ...