Archiv der Kategorie: Linux

Es ist OpenSource, es ist anpassbar, es ist zerstörbar und das Beste daran, du darfst es alles machen ;)

HOWTO: Xorg DPI Einstellungen mit NVIDIA Treibern festlegen und Bildschirmgröße einstellen

Um die richtige DPI Größe einstellen zu können, muss man zuerst einige Berechnungen einstellen. Die Größe des Bildschirms spielt eine entscheidende Rolle bei der Wahl der DPI Größe, da davon die ganze Darstellung der graphischen Oberfläche abhängt.

Auf dieser Seite kann man ganz einfach und bequem die Informationen errechnen: http://pxcalc.com/

Um die richtigen Einstellungen festzulegen, muss man die folgenden Werte in die xorg.conf eintragen:

Section „Monitor“

DisplaySize 325 203

EndSection

Die Werte von „DisplaySize“ sind „Breite(X) Höhe(y)“.

Damit die Werte relativ zu der Auflösung stimmen, muss der richtige DPI Wert eingestellt werden. Ich benutze diesen Wert aus der obigen Rechnung als Referenzwert und erniedrige den Wert, um alles deutlich kleiner zu haben. Hier ein Beispiel:

Section „Device“

Driver „nvidia“

Option „DPI“ „96 x 96“

EndSection

Weitere Informationen zu den Berechnungen sind auf der folgenden Seite verlinkt:

HOWTO: Linux Kernel 2.6.X nach „Debian Art“ erstellen

Eine kleine Debian Unterrichtseinheit zum Thema: Wie erstelle ich ein Kernel Paket nach „Debian Kochrezept“. Für die Erstellung muss auf dem Rechner das Paket kernel-package installiert sein.

1. Kernel runterladen:

# cd /usr/src
# wget http://www.eu.kernel.org/pub/linux/kernel/v2.6/linux-2.6.22.tar.bz2

2. (optional) Eventuelle Patches für den Kernel runterladen:

# wget http://www.eu.kernel.org/pub/linux/kernel/v2.6/patch-2.6.22.1.bz2

3. Linux Kernel entpacken und Link /usr/src/linux zu den aktuellen Linux Quellen setzen:

# tar xfj linux-2.6.22.tar.bz2

(Optinonal) bei vorhanden patches:
# mv linux-2.6.22 linux-2.6.22.1
# ln -s /usr/src/linux-2.6.22.1 linux

oder bei nicht extra gepatchten Kernel:
# ln -s /usr/src/linux-2.6.22 linux

4. (Optional) in das Verzeichnis wechseln und Patches einspielen:

# cd linux
# bunzip -c <../patch-2.6.22.1.bz2 | patch -p1

4. Kernel konfigurieren:

# make menuconfig

5. Kernel Debian-Paket erstellen:

# make-kpkg clean
# make-kpkg –revision=custom.1.0 –initrd kernel_image

6. Linux Kernel Paket installieren:

# dpkg -i /usr/src/linux-image-2.6.22.1_custom.1.0_i386.deb

oder bei nicht gepatchtem Kernel:

# dpkg -i /usr/src/linux-image-2.6.22_custom.1.0_i386.deb

7. Die Kiste neustarten und hoffen, dass man nichts beim Konfigurieren vergessen hat und der Kernel bootet 😉

Ich hoffe diese kleine Anleitung wird jemanden helfen.

Über ein Kommentar z.B.: „Danke“ würde ich mich freuen, falls es jemanden geholfen hat.

Greetz

Konstantin

HOWTO: Tomcat5.5 unter Debian Lenny (Squeeze, SID wird identisch sein) installieren

Linux ist einfach, aber ab und an gibt es Schwierigkeiten und so wollte Tomcat5.5 nicht, so wie ich wollte. Deswegen schreibe ich hier kurz die Schritte auf, um Tomcat zum Laufen zu überreden. Diese Howto ist nur ein einfacher Einstieg und deckt nicht Sicherheitsmerkmale für den öffentlichen Betrieb ab.

1. Zuerst sollte man die SUN JRE und JDK installieren. Welche Version isntalliert werden soll, bleibt jedem selber überlassen.

Folgende Einträge werden in der /etc/apt/sources.list benötigt:

# Sun java packages are in non-free
deb http://ftp.de.debian.org/debian/ etch main non-free contrib

# also add non-free to security.
deb http://security.debian.org/ etch/updates main non-free contrib

Wer hinter einem Proxy sitzt, der schaut sich bitte die folgenden Informationen an: http://debiananwenderhandbuch.de/apt.conf.html

Welche Quelle (Mirror-Server) ihr benutzt, ist euch überlassen. Am Ende müssen nur die Schlüsselwörter „main non-free contrib“ vorhanden sein, sonst werden die Pakete von apt nicht gefunden.

Java 6 JRE und JDK (empfohlen für Entwickler):

sudo apt-get install sun-java6-jre sun-java6-jdk

oder Java 5 JRE und JDK (empfohlen für Produktivsysteme):

sudo apt-get install sun-java5-jre sun-java5-jdk

2. Dann sollte man zu der jeweiligen Version von java und javac umschalten:

sudo update-alternatives --config java
sudo update-alternatives --config javac

Bitte darauf achten, dass hier zwei Minuse vor „config“ kommen!

und anschließend die Versionen prüfen:

java -version

und

javac -version

3. JAVA_HOME muss gesetzt sein, sonst findet Tomcat die JAVA Umgebung nicht. Dafür habe ich in die Datei /etc/bash.bashrc den folgenden Eintrag eingefügt:

# Setup Jave environment 6
export JAVA_HOME=/usr/lib/jvm/java-6-sun/

oder:

# Setup Jave environment 5
export JAVA_HOME=/usr/lib/jvm/java-5-sun/

Besser ist es die Parameter in /etc/deafault/tomcat5.5 oder /etc/deafault/tomcat6 zu setzen. Allerdings hat es den Nachteil gegenüber der /etc/bash.bashrc Lösung, dass man auf der Shell eine andere Java-Version verwendet, wenn die Parameter nicht einheitlich sind. Für produktive Umgebungen empfehle ich die Parameter in /etc/default/tomcat* zu setzen. Für Entwicklungsumgebungen ist die Lösung über /etc/bash.bashrc weniger fehleranfällig, da alle die gleichen Parameter verwenden.

4. Kurz abmelden und sich wieder als root anmelden.

5. Jetzt kann man Tomcat installieren:


apt-get install tomcat5.5 tomcat5.5-admin tomcat5.5-webapps

Die Einstellungen für Produktivumgebungen überprüfen in /etc/deafault/tomcat5.5 oder /etc/deafault/tomcat6

6. Prüfen ob alles erfolgreich verlaufen ist indem man im Browser die folgende Seite aufruft:

http://localhost:8180

Die Zugangsdaten für den Tomcat-Administrator sind in der folgenden Datei zu finden:

$TOMCAT_HOME/etc/tomcat-users.xml

Ich hoffe diese HOWTO wird jemanden helfen. Für mich ist es eine super Erinnerungshilfe!

Konstantin

Partitionen mit „dd“ unter Linux sichern und auch mal per ssh über das Netzwerk

Wieder eine tolle Aufgabe, die in Linux mit Leichtigkeit zu erledigen ist.

Will man eine Partition mit „dd“ kopieren (bit für bit spiegeln), dann geht es auf die folgende Art und Weise:

# dd if=/dev/sda1 of=/def/sdb1
oder für die ganze Festplatte:
# dd if=/dev/sda of=/def/sdb

Der Nachteil liegt darin, dass man keinen Fortschritt sieht. Dafür habe ich aber ein paar Vorschläge (buffer installieren: aptitude install buffer):
# dd if=/dev/sda1 | buffer -s 64k -S 10m | dd of=/dev/sdb1
oder
# dd if=/dev/sda1 | pv | dd of=/dev/sdb1
Dafür muss man aber pv installieren(unter Debian: apt-get install pv).

Das Gleiche geht natürlich auch in ein Image(mit Anzeige):
# dd if=/dev/sda1 | buffer -s 64k -S 10m > image
oder mit dem Tool „dd_rescue“ falls verfügbar.
Oder das ganze mal verpackt:
# dd if=/dev/sda1 | buffer -s 64k -S 10m | gzip -c > image.gz

Um das ganze über Netzwerk zu betreiben stehen folgende Möglichkeiten zur Verfügung:
In ein Image:
# dd if=/dev/sda1 | pv | ssh user@host „cat > ~/image“
oder mit „buffer“:
# dd if=/dev/sda1 | buffer -s 64k -S 10m | ssh user@host „cat > ~/image“

oder auch mal mit Verpacken:
# dd if=/dev/sda1 | pv| gzip -c | ssh user@host „cat > ~/image.gz“
oder mit „buffer“:
# dd if=/dev/sda1 | buffer -s 64k -S 10m | gzip -c | ssh user@host „cat > ~/image.gz“

Um die Images auf eine Partition einzuspielen tut man das Folgende:
# dd if=image of=/dev/sdb1
oder mit Anzeige:
# dd if=image | pv | dd of=/dev/sdb1
oder
# dd if=image | buffer -s 64k -S 10m | dd of=/dev/sdb1

Natürlich kann man das verpackte Image auch entpacken:
# gunzip -c image.gz | pv | dd of=/dev/sdb1
oder
# gunzip -c image.gz | buffer -s 64k -S 10m | dd of=/dev/sdb1
Oder direkt auf die Partition schreiben mit(benötigt root-Rechte):
# dd if=/dev/sda1 | pv | ssh root@host „dd of=/dev/sdb1“
oder mit „buffer“ (muss vorher mit „aptitude install buffer“ installiert werden):
# dd if=/dev/sda1 | buffer -s 64k -S 10m | ssh root@host „dd of=/dev/sdb1“

Falls du noch ein paar hilfreiche Empfehlungen hast oder irgendwas falsch sein sollte, dann melde dich bitte! Es sind bereits einige Kommentare zu dem Thema eingegangen und dafür danke ich den Schreibern.

Konstantin

Debian auf Englisch mit Anpassungen für Betrieb in Deutschland

Die Anpassungen für den Betrieb sind wegen Kodierung von Umlauten und z.B. Papiergröße usw. nötig. Mir liegt es sehr viel daran, dass die Ausgaben und die MAN-Pages auf Englisch bleiben, da die Übersetzung oft sehr ungewohnt ist. Ich entschuldige mich schon mal vorab bei den Übersetzern, aber ich mag es halt lieber auf Englisch. 😉

1. locales für Englisch(US) und Deutsch(DE_DE) anpassen:

# sudo dpkg-reconfigure locales

und die folgenden Einstellungen wählen:
de_DE.ISO8859-1
de_DE.UTF-8
en_US.ISO8859-1
en_US.UTF-8

In der Environment-Datei die gewünschte Umgebung wählen:

# vi /etc/environment

und die folgenden Einträge einfügen:
# Das System sollte englisch bleiben
LC_ALL=en_US.UTF-8
LANGUAGE=en_US.UTF-8
LANG=en_US.UTF-8

Die Einstellungen für Währung und Zeit sollten Deutsch bleiben, sonst kommt man durcheinander:
# vi /etc/default/locale

# Sprache Englisch und der Rest Deutsch
LANG=en_US.UTF-8
LC_PAPER=de_DE.UTF-8
LC_NUMERIC=de_DE.UTF-8
LC_MONETARY=de_DE.UTF-8

Als letzten Schritt müssten man sich ausloggen oder den Rechner neustarten(für Faule), dann sind die Einsellungen übernommen.

Quellen:

/tmp mit „noexec“ unter Debian Linux

Das /tmp Verzeichnis beinhaltet eine Menge Dateien, die z.B. über Uploadformulare oder Web-Applikationen auf den Rechner kommen und eventuell durch fehlerhafte Anwendungen ausgeführt werden können. Dies passiert meistens nur in dem /tmp Verzeichnis, da alle Dateien über den Webserver meistens zuerst an diesen Ort kopiert werden oder fast jeder Benutzer auf dem System Zugriff auf diesen Ordner hat.

Damit die lieben Hacker, Würmer oder Trojaner sich nicht im /tmp Verzeichnis ausführen lassen, setzten wir das Verzeichnis auf „noexec“. Damit können in diesem Ordner keine Dateien mehr ausgeführt werden, sehr wohl aber gelesen, geschrieben und Verzeichnisse können weiter benutzt werden.

Jeder Vorteil hat auch seine Nachteile. Debian’s apt- und dpkg-tools benutzen das Verzeichnis, um Software zu installieren bzw. zu aktualisieren, da in diesem Verzeichnis Konfigurationsskripts ausgeführt werden.

Als Lösung für das Problem steht das remounten des Verzeichnisses vor jeder Installation.

Ausführbar nach diesem Befehl: „mount -o remount,exec /tmp„;

Nicht mehr ausführbar nach diesem Befehl: „mount -o remount,noexec /tmp„;

Schön ist das, doch wenn man es vergisst oder die fehlgeschlagene Konfiguration übersieht. Dafür bietet apt eine Lösung:

DPkg::Pre-Install-Pkgs {„mount -o remount,exec /tmp“;};
DPkg::Post-Invoke {„mount -o remount /tmp“;};

Sehr schöne Lösung und wird jedem Admin gefallen 😉

Greetz

Konstantin

Quellen:

Netzwerkkarten an bestimmte Namen und damit Reihenfolge unter Linux binden

Besitzt ein Computer mehrere Netzwerkkarten(LAN, Wlan, Firewire-Net), so hat man ständig Ärger mit den Namen, weil sich die Module in verschiedener Reihenfolge laden oder die Namen nicht wie gewollt oder gewünscht liegen.

Die Abhilfe schafft hier in jedem modernen Linux das Device Interface UDEV.

Für Netzwerkkarten unter Debian die folgende Datei editieren:

/etc/udev/rules.d/z25_persistent-net.rules

So sehen Einträge aus:
# PCI device 0x17b3:0x1500 (tg3)
SUBSYSTEM==“net“, DRIVERS==“?*“, ATTRS{address}==“00:00:00:00:00:00″, NAME=“eth0″

Hier werden Namen an eine bestimmte MAC-Adresse gebunden und damit erhält das Netzwerk Interface immer den gleichen Namen.

Schön ist das 🙂

Debian GNU/Linux 4.0 (Etch) goes stable

Heute ist die aktuelle Debian Testing Version 4.0 mit dem Namen Etch als stabile Version veröffentlicht worden. Nach dem Release Plan hätte die Version schon im August veröffentlicht werden sollen, aber wegen zu vielen Kritischen Fehlern wurde die Veröffentlichung verschoben. Damit geht das Debian Team den sicheren Weg und umgeht unnötige Aktualisierungen wegen Fehlern.

Zu den wichtigsten Neuerungen gehören:

  • SecureApt für die Verifizierung von Dateien über GPG
  • Grafischer Installer mit integrierter Funktionalität von „base-config“
  • UTF-8 Umgebung bei der Standardinstallation. Damit schwinden die Probleme mit anders kodierten Dateinamen dahin *freu*
  • UDEV (Version 1.0.5) FileSystem bei neuen Installationen (erfordert zwangsweise einen 2.6er Kernel und man sollte mindestens 2.6.18 nehmen, um Problemen aus dem Weg zu gehen)

Folgende Pakete wurden aktualisiert oder in die Distribution neu aufgenommen:

Neue Pakete die erwähnt werden sollen:

  • Linux Terminal Server Project (keine fremden Pakete mehr nötig)
  • Xen und vserver Varianten des Kernels (damit ist das Patchen des Kernels nicht mehrnötig)
  • Eclipse wurde in „main“ aufgenommen
  • Mono Version 1.2.2.1 ist im Lieferumfang
  • Sun Java in der Version 5.0 ist jetzt nicht mehr in (non-free)

Wichtige Neuerungen für den Serverbetrieb:

  • Kernel 2.6 als Standard
  • Apache 2.2 ist dazu gekommen
  • PHP 5.2.0
  • MySQL 5.0.24
  • Asterisk 1.2
  • Postgresql 8.1
  • XSP /mod_mono 1.2.1

Interessant für den Desktop:

  • X0rg 7.1 in modularer Form
  • Mozilla Firefox 2.0.0.3 (wurde wegen Trade Problemen umbenannt)
  • Thunderbird 1.5 (wurde wegen Trade Problemen umbenannt)

Interne Änderungen am System:

  • Linux Kernel 2.6.18 ist für i386 und AM64 Multiprozessor fähig.
  • GCC 4.1 mit libc 2.3.6 bringt das System auf den neuesten Stand
  • Linux Standard Base LSB 3.1

und vieles vieles mehr.

Für Benutzer die eine Neuinstallation nicht machen können bzw. wollen, was hier wegen udev, kernel2.6 und utf-8 zu empfehlen wäre, rate ich noch ein paar Tage zu warten, bis alle „Howtos“ auf dem „stabilen“ Stand sind. Hier gibt es die ersten Informationen:

Quellen und weitere Informationen:

Schrift und Schriftgröße in Google Earth unter Linux anpassen

Dieser Info ist für neue Google Earth Version obsolete. In den Kommentaren steht die Beschreibung für die neue Version von Google Earth (bei mir im Moment 4.3.X).

Ich hatte das Problem, dass meine Schrift in Google Earth mikrosokopisch klein war und man kaum was lesen konnte. Dieses Problem lässt sich aber lösen, indem man die folgenden Dateien editiert(anpasst,verändert):

Für die Schriftgröße stellt man hier eine Zahl(10-14 als Richtwert) ein:
~/.googleearth/Registry/google/googleearthplus/User/render/guifontsize

Für die Schriftart kann man die folgende Datei editieren:
~/.googleearth/Registry/google/googleearthplus/User/render/guifontfamily

Für weiteres Finetuning finden sich in dem Ordner weitere Dateien mit dem Anfang: (guifont…):
~/.googleearth/Registry/google/googleearthplus/User/render/

Viel Spaß beim Erkunden der Welt