/dev/blog/ID10T

Advertisement

Geforce GTX570: Abstürze beiDirectX11 Spielen beheben

• Hardware • Comments

Irgendwie ziehe ich Probleme an. Ich habe mir vorletztes Jahr einen PC gekauft, Bestandteil war eine ASUS Geforce GTX570. Eigentlich bin ich sehr zufrieden mit dieser Grafikkarte. Sie glänzte damals mit einem hervorragendem Preis-Leistungsverhältnis, hat bisher jedes Spiel, dass ich gespielt habe flüssig und in vollen Details darstellen können und ist dabei nicht zu laut.

Doch bis vor Kurzem gab es da ein Problem: Einige DirectX11-Spiele stürzten regelmäßig ab. Der Sound war oft noch zu hören, aber ansonsten wurde ich zurück auf den Desktop geworfen. Da es sich ausnahmslos um Konsolenportierungen handelte, hatte ich es zuerst auf die Spiele geschoben. Doch nachdem neben Just Cause 2 und Saints Row the Third jetzt auch noch Assassin's Creed III nicht richtig laufen wollte, habe ich mir doch mal etwas mehr Gedanken gemacht und die Grafikkarte und DirectX11 als Problembereiche identifiziert. Und es stellte sich raus, ich bin nicht der einzige mit diesem Problem.

Das Problem selbst ist bizarr: Asus und einige andere Grafikkartenhersteller haben die Karte minimalst übertaktet (bei mir waren um die 10 Mhz, wenn ich mich recht erinnere), das reicht aber offensichtlich völlig, um DX11 ins Stottern zu bekommen.

Die Lösung dazu ist simpel, ein Firmware Update für die Grafikkarte. Im Falle meiner ASUS GTX570 wäre dieses auf ASUS Downloadsseite zu finden, bei anderen Herstellern gibt es garantiert ähnliche Updates.

Im oben verlinkten Thread sind noch ein paar Workarounds, aber als IT-Mensch sage ich: Das Problem immer an der Wurzel packen, nicht die Wirkung bekämpfen.

Nach dem Update kann ich endlich auch wieder schön Assassins Creed 3 spielen.

20130209-assassins-creed-3-dx10

Dass der Thread von 2011 ist und ich bis ins Jahr 2013 mit diesem Problem zu kämpfen hatte, weil ich die Problemquelle an der falschen Stelle vermutet habe, finde ich allerdings ziemlich deprimierend. :cry:

Linux: Swap leeren

• Linux • Comments

Kurztipp: Wenn ihr unter Linux warum auch immer den Swapspeicher leeren wollt, ist das so möglich:

swapoff -a && swapon -a

Damit deaktivieren wir den Swap-Speicher erst komplett, wodurch dieser geleert wird, dann aktivieren wir ihn wieder. Bei größeren Swapauslastungen kann das durchaus ein paar Minuten dauern. Um den Fortschritt zu prüfen, könnt ihr in einem anderen Terminalfenster diesen Befehl ausführen:

free -s 3 |grep Swap 

Damit wird euch dann alle 3 Sekunden der Speicherstand des Swaps angezeigt. Dieser sollte sich dann natürlich kontinuierlich verringern und letzendlich auf null stehen.
(via)

Linux: Mit mv alle Dateien verschieben, versteckte inklusive

• Linux • Comments

Wieder mal ein Kurztipp am Rande:

Angenommen wir wollen den Inhalt eines Ordners in unser momentanes Workdirectory verschieben, dann würden wir das wahrscheinlich mit

mv /pfad/* .

machen. Allerdings werden versteckte Dateien - also Dateien, die mit einem Punkt beginnen, damit nicht mit verschoben, da die *-Wildcard für diese eben nicht gilt. Also bauen wir uns mithilfe von Regular Expressions ein paar mehr Wildcards.

mv /pfad/* /pfad/.[!.]* /pfad/.??* .

Was decken wir damit ab?


Ziemlich kompliziert für eine Kopieraktion, was?

Es gibt auch noch andere Lösungen für dieses Problem, die etwa mit find arbeiten. Allerdings sind die von der Komfortabilität (bzw. UNkomfortabilität) etwa gleich.

Perl: Domain-Muster matchen

• Linux • Comments

Kleine Erinnerungsstütze an mich, da dank eigener Doofheit etwa zehn Minuten für dieses Match benötigt habe, um zukünftig meine Doofheit abzufangen. :-P
Will man in Perl eine Domain (keine URL) matchen, geht das so:

#!/usr/bin/perl -w
use strict;
use warnings;

chomp (my $domain= <>);
$my_domain =~ /[-\w\.]+(\.[a-zA-Z]{1,4})/ or die "Keine gueltige Domain.\n";
print "String \"$my_domain\" ist eine gueltige Domain.\n";

Was machen wir in dem Match? Wir prüfen, ob er nur alphanumerische Zeichen, Punkte (für Subdomains) und Bindestriche enthält und schauen zusätzlich, ob nach dem letzten Punkt nur maximal 4 Buchstaben kommen.
Der letzte Abschnitt dürfte mit den neuen Top-Level Domains hinfällig sein, aber für meine Zwecke ist das Matching in dem Zustand ausreichend.

MariaDB: Root-Passwort zurücksetzen

• Administration and Linux • Comments

Wenn man so wie ich einen Server installiert, die MySQL Alternative MariaDB draufpackt und danach aufgrund familiärer Dringlichkeiten den Server runterfährt, kann es schonmal passieren, dass man vergisst, wie das eben gesetzte Root-Passwort denn lautet. Um es erneut zurückzusetzen, habe ich diesen Weg gewählt:

    1. In der /etc/mysql/my.cnf den Eintrag skip-grant-tables = 1 hinzufügen.
      sed -i '/^\[mysqld\]$/a skip-grant-tables = 1' /etc/mysql/my.cnf
    2. Den MariaDB-Dienst neustarten, hier für Debian.
      service mysql restart
    3. Jetzt als root-User passwortlos in die MariaDB-Shell einloggen.
      mysql -u root
    4. Nun das Root-Passwort ändern.
      UPDATE mysql.user SET password = PASSWORD('hierneuespasswort') WHERE user = 'root';
    5. Und nicht vergessen, das geänderte Passwort durch einen Flush auch zu aktivieren.
      FLUSH PRIVILEGES;
    6. Anschließend die in Schritt 1 eingefügte Zeile wieder aus der my.cnf entfernen.
      sed -i '/skip-grant-tables/d' /etc/mysql/my.cnf
    7. Und den MariaDB-Dienst nochmals neustarten, fertig.
      service mysql restart

Ich weise darauf hin, dass dieser Weg ein ordentliches Sicherheitsrisiko birgt und nicht auf Produktivmaschinen benutzt werden sollte. Allerdings sollte man bei Produktivmaschinen auch nicht einfach das Rootpasswort der Datenbank vergessen. ;-)

Advertisement