Jump to content

MurdocX

Moderators
  • Gesamte Inhalte

    2.745
  • Registriert seit

  • Letzter Besuch

Alle erstellten Inhalte von MurdocX

  1. Wie sieht es aus, wenn du mein Skript verwendest?
  2. Schneller ist nicht immer besser. Ich hab schon einen Fehler bei mir gefunden
  3. Get-ChildItem -Path $Test_ROOT -File -Filter *.xml | ForEach-Object { (Get-Content -Path $_.FullName | Select-Object -Skip 1) | Set-Content -Path $_.FullName -Encoding UTF8 } Ich würde hier mal mit ForEach-Objekt arbeiten und für die Auflistung der Dateien Get-ChildItem. Edit: Ausgebessert
  4. Das Skript bezieht sich auf diesen Artikel: https://docs.microsoft.com/de-de/sharepoint/administration/back-up-a-farm Das Wesentliche sind folgende Befehle: Add-SPShellAdmin Backup-SPFarm -Directory <BackupFolder> -BackupMethod {Full | Differential} [-Verbose]
  5. Wie du hier siehst und ich auch schon oben erwähnt habe, ist das Skript schlecht geschrieben. Ich bin mir sicher das ist nicht das einzige Skript zum Sichern von SharePoints und möchte Dir raten ein Anderes zu suchen.
  6. oh.. Doch nur so wenig Text.. An die Kürze komme ich in der PS nicht ran. Jetzt hat er die Qual der Wahl
  7. Mit einer Batch kann ich Dir nicht weiterhelfen. Viel einfacher geht das mit der Powershell. Füllen musst du die Variablen noch. Das Skript frägt die Betriebssystemversion ab und wenn die Version kleiner als 1909 ist, dann wird der Upgrade-Prozess durchgeführt. [string]$SetupPath = 'Hier kommt der UNC-Pfad zu der Setup-Datei herein' [string]$SetupArgs = 'Hier kommen die Argumente /upgrade etc. herein' [int]$CurrentOsVersion = (Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\" -Name ReleaseID -ErrorAction SilentlyContinue).ReleaseId if ($CurrentOsVersion -lt 1909) { # Start Upgrade Start-Process -FilePath $SetupPath -ArgumentList $SetupArgs -Verb RunAs -Wait }
  8. Tatsächlich nimmt Windows nur das Format der jeweiligen Sprache an. Auch die amerikanischen Beispiele funktionieren bei mir nicht. Hier sollte eine Konvertierung in ein deutsches Format vorher erfolgen. EDIT: Interessant war hier der Punkt die Sprache beim Parsen mit einzubinden. Hab ich vorher auch noch nie gemacht. ## Find the old backups in spbrtoc.xml $old = $sp.SPBackupRestoreHistory.SPHistoryObject | Where-Object -FilterScript { $UsCulture = [cultureinfo]::GetCultureInfo('en-US') $StartTime = $_ | Select-Object -ExpandProperty 'SPStartTime' $StartTimeDate = [datetime]::Parse($StartTime,$UsCulture) $SevenDaysAgo = (Get-Date).adddays(-$days) $StartTimeDate -lt $SevenDaysAgo }
  9. Powershell bietet die Möglichkeit zu gruppieren über: Group-Object | docs.microsoft.com https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/group-object?view=powershell-7 Vielleicht hilft Dir das weiter.
  10. Damit ist jeder Datensatz eindeutig. Meiner Meinung nach schließt sich dann "-unique" aus. Vielleicht ist Format-Table etwas für Dich. Dort kann man die einzelnen Eigenschaften in den Expression für sich verändern. Format-Table Name, @{ Label=”Folder”; Expression={$_.Path} }, Description –AutoSize
  11. ## Find the old backups in spbrtoc.xml $old = $sp.SPBackupRestoreHistory.SPHistoryObject | Where-Object -FilterScript { $StartTime = $_ | Select-Object -ExpandProperty 'SPStartTime' $StartTimeDate = [datetime]::Parse($StartTime) $SevenDaysAgo = (Get-Date).adddays(-$days) $StartTimeDate -lt $SevenDaysAgo } Das hier wäre ein Vorschlag. Leider kenne ich nur die Werte die von MS vorgegeben wurden. https://docs.microsoft.com/en-us/previous-versions/office/developer/sharepoint-2010/ms414604(v%3Doffice.14) Wenn hier natürlich keine Werte oder Fehlerhafte vorhanden sind, muss das von Dir kontrolliert werden.
  12. if ($old -eq $Null) { write-host "No reports of backups older than " + $days + " days found in spbrtoc.xml.`nspbrtoc.xml isn't changed and no files are removed.`n" break } if ($old -eq $Null) ..... Diese Zeilen geben keinen Sinn, denn wenn $old = $null dann wird das Skript durch break abgebrochen und beendet. Damit wäre die zweite Abfrage unsinnig, denn sie wird nie aufgerufen. Falls 2 das break wäre falsch, dann kann man die zwei if - Abfragen zu einer formulieren. In Beiden Fällen gibt es Verbesserungspotential Hier wird die Variable $date aufgerufen, bevor ihr ein Wert zugewiesen wurde. Dort kann nie etwas drin stehen. Hier das Gleiche. Die Variable $date und $portalRecycleDays wurde vorher nicht definiert. Können also nie einen Wert enthalten. $sp = gc $spbrtoc $old = $sp.SPBackupRestoreHistory.SPHistoryObject | Where { (Get-Date $_.SPStartTime) -lt ((get-date).adddays(-$days)) } Ich vermute den Fehler in der XML-Datei, denn dort wird eine Startzeit verarbeitet. Lösche doch mal die Uhrzeit aus der XML-Datei und probiere es neu. Alternative zum Probieren (ich hab es nicht getestet) Where { (Get-Date $_.SPStartTime) ändern zu: Where-Object -FilterScript { (([Datetime]::Parse($_.SPStartTime)).ToShortDateString()) EDIT: Eine Anmerkung sei mir noch erlaubt. Das Backup wird auf dem gleichen Server gesichert, auf dem sich auch der SharePoint befindet. Im Falle eines Serverausfalls ist das die denkbar schlechteste Option
  13. Ich nimm an, dass du solche Sachen schon durch hast, oder? https://www.makeuseof.com/tag/5-tips-fix-windows-store-app-issues-windows-10/ Alternativ, wenn der Pfad noch stimmt, mal die Konfig unter die Lupe nehmen.
  14. Wenn der Netzwerkpfad nicht gefunden wird, kann das auch DNS-Thema sein. Ich komme gleich auf den Punkt. Befindet sich beim Client oder beim DC ein DNS-Eintrag der NICHT auf den/die Domaincontroller zeigt? Hier wird oft fälschlicherweise der Router/Firewall eingetragen.
  15. Du könntest es auch mit einem Pipe Clip probieren | Clip Dann ist die Ausgaben in der Zwischenablage.
  16. Die Frage die ich mir stellen würde wäre, ob ich ein produktiv Netzwerk für das aktive Experimentieren hernehmen möchte. Um die Basics zu verstehen, solltest du an einem funktionierenden AD üben, um die Funktionsweise und Abhängigkeit der Dienste zu erlernen. Was lernen kannst du besser von einem Servicetechniker, der dir die AD-Landschaft repariert und erklärt. Ich wünsche ein frohes Gelingen.
  17. Von der Entfernung ist das schwer zu bewerten. Als Troubleshooting würde ich noch folgendes abarbeiten: Netzwerktreiber aktualisieren u. die des Gerätes in das Image bringen Die Geräte im selben Subnetz betreiben IPv6 u. IPv4 (Netbios an) zu betreiben netsh interface / ipv4 und tcp -> reset Die SMB-Konfiguration nochmal unter die Lupe nehmen.
  18. Ich hab den Fehler noch nicht gehabt. Schau mal ob hier was für Dich dabei ist: https://www.borncity.com/blog/2015/09/21/windows-10-netzwerk-zeigt-fehler-0x80070035/ https://social.technet.microsoft.com/Forums/ie/en-US/a1ce3a79-2df5-40a3-b7f3-4fa01fc6c6de/error-code-0x80070035-the-network-path-was-not-found-windows-server-2008-sp2?forum=winserverPN
  19. Die einfachste Variante ist die Installationsdateien auf ein Share zu legen und einzelne Clients nach dem Turnschuh-Prinzip auf Windows 10 hochzuziehen. Prüfen ob das und die Software soweit weiter funktioniert und es bei dem Modelltyp keine Fehler im Setup auftauchen die du bestätigen musst. Danach kannst du das automatisch via Windows Update verteilen. Ich persönlich hab die Installation remote über ein PS-Skript gestartet.
  20. Oder die Profile einfach nach einer Zeit automatisch von Windows löschen zu lassen. Funktioniert bei uns ganz gut. Das kann über die Gruppenrichtlinien eingestellt werden.
  21. Die Aussage kommt immer erst, wenn man das Kind wieder aus dem Brunnen ziehen konnte. Man kann immer nur die versuchen zu retten, die auch gerettet werden wollen.
  22. Halte mal die "Shift" taste beim Abmelden gedrückt oder beim "Anderer Benutzer" auswählen. Ich kann´s nicht nachstellen, denn ich hab so ein System nicht im Zugriff.
  23. Beim Surfen bin ich gestern auf Twitter gelandet. Der Hashtag #InfoSec hat mich etwas desillusioniert. Ich habe/hatte keinen naiven Blick auf die Sicherheitslage, dennoch war ich geplättet über das was ich da las. Ohne ins Detail zu gehen, glaube ich, dass wir noch sehr viel Kommunikationsarbeit beim Thema Sicherheit und Konzepte vor uns haben, wenn es ein Mindestmaß an Sicherheit im Netzwerk geben soll.... Vom Benutzer zum Domain-Admin in 36 Minuten mit den Sysinternals. Das ist auf einem HoneyPot genau so abgelaufen. Meiner Meinung nach ist es schier unmöglich einem kleinen und mittelständigem Unternehmen zu erklären, das er mehrere tausende von €uros investieren muss, um ein kleinen Grundschutz zu haben. Der dann auch noch stark davon abhängig ist, wie geschult, geschickt und teuer der Systembetreuer und Admin ist. Hier muss sich eindeutig was tun. Zu viele wiegen sich in falscher Sicherheit.
  24. Ohne es direkt nochmal erwähnt zu haben, falls es aus dem Kontext nicht direkt aufkam, möchte ich gerne noch die Freigabe-Berechtigung des Ordners "Data" sehen.
  25. Genau, die sind gemeint. Eintragen kannst du das über die GUI, die Registry oder die Gruppenrichtlinien. Du könntest den Registry-Key auch per Gruppenrichtlinien verteilen. Die Berechtigungen setzten sich aus den Beiden oben genannten zusammen. Der Ordner "pmueller" ist nicht freigegeben, deshalb ist das auch keine Freigabe. Deine Freigabe ist "Data" und damit auch verantwortlich für die insgesamten Berechtigungen der Unterordner in der Freigabe Data. Also auch für deine Benutzer-Ordner wie z.B. "pmueller". Ja, der heißt SYSTEM. Hier etwas zum Einlesen für Dich: How to: Best Practice Security - Windows file sharing https://community.spiceworks.com/how_to/27258-best-practice-security-windows-file-sharing
×
×
  • Neu erstellen...