Jumboframes – Gigabit-Ethernet

Heutzutage sind sie ja schon sehr gängig, Gigabit Netzwerkkarten in Rechnern und die Gigabit Switches sind mittlerweile auch bezahlbar.

Nun stellt sich wie immer die Frage: Kann man da noch etwas optimieren?

In der Regel gilt: Man kann!

Um mich kurz zu halten – hier meine Variante des Netzwerkfluß-Tunings:

Die Übertragungsgeschwindigkeit wird durch den MTU Wert der Netzwerkkarte definiert.

Dieser Wert definiert also die maximale Rahmengröße für die jeweilige Verbindung.  Der ein oder andere kann sich vllt. an einen geänderten MTU Wert für die DSL Verbindung erinnern. Dort hat man, um die Fehlerrate gering zu halten, den MTU Wert von 1500 auf 1492 gesenkt.

Zweifelsfrei ist also ein MTU Wert von 1500 der gängige Standard fürs 10/100 Ethernet.

Wie schaut das nun beim Gigabit aus?

Hier kann man, davon muss man ausgehen, den Wert erhöhen um eine bessere Nutzung der möglichen Übertragungsleistung zu erzielen.

Es wird auf manchen Seiten von einem MTU-Wert von 9000 gesprochen, dies ist natürlich eine imense Vergrößerung und dürfte der „Anschlag“ im Gigabit-Bereich sein. Jedoch sollte darauf geachtet werden, dass es sich um ein homogenes Gigabit-Netz handelt, d.h. alle Geräte mit solchen Frames umgehen können.

In meinem persönlichen Fall möchte ich ein NAS per Crossover-Gigabit-Leitung an einen Server anbinden, natürlich mit maximalem Durchsatzvermögen.

Im Webinterface des NAS’s kann ich in diesem Fall die Jumboframes aktivieren und nach einem Neustart kann ich über SSH folgenden MTU-Wert dort ablesen:  7936

Ergo wird die Gegenstelle (mein Debian Server – eth1) den selbigen MTU-Wert zugewiesen bekommen.

Unter Linux/Debian kann man dies, wie im folgenden beschrieben, erreichen und vor allem auch nach jedem Neustart des Interfaces wieder automatisch setzen lassen…

Zuerst einmal wollen wir den Wert temporär setzen um die Veränderung wahrzunehmen:

ifconfig eth1 mtu 7936

Den gesetzten Wert kann man sofort via ifconfig überprüfen.

Um den Wert nun dauerhaft für diese Verbindung zu definieren, so kann man in „man interfaces“ lesen, sollte die IP Adresse statisch (static) definiert sein.

Die zusätzliche Option „mtu <wert>“  in der Netzwerkkonfiguration genügt für diesen Fall! Hier mein Beispiel:

auto eth1
iface eth1 inet static
address 192.168.200.200
netmask 255.255.255.0
mtu 7936

Dann ist es auch möglich der Netzwerkkarte über diesen Weg den MTU-Wert zuzuweisen.

Bei anderen, Red-Hat-basierenden Systemen sollte das Analog funktionieren. Ist aber ungetestet. Zudem konnte ich noch lesen, dass bei diesen Systemen der Wert auch in die  „/etc/sysconfig/network-script/ifcfg-ethX" eingetragen werden kann.

Wichtig: Der maximale MTU-Wert kann Geräteabhängig sein!! Es gibt Netgear Karten die nur eine max. MTU von 7500 erlauben. Auch von Chipsätzen mit max. 7200 konnte ich lesen.

Ich denke also, dass ein Wert von 7000 an jedem Gerät funktionieren sollte. Probiert es einfach aus oder lest die jeweiligen Herstellerspezifikationen.

Pioneer DVR Festplattentausch

Mein Chef, ganz großes Kino! Das All-in-One Gerät DVR-530H der Firma Pioneer seiner Tochter hat den Geist aufgegeben.

Unbeirrbar bin ich natürlich der Meinung: Her damit, wahrscheinlich kann ichs reparieren!

Ok, gesagt – getan! Als die Kiste nun endlich auf meinem Tisch stand, habe ich zuerst einmal das Gerät gestrippt um die Festplatte freizulegen welche ja die Sorgen bereitete.

Vorab hab ich festgestellt: Ok, das Gerät ist laut Produktionsstempel auf der Unterseite von Mitte 2005, beherbergt eine 160 GB Festplatte, DVD-Brenner und einen Analogreceiver. Im Prinzip ist es damit möglich. DVDs auf die Festplatte zu spielen, Fernsehsendungen aufzunehmen oder die Kiste als Jukebox zu betreiben. ansich ein witziges Gerät.

Die Platte in die nächste Debianbüchse gelegt und angeschlossen um mich nach der Platte zu erkundigen. Es handelt sich witzigerweise um eine FreeBSD Partition (fdisk zeigt id a5, System FreeBSD), unter Debian ist es von Haus aus nicht mögliche jene schreibbar zu mounten. Wenn man sie mounten könnte, würde man wohl mit

mount -t ufs -r -o ufstype=old /dev/partition /mnt

oder

mount -t ufs -r -o ufstype=44bsd /dev/partition /mnt

zugreifen können. Gut, selbst das Smartlog teilt mir unmissverständlich mit: *Die Platte ist hinüber!*. 21 Reallocatiere Sektoren, 392 Logeinträge und zig andere Errors.. Daten retten? Fehlanzeige! good bye, baby! 😀

Nun gut, beim Händler meines Vertrauens eine 500GB IDE bestellt, und freudig eingebaut…

Hab ich die Rechnung ohne Pioneer gemacht! Wenn man das Gerät in Betrieb nimmt, wird man mit einem Error begrüßt, super Sache! Die Festplatte einfach übers Menü zu formatieren ist nicht… tjooaa, mal auf der Pioneerhomepage geschaut und auch gleich Firmware gefunden nebst einer tollen Anleitung. Das wird doch die Platte „aktivieren“?!  5 Firmwareupdates später war mir klar – ich muss mal im Netz suchen gehen.

Die gute Suchmaschine hat mir auch gleich einige Einträge geliefert – und siehe da: man benötigt neben der aktuellen Firmware eine Pioneer Service DVD und eine Pioneer Service Fernbedienung. Puuh, da hab ich mir wieder mehr Arbeit an den Tisch geholt als ich erhofft hatte.

Hier sind die 2 Hauptlinks, die mir zum Erfolg verhalfen…

http://www.pioneerfaq.info/

http://www.dvdboard.de/forum/showpost.php?p=1119186&postcount=1

Also durfte ich mir erstmal das Image der ServiceDVD besorgen, GGV1179 hat für meinen Fall genügt! Da es sich um ein Nero Image handelt, konnte ich es mittels nrg2iso in ein schön brennbares ISO-Format bringen. Ganze 1,9GB für diese Aktion – ob es das Wert war?

Service-DVD und Firmware-CD war nun also endlich vorhanden.

Als nächste Problem stand die Fernbedienung auf der Liste… woher nehmen? WinLIRC und LIRC kennen die IRDA Anschlüsse der verschiedensten Laptops nicht bzw wollen einfach nicht damit arbeiten. Einen alten PalmVx hatte ich auch noch zu Hand, NoviiRemote besorgt und die entsprechende Tastenbelegung im Netz gesucht, schön und gut, aber hat auch nicht funktioniert… ein Arbeitskollege hat ein Dell Axim V50 mit WindowsMobile, damit muss es doch gehen?

Verschiedenste Softwarepakete hab ich nun also ausprobiert, keine hat wirklich funktioniert bzw hatte den nötigen Umfang. Die Story hat sich nun über mehrere Tage hingezogen, letztlich hing es ja nur noch an der Fernbedienung.

Heute hat mich nochmals der Ehrgeiz gepackt, ich MUSS das nun zu einem guten Ende bringen!!

Einige Recherchen über Fernbedienungssoftware habe ich herausgefunden dass wohl das *.ccf bei neuerer Software gerne unterstützt wird. Schliesslich ist es ja immer das Problem zu Softwarepaketen entsprechend passende Templates zu finden. Von Konvertierung aus dem LIRC Format habe ich keine Ahnung und Zeit mir das anzueignen habe ich momentan echt keine.

Letztlich hatte sich der Remote Erfolg dann mit CCF fähiger Software eingestellt, leider ist es nicht bei einer geblieben, manche haben wohl doch Probleme damit (was mit Absturz quitiert wurde). Auch die Templates sind wohl nicht immer astrein. Viel Probieren war also angesagt.

Meine Fernbedienungssolution sah nun wie folgt aus:

Dell Axim V50

Software: TV Remote 5.7

und die Pioneer Service.ccf (stelle ich hier online, hat lange gedauert eine Gute, Funktionable zu finden!)

Die Prozedur ansich war eine einfache Sache:

1. Festtplatte wechseln, Gerät EINSCHALTEN und HDD-Fehlermeldung ignorieren. (die folgende ID muss auf die Platte!)
2. ESC drücken, STEREO drücken, 9stellige CPRM ID notieren, dann CLEAR drücken (somit ist die ID gelöscht)

3. ESC drücken, STEREO drücken, 9stellige CPRM ID eingeben, STOP drücken (somit ist die ID wieder im System)

4. ESC drücken, STEREO drücken, 9stellige CPRM ID eingeben, SEARCH drücken (das initialisiert den Schreibvorgang)

5. Nun heisst es“INSERT ID“. Wir legen also die Service DVD ein… und warten kurz…

6. Wenn auf dem Display „ID DATA OK“ erscheint, CLEAR drücken. (ID ist ins System geschrieben mit neuer Festplatte)

7. Gerät ausschalten und wieder einschalten. (Nur dann werden die Änderungen wirksam)

8. Laufwerk öffnen, Firmware CD einlegen und nach Anleitung vorgehen.

9. Gerät schaltet sich aus, also wieder einschalten.

10. Im Menu die Option zur Festplattenformatierung suchen und durchführen.

11. 500GB = 219h Aufnahmezeit –> *juhu, geschafft*

War doch gar nicht so schwer könnte man meinen – stimmt auch sofern man die richtigen Tools zu Hand hat!

Ich denke die Anleitung kann für jeden Typ dieser Geräte genutzt werden. Sollte man ein Gerät neueren Datums sein Eigen nennen, wäre es möglich dass man eine neuere Version der Service DVD benötigt.

Viel Spass falls Ihr auf der Suche über diese Seite stolpert. Vielleicht kommentiert Ihr meinen Eintrag kurz, ich würde mich darüber freuen!

bootchart

Bootchart – darüber bin ich kürzlich mal gestolpert.

Es halndelt sich dabei um eine Applikation, welche im Stande ist, die Zeit des Bootens unter Linux festzuhalten. Eine witzige Sache wie ich finde. Durchaus auch praktisch um zu sehen, für was das System während des Starts Ressourcen benötigt. Das Tool ist also durchaus brauchbar um den Systemstart durch gesunde Analyse zu beschleunigen!

Was muss man tun?

Grundsätzlich nur folgendes:

aptitude install bootchart

Es installiert das genannte Programm, aber damit ist es noch nicht im Einsatz.

Editiert die Config-Datei /etc/bootchartd.conf, dort sollte man2 Dinge definieren

PROCESS_ACCOUNTING=“yes“

AUTO_RENDER=“yes“

AUTO_RENDER_DIR=“/root“

Desweiteren muss man den Bootparameter in GRUB unter /boot/grub/menu.lst, d.h. #defoptions= muss „init=/sbin/bootchartd“ angehängt werden um es zu aktivieren.

Leider überschreibt das Programm bei jedem Bootvorgang die zuvor erstellte Grafik, also sichert, wenn nötig, die Datei!

Kleine Tuningmaßnahmen können direkt folgen. Installiert dash (ein Ersatz für die bash), readahead (erinnert an prefetch unter M$ Windows) und kompiliert die Hauptmodule in den Kernel mit ein. Ein schnelles Filesystem kann wohl auch Wunder wirken wie ich lesen konnte.

Nach der Installation von dash sollte man mittels „dpkg-reconfigure dash“ den /bin/bash ersetzen, für readahead genügt ein „touch /etc/readahead/profile-once“ um beim nächsten Start die Indizierung zu erwirken.

Letztlich kann man noch Services abschalten die nicht zwingend benötigt werden. Apache oder MySQL um mal 2 Kandidaten (für den Desktopbetrieb) zu nennen.

Happy Tuning!

chmod für Dateien und Ordner

Möchte man ein chmod auf eine Verzeichnisstruktur rekursiv anwenden, so ist es für Ordner erforderlich das Ausführbar-Flag zu setzen, sonst kann man diese nicht mehr öffnen. Gleichzeitig möchte man aber die Dateien nicht ausführbar machen.

Aus dem Grund muss man sich mit find zu helfen wissen. Man sucht also die Ordner rekursiv und wendet das chmod auf das Ergebnis an.

Für Ordner schaut das so aus:

find ./ -type d -print0 | xargs -0 chmod 0755

Für Dateien schaut das so aus:

find ./ -type f -print0 | xargs -0 chmod 0644

Damit kann man dann auch größere Strukturen korrekt behandeln

PHP Code in HTML Dateien ausführen

Eigentlich ne ganz einfache Geschichte:

Von Haus aus werden nach der Installation eines Apache Webservers und Integration von PHP nur *.php Dateien von PHP verarbeitet.

Nun gibt es natürlich den exclusiven Fall, dass ein Entwickler auch PHP Code innerhalb von HTML Dateien verbaut. Wenn man nun des Kunden wegen keine Möglichkeit hat, die genaue URL  in *.php abändern zu lassen (jaa, das soll es geben), muss man sich mittels einem Trick behelfen.

Man editiert den Virtualhost Container und fügt folgende Zeile hinzu, notfalls ist das auch über die .htaccess Datei realisierbar:

AddType application/x-httpd-php php html htm

Schon hat man die Möglichkeit PHP Code auch innerhalb von HTML Dateien auszuführen *gg*

NTFS Partitionen unter Debian

Ein jeder der Linux benutzt kennt das Problem mit den leidigen NTFS Partitionen. Um sie korrekt ins System einzuhängen bedarf es immer etwas Knowledge was gerade für Einsteiger sehr hinderlich ist.

Ich notiere hier der Einfachheit halber mal die 2 möglichen Situationen und die Möglichkeiten sie korrekt zu lösen.

Ich gehe mal davon aus,  das der Umgang mit sudo und das Auflösen einfacher Abhängigkeiten keine Probleme bereitet- man sollte also schon ein wenig mit dem System gearbeitet haben und Pakete installieren können. Zudem fokusiere ich Gnome als DE.

1. Ich habe eine Externe Festplatte mit NTFS Partitionen

Hier kann man relativ einfach zu einem Ergebnis kommen. Über die favorisierte Paketverwaltung müssen folgende Pakete installiert werden: ntfs-3g, ntfsprogs  und libntfs-gnomevfs.

Zudem muss man der Gruppe plugdev angehören, sonst darf man die Platte nicht mounten. Folgender Befehl sorgt dafür.

sudo adduser $USER plugdev

Bei externen Platten kann es manchmal zu Fehlern beim einhängen kommen die Windowsbedingt sind. Beispielsweise wird darauf hingewiesen dass die Platte nicht sauber ausgehängt wurde.

Dazu gibt es ein Werkzeug aus dem Paket nftsprogs. Man öffnet ein Terminal und sorgt mit ntfsfix für eine sauber einhängbare Platte.

Beispiel: „ntfsfix /dev/sde2“ ergibt hier (allerdings saubere NTFS Partition)

Mounting volume… OK
Processing of $MFT and $MFTMirr completed successfully.
NTFS volume version is 3.1.
NTFS partition /dev/sde2 was processed successfully.

2. Ich habe eine Interne Festplatte mit NTFS Partitionen

Hier wirds schon etwas komplizierter, ist aber machbar. Es muss die Datei /etc/fstab angepasst werden, zudem sollten die eben genannten Pakete installiert sein.

Das kann man von Hand erledigen oder ein kleines Tool für sich machen lassen (vllt ganz praktisch wenn man mehrere NFTS Partitionen auf internen Platten hat).  Hier erstmal die Zeile wenn man die Datei selbst bearbeiten will.

/dev/hda1    /media/Win2k    ntfs-3g    defaults,locale=de_DE.UTF-8    0    0

Die Alternative besteht in der Installation eines kleinen Helferwerkzeugs. Dazu sollte man auf jedenfall das Paket make und mind. python 2.6.0 installiert haben, Zugehörigkeit zur Gruppe src ist auch wichtig. Als nächstes holt man sich hier den neuste Sourcecode und speichert diesen in /usr/src (Hier darf nur ein Benutzer der Gruppe src schreiben, d.h. „sudo adduser $USER src“ zur Kontrolle) und entpackt ihn anschließend. Dies kann man im Terminal in einer Zeile durchführen.Das Beispiel wird als Benutzer durchgeführt!

cd /usr/src; wget http://flomertens.free.fr/ntfs-config/download/source/ntfs-config-1.0.1.tar.gz; tar xfz ntfs-config-1.0.1.tar.gz

Nun wechselt man in das erstellte Verzeichnis, führt configure und make als Benutzer aus, die finale Installation ist nur als Root möglich.

cd ntfs-config-1.0.1/;./configure; make; sudo make install;

und das Programm ist kompiliert und installiert!

Mit „sudo ntfs-config“ kann es ausgeführt werden und entsprechende Einstellungen wie *schreibbar* können festgelegt werden.

Wenn man es geschafft hat, darf man sich natürlich freuen! 🙂

Epson’s Unbekannter Druckerfehler

Ein Bekannter meldete sich kürzlich bei mir da er Probleme mit seinem A3 Drucker hatte.

Er berichtete, dass die Lämpchen am Drucker wie wild blinken würden. Er hat sich das Handbuch von Epson herunter geladen und die Fehlerbeschreibungen durchgesehen. Tatsächlich war ein solchen Phänomen in der Fehlerliste zu finden – mit der Beschreibung „Unbekannter Druckerfehler“! So so, es gibt also eine Fehlermeldung von Epson welche einen unbekannten Fehler anzeigt. Ist es nicht so, dass in der Regel die Fehlermeldungen aufgrund von Sensormeldungen auftauchen? Papierstau, Patrone leer – was auch immer, aber bei einem Fehler kann doch nicht *Unbekannter Druckerfehler* die Beschreibung sein?!! Der Zusatz *wenden Sie sich an Ihren authorisierten Fachhändler* ist natürlich auch nicht zu verachten.

Ich , ein herzensguter Mensch, wollte mir natürlich selbst ein Bild davon machen, wer weiss, vielleicht war ja doch wieder der Benutzer schuld an der Geschichte.

Schliesslich vor Ort hab ich mir das mal angesehen, das Blinken & die Fehlerbeschreibung im Handbuch – nicht zu glauben – es handelt sich um diesen Fehler.

Nun gut, was hat man in einer solchen Situation für eine Wahl als Endbenutzer? Zum nächsten Händler fahren und ein Gerät von 2001 reparieren zu lassen ist die schlechte Wahl! Bleibt nur ein Neukauf…

Wenn da nicht Google wäre! Da fand ich kurzerhand einige archivierte Forenbeiträge, die sich mit dem Thema beschäftigen.

Zweifelsfrei wird dort von einer Abzocke seitens Epson gesprochen – Consumer Abzocke im großen Stil! Es war/ist wohl normal bei Geräten dieser Firma – diese beinhalten einen Seitencounter – und nach einer gewissen Anzahl von Seiten – sperrt sich der Drucker.

Angeblich scheint das ein Schutzmechanismus bzgl eines *Alttintenbehälters* zu sein – da ich aber unwissend den Drucker auch über Kopf gekippt habe und nicht voll mit Tinte begossen wurde, stehe ich dem kritisch entgegen.

Manche Leute berichteten von einem Kontakt mit der Epson Hotline – bestrebt den Fehler zu beheben. Ihnen wurde in aller Regel der Druckertot diagnostiziert und ein Neukauf nahe gelegt. Was für eine Strategie ist denn das bitte??

Zum glücklichen Teil der Geschichte komme ich jetzt:

Ich konnte eine russische Seite (englische Version) ausfindig machen, welche ein Tool zum Rücksetzen des Counters anbietet. Herrlich!! *ggg*

Hier werden auch noch die unterstützten Modelle aufgelistet, vllt is ja auch Euer Drucker davon betroffen?!

Schaut es Euch einfach mal an, mir bzw. dem Bekannten hat es jedenfalls geholfen! Ich war baff über die Epson’sche Dreistheit und er war einfach nur fröhlich weil er sich keinen neuen Drucker kaufen muss.

Es gab nur einen Trick dabei: man musste die gewünschte Aktion noch während der Initialisierung ausführen, blinken erst die Lämpchen reagiert auch der Drucker auf keine Eingaben mehr 😉

Es handelte sich um den Protection Counter,  den Menüpunkt findet man im Kontextmenü des Tools nachdem es in der Leiste rechts unten zu finden ist. Ich finde es etwas merkwürdig konzeptioniert – kann aber wohl auch das normale Statusmenü der Epsondrucker ersetzen.