Exchange 2010 Verteilergruppe auch extern erreichbar machen

8 Juni 2013

Um eine allgemeine Adresse mail@domain.de mehreren Benutzern zugänglich zu machen, kann man eine Verteilergruppe im Exchange einrichten. Diese bekommt einfach den passenden Aias mail.

Damit diese Adresse auch von extern erreichbar ist, muss man allerdings noch bei den Nachrichtenübermittlungseinstellungen der Verteilergruppe bei “Einschränkungen für die Nachrichtenübermittlung” den Punkt “Authentifizierung aller Absender anfordern” ausschalten.

Per Powershell gehts mittels

set-DistributionGroup –identity "mail"
-RequireSenderAuthenticationEnabled $false

Remote Desktop Fehlermeldung: Die Verbindung kann nicht aufrechterhalten werden, da die Identität des Remotecomputers nicht überprüft werden konnte.

7 Juni 2013

Wer die Fehlermeldung

Die Verbindung kann nicht aufrechterhalten werden, da die Identität des Remotecomputers nicht überprüft werden konnte.

beim Versuch eine Remotedesktopverbindung aufzubauen, der wundert sich zunächst. Zunächst wurden die Remotedesktop-Einstellungen überprüft. Hier kann üblicherweise beim Register “Leistung” unter Serverauthentifizierung eingestellt werden, dass die Verbindung unter einem gewissen Sicherheitsstandard nicht hergestellt werden soll.

Allerdings klappte bei obiger Meldung die Verbindung immer noch nicht, obwohl “Verbinden und keine Warnungen anzeigen” ausgewählt war.

Was tun? Durch Zufall wurde entdeckt, dass sich der Remote-Rechner sowie der Zielrechner in der Zukunft befanden! Genau 25 Minuten voraus. So wie es sich momentan darstellt, scheint dies der ausschlaggebende Punkt gewesen zu sein. Nachdem die Uhrzeit der Systeme korrekt gesetzt wurde, klappte die Verbindung. Allerdings bleibt noch ein Restzweifel, weil einer der beiden Rechner gleichzeitig wegen Update einspielen neu gestartet wurde. Die involvierten Rechner waren mit Windows Vista SP2 eingerichtet.

Datei- und Verzeichnisdatum mittels Powershell manipulieren

6 Mai 2013

Für bestimmte Aktionen kann es hilfreich sein, die Uhrzeit einer Datei manuell zu setzen. Auch hier hilft Powershell.

Man hat z. B. im Verzeichnis C:\TEMP die Datei TEST.TXT. Zuerst setzt man das gewünschte Datum bzw. die Uhrzeit in einer Variablen:

$dt = get-date 1.5.2013-10:00

$dt gibt dann

Mittwoch, 1. Mai 2013 12:00:00

aus. Bei der Angabe der Uhrzeit ist immer UTC-Zeit angesagt. Im Winter wird also eine Stunde, im Sommer werden zwei Stunden dazugerechnet.

Um nun das Datum der letzten Änderung bei der Datei TEST.TXT zu setzen kommt das .NET-Framework zu Hilfe:

[System.IO.File]::SetLastWriteTime("TEST.TXT", $dt)

oder man kann auch das Datum des TEMP-Verzeichnis setzen

[System.IO.Directory]::SetLastWriteTime("C:\TEMP", $dt)

Neben SetLastWriteTime gibt es noch SetLastAccessTime oder SetCreationTime.

So nun viel Spaß beim Versuch, solche Dinge nachzuvollziehen…

Sharepoint PreUpgradeCheck meldet fehlenden Web Part aber in welcher Site?

26 April 2013

Wenn man bei einer Sharepoint-Migration vorneweg den PreUpgradeCheck mittels

C:\Programme\Gemeinsame Dateien\Microsoft Shared\web server extensions\12\BIN>stsadm -o preupgradecheck

den Prüflauf startet, kann es passieren, dass bei ServerConfigErrors Fehlgeschlagen gemeldet wird:

Processing configuration file: WssPreUpgradeCheck.xml
        OSPrerequisite… Fehlgeschlagen
        WindowsInternalDatabaseMigration… Bestanden
        WindowsInternalDatabaseSite… Bestanden
        MissingWebConfig… Bestanden
        ReadOnlyDatabase… Bestanden
        InvalidDatabaseSchema… Bestanden
        ContentOrphan… Bestanden
        SiteOrphan… Bestanden
        ServerConfigErrors… Fehlgeschlagen
        FormsAuthenticationApplications… Bestanden
        PendingUpgrade… Bestanden
        InvalidServiceAccount… Bestanden
        InvalidHostName… Bestanden
        UnsupportedSqlServerVersion… Bestanden
        ServerInfo… Nur zu Informationszwecken
        FarmInfo… Nur zu Informationszwecken
        SiteDefinitionInfo… Nur zu Informationszwecken
        LanguagePackInfo… Nur zu Informationszwecken
        FeatureInfo… Nur zu Informationszwecken
        EventReceiverInfo… Nur zu Informationszwecken
        WebPartInfo… Nur zu Informationszwecken
        AamUrls… Nur zu Informationszwecken
        LargeList… Bestanden
        CustomListViewInfo… Bestanden
        CustomFieldTypeInfo… Bestanden
        CustomWorkflowActionsFileInfo… Bestanden
        ModifiedWebConfigWorkflowAuthorizedTypesInfo… Nur zu Informationszweck
en
        ModifiedWorkflowActionsFileInfo… Bestanden
        DisabledWorkFlowsInfo… Bestanden
        SPSearchInfo… Nur zu Informationszwecken

Operation completed successfully.

Please review the results at C:\Programme\Gemeinsame Dateien\Microsoft Shared\We
b Server Extensions\12\Logs\PreUpgradeCheck-20130426-080529-978.htm.

In der genannten HTML-Datei findet man dann nur den Hinweis:

Issue : Missing server file or server configuration issues

Server side files are referenced in the content databases, but are not installed on the server. Without these files, the sites may not function completely or the content may not render correctly. Also, upgrade or post upgrade issues may occur if these files are not available in the new version environment.The following web part(s) are referenced by the content, but they are not installed on the web server

Id = e0c4048d-32c1-444d-d672-c86c215757bc, Type = Unknown, Reference = 1, Status = Missing

For more information about this rule, see KB article 976218 in the rule article list at http://go.microsoft.com/fwlink/?LinkID=120257.

Wenn man dann im Dokument, in diesem Fall nach

e0c4048d-32c1-444d-d672-c86c215757bc

sucht, kommt z. B. dies zum Vorschein:

Information Only : Web Part information

The following web parts are being used in this SharePoint farm:

Id = ce9aa113-48cf-ddee-0c03-597445e5b7ab, Type = Microsoft.SharePoint.WebPartPages.ImageWebPart, Reference = 7, Status = Installed
Id = 293e8d0e-486f-e21e-40e3-75bfb77202de, Type = Microsoft.SharePoint.WebPartPages.ListFormWebPart, Reference = 431, Status = Installed
Id = 2242cce6-491a-657a-c8ee-b10a2a993eda, Type = Microsoft.SharePoint.WebPartPages.ListViewWebPart, Reference = 556, Status = Installed
Id = 99cdf365-0cee-2fb2-c12b-ce285a898031, Type = Microsoft.SharePoint.WebPartPages.BlogAdminWebPart, Reference = 2, Status = Installed
Id = e60f6c95-e86c-4717-2c0d-6d8563c9caf7, Type = Microsoft.SharePoint.WebPartPages.ContentEditorWebPart, Reference = 10, Status = Installed
Id = b9a7f972-708a-cd77-4ffd-a235dfed5c38, Type = Microsoft.SharePoint.WebPartPages.DataFormWebPart, Reference = 44, Status = Installed
Id = 404822d6-cc74-7e5c-6767-b8206c1490fc, Type = Microsoft.SharePoint.WebPartPages.SimpleFormWebPart, Reference = 3, Status = Installed
Id = e0c4048d-32c1-444d-d672-c86c215757bc, Type = Unknown, Reference = 1, Status = Missing
Id = 08f1dc7f-a471-2beb-1e5b-00ea35abba18, Type = Microsoft.SharePoint.WebControls.TopologyViewWebPart, Reference = 1, Status = Installed

For more information about this rule, see KB article 976217 in the rule article list at http://go.microsoft.com/fwlink/?LinkID=120257.

Wie immer wird auf den “Alles und Nichts” sagenden Artikel 976217 in der Knowledge Base verwiesen.

Wenn eine GUID angeprangert wird, so hilft ein schneller Check mit Google, ob die betreffende GUID irgendwo schon mal aufgetaucht ist.

Um nun aber die Site zu ermitteln, um eine Ahnung zu haben, um was es gehen könnte, verwendet man diesen Befehl:

C:\Programme\Gemeinsame Dateien\Microsoft Shared\web server extensions\12\BIN>stsadm -o enumallwebs -includewebparts > WebParts.txt

Sucht man nun in der erstellten WebParts.txt, tritt folgendes zu Tage:

  <Database SiteCount="2" Name="WSS_Content" DataSource="SERVER\Microsoft##SSEE">
    <Site Id="cb78e18b-552b-4baf-85a1-451034c87581" OwnerLogin="DOMÄNE\Benutzer" InSiteMap="True">
      <Webs Count="10">
        <Web Id="f0122e69-dd11-415a-887e-a229f4c705b9" Url="/sites/test" LanguageId="1031" TemplateName="STS#1" TemplateId="1">
          <WebParts>
            <WebPart Id="ce9aa113-48cf-ddee-0c03-597445e5b7ab" Count="1" Status="Installed" Type="Microsoft.SharePoint.WebPartPages.ImageWebPart" />
            <WebPart Id="293e8d0e-486f-e21e-40e3-75bfb77202de" Count="30" Status="Installed" Type="Microsoft.SharePoint.WebPartPages.ListFormWebPart" />
            <WebPart Id="2242cce6-491a-657a-c8ee-b10a2a993eda" Count="30" Status="Installed" Type="Microsoft.SharePoint.WebPartPages.ListViewWebPart" />
            <WebPart Id="e0c4048d-32c1-444d-d672-c86c215757bc" Count="1" Status="Missing" />
          </WebParts>
        </Web>

Die schon bekannte Info. Da es sich aber um eine XML-Datei handelt, die hierarchisch aufgebaut ist, kommt man nun an die Site, wo der Part verwendet wird, hier also “/sites/test”. Hiermit dürfte alles klar sein, im Einzelfall muss man nun halt abklären, wer für den Part bzw. die Site zuständig ist.

Microsoft SQL Server per Powershell Cmdlets ansprechen

25 April 2013

Wenn man einen Microsoft SQL Server mittels Powershell ansprechen möchte, so gibt es nun eine ganz einfache Möglichkeit dies zu tun.

Dazu benötigt man nur:

ENU\x64\SQLSysClrTypes.msi
ENU\x64\SharedManagementObjects.msi
ENU\x64\PowerShellTools.msi

und installiert diese in genau dieser Reihenfolge. Die Dateien sind zu finden im “Microsoft® SQL Server® 2012 SP1 Feature Pack” unter http://www.microsoft.com/en-us/download/details.aspx?id=35580. Und wer es braucht, findet dort auch noch passende Versionen für 32-Bit.

Hier die Links zum direkt Anklicken für die 64-Bit Versionen:

http://download.microsoft.com/download/4/B/1/4B1E9B0E-A4F3-4715-B417-31C82302A70A/ENU/x64/SQLSysClrTypes.msi

http://download.microsoft.com/download/4/B/1/4B1E9B0E-A4F3-4715-B417-31C82302A70A/ENU/x64/SharedManagementObjects.msi

http://download.microsoft.com/download/4/B/1/4B1E9B0E-A4F3-4715-B417-31C82302A70A/ENU/x64/PowerShellTools.msi

Abgelaufene Zertifikate am Small Business Server 2011 erneuern

24 April 2013

Wenn man am SBS2011 Probleme mit Zertifikaten bekommt, in der Regel nach ein oder zwei Jahren spätestens nach fünf Jahren, dann hilft ein Assistent bei der Erneuerung der Zertifikate.

Zur Lösung ruft man die Windows Small Business Server 2011 Standard Konsole auf. Dann klickt man oben auf Netzwerk, auf das Register Konnektivität, nun findet man rechts die Konnektivitätstasks. Hier findet man den Punkt “Beheben von Netzwerkproblemen” oder “fix my network”. Ruft man diesen Punkt auf, startet ein Assistent der Probleme im Netzwerk ausfindig macht. Am Ende konzentriert man sich in der Regel nur auf das abgelaufene Zertifikat und lässt dieses automatisch reparieren.

Hat der Assistent erfolgreich das Zertifikat erneuert, findet sich auch unter Verwaltung->Zertifizierungsstelle unter “Ausgestellte Zertifikate” ein neuer Eintrag mit einer neuen Anforderungs-ID sowie das neu ausgestellte Zertifikat.

Zertifikate manuell über Gruppenrichtlinien verteilen

23 April 2013

In der heutigen Zeit kommt man nicht mehr ohne Zertifikate aus. Um die Verteilung von speziellen Zertifikaten zentral steuern zu können, macht es Sinn, diese über Gruppenrichtlinien zu verteilen.

Eine schöne bebilderte Beschreibung findet man unter http://unixwiz.net/techtips/deploy-webcert-gp.html.

Hier eine Beschreibung für Windows Server 2008 R2: http://technet.microsoft.com/en-us/library/cc772491.aspx

Small Business Server Logdateien und Migrationsdateien

18 April 2013

Um einen Small Business Server 2003 auf einen Small Business Server 2011 zu migrieren, gibt es viele mögliche Stolperfallen. Um auf dem Weg der Migration einen besseren Überblick zu bekommen, sind einige Log-Dateien von Vorteil.

Die meisten Log-Dateien findet man unter:

C:\Program Files\Windows Small Business Server\Logs

Dieser Artikel beschreibt die einzelnen Log-Dateien und deren Bedeutung: http://blogs.technet.com/b/sbs/archive/2008/10/01/key-small-business-server-2008-log-files.aspx.

Für eine Servermigration von Bedeutung, ist vor allem die MoveData.LOG-Datei. In dieser stehen die relevanten Dinge.

Falsche Fährte bei der Fehlersuche
Allerdings sollte man sich nicht aus der Ruhe durch folgenden Fehler bringen lassen:

[8092] 130418.142709.7589: TaskScheduler: Exception System.IO.FileNotFoundException:

 

[8092] 130418.142709.7667: Exception:

—————————————

An exception of type ‘Type: System.IO.FileNotFoundException, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089′ has occurred.

Timestamp: 04/18/2013 14:27:09

Message: Das System kann die angegebene Datei nicht finden. (Ausnahme von HRESULT: 0×80070002)

Stack:    bei TaskScheduler.TaskSchedulerClass.GetFolder(String Path)

   bei Microsoft.WindowsServerSolutions.Common.WindowsTaskScheduler..ctor(String taskPath, String taskName)

 

[8092] 130418.142709.7687: Storage: Exception Microsoft.WindowsServerSolutions.Common.WindowsTaskSchedulerException:

 

[8092] 130418.142709.7687: Exception:

—————————————

An exception of type ‘Type: Microsoft.WindowsServerSolutions.Common.WindowsTaskSchedulerException, Common, Version=6.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35′ has occurred.

Timestamp: 04/18/2013 14:27:09

Message: Failed to find the task path

Stack:    bei Microsoft.WindowsServerSolutions.Common.WindowsTaskScheduler..ctor(String taskPath, String taskName)

   bei Microsoft.WindowsServerSolutions.Storage.Common.ServerBackupUtility.GetServerBackupTaskStatus()

—————————————

An exception of type ‘Type: System.IO.FileNotFoundException, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089′ has occurred.

Timestamp: 04/18/2013 14:27:09

Message: Das System kann die angegebene Datei nicht finden. (Ausnahme von HRESULT: 0×80070002)

Stack:    bei TaskScheduler.TaskSchedulerClass.GetFolder(String Path)

   bei Microsoft.WindowsServerSolutions.Common.WindowsTaskScheduler..ctor(String taskPath, String taskName)

 

[8092] 130418.142709.7697: Storage: Error Retrieving Server Backup Task Status: ErrorCode:0

BaseException: Microsoft.WindowsServerSolutions.Storage.Common.StorageException: GetServerBackupTaskStatus: fail to find the task —> Microsoft.WindowsServerSolutions.Common.WindowsTaskSchedulerException: Failed to find the task path —> System.IO.FileNotFoundException: Das System kann die angegebene Datei nicht finden. (Ausnahme von HRESULT: 0×80070002)

   bei TaskScheduler.TaskSchedulerClass.GetFolder(String Path)

   bei Microsoft.WindowsServerSolutions.Common.WindowsTaskScheduler..ctor(String taskPath, String taskName)

   — Ende der internen Ausnahmestapelüberwachung —

   bei Microsoft.WindowsServerSolutions.Common.WindowsTaskScheduler..ctor(String taskPath, String taskName)

   bei Microsoft.WindowsServerSolutions.Storage.Common.ServerBackupUtility.GetServerBackupTaskStatus()

   — Ende der internen Ausnahmestapelüberwachung —

   bei Microsoft.WindowsServerSolutions.Storage.Common.ServerBackupUtility.GetServerBackupTaskStatus()

   bei Microsoft.WindowsServerSolutions.Storage.MoveData.Helper.get_ServerBackupTaskState()

[8092] 130418.142711.3244: Storage: Backup Task State: Unknown

 

Am Ende gehts nur darum, dass vom Wizard geprüft wird, ob ein Backup gerade am Laufen ist, bzw. ob Backup-Tasks eingerichtet sind. Denn diese sollten dann deaktiviert werden, bzw. der Vorgang bei aktivem Backup, generell abgebrochen werden.

 

In diesem Fall stellt sich, wie so oft die Frage: Muss das sein? Warum können die Herren bei MS nicht ordentliche Log-Dateien erzeugen? Wer hier loslegt, verschwendet schnell seine wertvolle Zeit, mit der Suche nach dem falschen Fehler! Wie z. B. hier zunächst geschehen: http://superuser.com/questions/471268/moving-data-files-failing.

 

Sinnvolle Ergänzungen, mehr Daten in LOG-Dateien

Wenn einem die LOG-Datei zu wenig hergibt, dann hat man die Möglichkeit mittels einer Konfigdatei logging.config etwas ausführlichere Infos zu bekommen. Wichtig dabei sind Einträge mit den Attributen “General” und “Unmatched”, welche man am Besten auf Verbose setzt.

 

Hilfreiche Blogartikel

Für eine erfolgreiche Migration sind auch diese Artikel zu beachten bzw. hilfreich:

 

http://blogs.technet.com/b/sbs/archive/2011/07/01/sbs-2011-standard-migrations-keys-to-success.aspx

http://blogs.technet.com/b/sbs/archive/2011/07/08/sbs-2011-standard-migrations-keys-to-success-part-2-the-setup-phase.aspx

http://blogs.technet.com/b/sbs/archive/2011/07/11/sbs-2011-standard-migration-keys-to-success-part-3-post-setup-and-common-failures.aspx

 

und noch ein Technet-Wiki: http://social.technet.microsoft.com/wiki/contents/articles/7919.sbs-2003-to-sbs-2011-migration-issues.aspx

Hyper-V 3.0 Remote Management Einrichtung mittels HVRemote endlich Server 2012 und Windows 8 kompatibel

15 April 2013

Wer einen Microsoft Hyper-V Server 2012 installiert und von Server 2012 oder Windows 8 aus administrieren möchte, der bleibt meistens bei HVREMOTE hängen. Doch leider gab es bisher keine offizielle Unterstützung für Windows 8 und Windows Server 2012 Remote Management Maschinen. http://newyear2006.wordpress.com/2012/07/10/hyper-v-3-0-remote-management-einrichtung-mit-hvremote-und-probleme-mit-windows-8/

Nachdem wahrscheinlich schon niemand daran geglaubt hat, dass es noch eine Aktualisierung von HVREMOTE.WSF geben könnte, ist nun doch die neue Version 1.06 verfügbar: http://code.msdn.microsoft.com/windowsdesktop/Hyper-V-Remote-Management-26d127c6.

Eigentlich hatte ich immer gedacht, es braucht solange, weil gleich ein Powershell Script gebastelt wird, aber weit gefehlt, es wird immer noch alte Scriptingtechnik eingesetzt.

Das Dokument kann nicht eingecheckt werden, solange ein Kopie auf dem Webserver geöffnet ist. Schließen Sie die Webserverkopie, und versuchen Sie es erneut.

22 März 2013

Noch einer zu meinem aktuellen Lieblingsthema: Die Pfeifen von MS, die nix auf die Reihe bekommen. Hat man ein Dokument in Sharepoint ausgecheckt und versucht es einzuchecken, kann man diese Meldung erhalten:

Das Dokument kann nicht eingecheckt werden, solange ein Kopie auf dem Webserver geöffnet ist. Schließen Sie die Webserverkopie, und versuchen Sie es erneut.

Egal wie man es anstellt, man bekommt das blöde Teil nicht abgespeichert. Gut, man könnte nun über einen normalen Dateispeichern-Dialog gehen aber was ist dann mit der Dokumentenhistorie?

Der Workaround sieht so aus: Bei der Meldung OK anklicken, dann über Datei->Schließen anklicken, die nachfolgende Meldung

Andere Benutzer sehen Ihre Änderungen erst nach dem Einchecken. Möchten Sie jetzt einchecken?

mit Ja bestätigen. Nun kommt nochmal der Eincheckdialog und diesmal klappts dann mit dem Speichern.

Hier ist es schön mit Bildern erklärt: http://mstechnology.wordpress.com/2012/07/16/fehler-beim-einchecken-aufgrund-einer-kopie-auf-dem-webserver/

Danke MS! Vielen Dank.


Follow

Bekomme jeden neuen Artikel in deinen Posteingang.