Jump to content

Weingeist

Members
  • Content Count

    892
  • Joined

  • Last visited

Community Reputation

45 Popular

About Weingeist

  • Rank
    Board Veteran

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Was falsch läuft? Das was in der ganzen IT-Branche komplett falsch läuft. Inklusive da wo sie überall reinläuft. Daten sammeln, analaysieren, verkaufen. Dazu ist jedes Mittel recht. Von Zermürbung durch ständiges änderen der Datenschutz-Schalter, bis hin zu Zwängerei bei der eingesetzten Version für eine Software. Office 365 soll z.B. zukünftig nicht auf LTSB/LTSC laufen, Adobe nur auf de letzten zwei CB Releases usw. Mit dem Problem im Link ist es übrigens mit Sicherheit nicht getan. Dazu einfach mal Cortana auf der Firewall mitschneiden bzw. Explizit Firewall-Regeln (inklusiv versteckte) ändern und Protokollieren.
  2. @Dukel: Naja, 40GB an Textdaten nach Text zu durchsuchen ist irgendwie nie ein Spass. Wenn es mit 190MB und 1000 Adressen gerade mal 12min gegenüber 59min dauert, dann viel Spass bei 40GB. ;) Das Ergebnis würde ich in deinem Beispiel auch so umschreiben, dass es ein boolscher Wert ist und nicht ein String. Erst die Auswertung ein String. Also Dics.Item('E-Mail-Addi') = true. Am Ende dann den Dics auswerten. Das ist mit Sicherheit schneller als String-Additionen die immer super lahm sind, insbesondere wie von daabm angemerkt wurde wenn der String immer neu allokiert werden muss. Da gibts zwar Apis die das noch schneller machen (keine Ahnung ob auch die von ihm angemerkten Streams), aber sinnvoll ist das eigentlich nie (bei solchen Datenmengen). Dann könnte man noch den Value des Dics-Eintrags testen vor dem Vergleich, ist er True (also bereits einmal gefunden) muss der Aufwendige Textvergleich für diese Adresse nicht mehr stattfinden. Er will am Ende ja nur wissen ob und nicht wie viele mal die Adresse vorhanden war.
  3. Tja der Möglichkeiten gibt es viele, Schlamperei (Copy anstatt Move nach einem Hostwechsel ohne vMotion) oder nach längeren Tests wenn man einen Ursprungszustand komplett zurücksetzen möchte. Seinen Fall würde ich mir jetzt auch nicht antun. Vielleicht höchstens wenn man mit HyperV doch nicht so happy ist wie mit VmWare und man zu faul zum neuaufsetzen ist. ;) Mit dem SID-Timestamp hatte ich aber - meines Wissens - noch kein Probleme bei Clients mit solchen Übungen. Da waren neben den genannten Problemen eher die Switches das Problem weil sie die MAC-Adresse auf einem anderen Port erwartet haben (wenn diese gleich geblieben ist, was bei einem Hostwechsel mit anderer Plattform unwahrscheinlich sein dürfte).
  4. @Nobbyaushb: Sicher das der Zeitstempel so wichtig ist bei einem Client? ist ja bei einem Backup-Rückspielung die gleiche Situation und da muss man das normalerweise auch nicht tun. Das DNS-Problem gibt es aber gerne mal. Dann halt noch die Situation wenn der Client schon lange gewechselt hat. EDIT, habe noch google angeworfen. Das mit der Zeit ist wohl nicht ganz korrekt. Liegt dann wohl eher daran, dass das Maschinenkennwort geändert hat, wenn der Zeitpunkt grad ungüstig war, dann gehts auch nach kurzer Zeit schief. Kann man wohl so zurücksetzen: netdom resetpwd /s:Domain-Controller /ud:Domäneadministrator /pd:* Quelle: http://www.active-directory-faq.de/2011/12/computer-kann-sich-nicht-an-der-active-directory-domane-anmelden/
  5. Naja, klingt irgendwie nach DNS-Problemen. Also das die Maschinen nun Mühe haben weil die PC's eine neue MAC hatten, somit neue DHCP-Leases und folglich auch der DNS aktualisiert wurde. Das ging - so vermute ich - dieses mal schief.
  6. Ein Dictionary ist in der Regel noch schneller als eine Array. Zumindest so meine Erfahrung, auch wenn sich diese hauptsächlich auf VB6 beschränkt und meine Erfahrung etwas angestaubt ist. Denke aber, das wird in .Net nicht anders sein. =) EDIT: Habe mal schnell in einer meiner Sources geschaut weil es mir grad unlogisch war weil der dic ja ein Objekt ist und die Elemente selber auch Objekte. Das heisst meist ist Dictonary eigentlich schneller als eine Collection nicht eines Arrays. Der Geschwindigkeitsvorteil gegenüber einem Array resultiert dann, wenn du das "Exist" als Vergleichsoperator benutzt. Also die zu vergleichenden Strings als Key hinzufügst. Der Grund ist, dass der Vergleich auf C++ Ebene innerhalb des Dics abläuft und nicht in der höheren Programmiersprache selber wo der Vergleich sowas wie If A = B then ... heisst. Je nach Programmiersprache ist der Unterschied deutlich spürbar oder nur minimal. Bei VB war das jeweils ziemlich heftig bei grösseren Datenmengen. Eine Umsetzung in C++ gibt für "stupide" Massenverarbeitung in der Regel auch ein Performance-gewinn, ist aber (deutlich) mühsamer zu programmieren. Zumindest wenn man es sich nicht gewohnt ist. Da die Anforderungen hier nicht besonders gross sind, wärs vielleicht ein Versuch wert. Dann helfen natürlich die üblichen Hardware-Empfehlungen wie möglichst hohe Taktrate, je nach Sofware und Programmierung die Anzahl Kerne und insbesondere die IOPS und RAM. Vielleicht würde auch eine RAM-Disk helfen oder das komplette laden der Datei ins RAM bzw. in die Software oder eben das vorherige Aufarbeiten der Daten/import in eine DB oder oder oder Dazu müsste man aber mehr zu dieser Logdatei wissen. Aufbau usw. sonst ist das schwer zu beurteilen. Oft läufts auch einfach auf Try and Error raus. ;) Schlussendlich sollte man in solchen Fällen möglichst alle Register ziehen wenn man die Zeit nicht zu Verfügung stellen möchte.
  7. So siehts aus, erforderlich = es wird benötigt und sollte genehmigt werden und es wird heruntergeladen. Ansonsten sind einfach nur die technischen Angaben, Abhängigkeit, Konfigurationen des jeweiligen Updates in der DB hinterlegt/synchronisiert. Aber wie gesagt, manchmal erscheinen die Updates nicht, wenn Du ein zwingendes Update nicht installiert/abgelehnt hast. Sie sind dann eben nicht erforderlich und auch nicht installierbar weil die Voraussetzung dafür fehlt. Du hast aber ganz anderes Problem - zumindest wenn das schon länger so ist - , 30 deiner PC's sind "ohne Status". Das heisst Sie haben Ihren Katalog nicht mit dem WSUS abgeglichen, zumindest nicht mit diesen Updates hier. Also entweder hast du zu schnell geschaut oder Deine PC's verbinden sich nicht.
  8. Das kann bzw. muss man sehr einfach halten und ist Betriebsspezifisch. Am besten integriert man es ins QM, sofern eines vorhanden ist unter Personal. Diese Regel hier kannst ja mit einem Satz ersschlagen, gearbeitet wird nur mit dem Benutzeraccount und nur für zwingende Installationen wird der Admin-Account genutzt. Dies darf und kann vom Admin überprüft werden. Dazu eine Liste der erlaubten Programme die man selber aktualisieren darf. Neue Programme benötigen eine Genehmigung und kommen auf eine neue Version der Liste. Dazu muss er ein Log führen wann er was gemacht hat. Im Endeffekt dient das allen. Man muss sich halt auch die Zeit nehmen und ihnen die Risiken erklären. Auch die Chefs halten sich dran, auch wenn das meist viel mehr Überredungs- bzw. Erklärungskunst braucht weil Sicherheit ist in den allermeisten Fällen mit irgendeiner Form von Komfortverlust verbunden ist. In grösseren Betrieben kann man es auch mit Schulung und Tests machen zum prüfen ob sie den kram auch wirklich gelesen haben. Wiederum meist nur bei kleinen möglich: Nachsitzen am Samstag in der Freizeit wenn sies vorher im Betrieb während der Arbeitszeit nicht gelesen haben. ;) Auf den Zettel kommen auch andere Dinge wie "Schutzausrüstung" tragen und dass sie sich bewusst sind, dass sie ihre Gesundheit aufs Spiel setzen wenn sie es nicht tun und in ihrer Verantwortung liegt, Bestätigung Schlüsselerhalt usw. Halt alles was einem als Betrieb wichtig ist und in gewisser Weise als Absicherung dient. Nichtragen der persönlichen Schutzausrüstung kann z.B. bei mehrmaligen Verweisen in einer Kündigung enden. Hier könnte die Sanktion einfach sein, dass er keine Admin-Rechte mehr bekommt bzw. die wirklich notwendigen Rechte an den entsprechenden Orten granular vergeben werden sofern möglich, ansonsten liegt die Administration bei Dir und kleinere Verstösse eben mit dem Obolus in die Kaffeekasse. Der muss halt so halb freiwillig sein, sonst gibts wieder Theater mit Betriebsrat und so Spässe ;).
  9. Ich genehmige nur solche, die tatsächlich auch angefordert werden. Andere machen das wiederum anders. Aber wie gesagt, in einem Bericht (Rechte Maustaste) zu dem Update kannst ja erkennen ob es von irgend einer Mühle gebraucht wird, bereits installiert ist oder nirgendwo gebraucht nicht. Wird es nicht angefordert obwohl es gebraucht wird, dann fehlt unter Umständen ein zwingendes Update von vorher das du z.B. abgelehnt hast ohne welches dieses nicht vom Client angfordert werden kann.
  10. Man kann das abschalten. Ist grundsätzlich auch sicherer wegen Credentials-Highjacking. Computerkonfiguration>Windows-Einstellungen>Sicherheitseinstellungen>Lokale Richtlinien>Sicherheitsoptionen>Benutzerkontensteuerung: Verhalten der eingabeauforderung für erhöhte Rechte Gibts für Admin und Standardbenutzer.
  11. Gibt so umständliche Varianten mit Zweifaktorauthentifizierung und einmal-Passwörtern. Gibt für Dich aber Mehraufwand. Ich finde Schulung der Mitarbeiter aber deutlich besser. Auswirkungen und Probleme für die Firma wenn als Admin gearbeitet wird. Dazu einen unterschriebenen Fakel inklusive Unterschrift, dass es kontrolliert und sanktioniert werden kann. Busse die ins Mitarbeiterkässeli fliesst zum Beispiel. ;)
  12. Nur weil 40 neue Updates synchronisiert wurden, heisst es nicht, dass Deine Systeme diese auch tatsächlich benötigen sondern lediglich, dass eben insgesamt 40 neue da wären die unter Umständen benötigt werden könnten. ;) Edit: Es gibt noch den zweiten Fall, also dass deine PC's ein zwingendes Update nicht haben (z.B. ein Build-Update von einem normalen Nicht-LTSB/LTSC Windows 10, gabs auch schon unter W8.1, da wars irgend ein April-Update). Dann erscheinen sie auch nicht, weil wie ja nicht benötigt werden, da sie gar nicht installiert werden könnten. Finde es zwar seltsam das WSUS immer noch so agiert, aber früher hatte ich dieses Problem definitiv auch schon. Ist aber nicht in jeder Situation der Fall. Edit 2: Erkennen solltest das, wenn Du alle Update anzeigen lässt und dann in einem der neuen Updates einen Bericht erzeugst. Steht da erforderlich, dann fehlt wohl eine Voraussetzung.
  13. Was muss man darunter verstehen? Werden da nicht die Zertifikate der Computer für die Verschlüsselung benutzt?
  14. Ist den der Rest der Umgebung absolut identisch? - Der Client Selber - Treibeinerstellungen wie Client-Side Rendering ab- oder angeschaltet, Protokoll (Hersteller-Spezifisch, PCL, Postscript) - Printserver mit identischem Plattenspeed, RAM, CPU und OS oder wurde da auch etwas geändert? - Übertragung zum Drucker identisch? LAN/USB? Gleicher Port? (also nicht einmal 100Mbit und dann 1000Mbit) Es gibt zwar schon Unterschiede mit oder ohne EFI, finde aber den Unterschied heftig. Ein altes EFI muss zudem nicht zwingend schneller sein als ein moderner Windows-Print Server. Dann ist auch noch der RAM des Druckers relevant, die Drucker mit EFI haben davon in der Regel auch mehr als solche ohne. Dann muss noch alles übers Netztwerk zum Drucker. Da gibt es so viele Möglichkeiten, da musst wohl durchtesten. Normal sind die Herstellerspezifischen Protokolle die schnellsten. Auch wo der Flaschenhals liegt, Print-Server, Client, Netzwerk, Printer. CPU, RAM, IOPS-Speed.
  15. Sorry für die späte Antwort, habe keine Benachrichtigung gesehen. Vorteil der GUID ist halt, dass diese auch eine Software generieren kann und nicht zwingend durch eine DB-System erfolgen muss. Sprich man kann ein komplettes Datenkonstrukt übergeben ohne komplizierte Stored Procedures erstellen zu müssen. Ganz simples Beispiel: Man generiert z.B. Aufträge mit den entsprechenden Auftragspositionen auf dem Client. Anstatt das nun eine Anwendung warten muss, biss es den PK vom DB-System bekommt, kann es diese gleich mitliefern. Die Logik kann halt teilweise einfacher an eine Anwendung delegiert werden, sofern das gewünscht ist. Das kann entweder ein Offline-PC sein oder ein LAN-PC der die Daten nur im Cache hat und dann überträgt. Ich arbeite sehr gerne mit GUID's. Ist aber Geschmackssache, wie so vieles. Wenn man viel mit Multi-User Access-Datenbanken gearbeitet hat, lernt man sie aber eh ganz anders zu schätzen als wenn man alles mit einem DB-System erschlagen kann. Da gehört die komplette PK-Problematik mit Auto-Inkrement der Vergangenheit an. Aber auch bei grossen Systemen hat es seine Vorzüge, je nach Umsetzung spart es doch einiges an IOPS auf den Server-Systemen weil man sich gewisse Übertragungen und Prüfungen ersparen kann. Verwendet man die Spalten allerdings mit Indexen, kann es wieder langsamer sein. Wie alles hat es immer zwei Seiten und man muss entscheiden was man lieber will. Für MS und auch andere Software-Entwickler hat es aber auch grosse Vorteile. Da die GUID relativ eindeutig ist, kann jeder Entwickler seine eigenen GUID's für Pakete generieren. Die Chance das für den gleichen Zweck exakt die gleiche GUID von unterschiedlichen Maschinen generiert wird, ist extrem klein. Zwingend in einen String umwandeln muss man ja gar nicht solange man sich die GUID nicht in Klartext anzeigen will. Ist ja ein komplett eigener Datentyp. Okto-Irgendwas, korrekter Name ist mir grad entfallen. Joins mit umgewandelten Strings sind sowieso nicht performant.
×
×
  • Create New...