<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ITWS BLOG &#187; linux</title>
	<atom:link href="http://blog.itws.de/category/linux/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.itws.de</link>
	<description>The cake is a lie!</description>
	<lastBuildDate>Tue, 31 Jan 2012 10:34:04 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Arch Linux Pacman Dependency Skip</title>
		<link>http://blog.itws.de/972/arch-linux-pacman-dependency-skip/</link>
		<comments>http://blog.itws.de/972/arch-linux-pacman-dependency-skip/#comments</comments>
		<pubDate>Mon, 23 Jan 2012 09:06:27 +0000</pubDate>
		<dc:creator>Benny</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[arch linux]]></category>
		<category><![CDATA[pacman]]></category>

		<guid isPermaLink="false">http://blog.itws.de/?p=972</guid>
		<description><![CDATA[Da ich es immer wieder vergesse: $ pacman -Rdd package Ähnliche ArtikelDas Arch Linux User-Community RepositoryArch Linux: Alle explizit installierten Pakete auflistenSabayon: Erster Eindruck]]></description>
			<content:encoded><![CDATA[<p>Da ich es immer wieder vergesse:</p>
<pre>$ pacman -Rdd package</pre>
<h4  class="related_post_title">Ähnliche Artikel</h4><ul class="related_post"><li><a href="http://blog.itws.de/369/das-arch-linux-user-community-repository/" title="Das Arch Linux User-Community Repository">Das Arch Linux User-Community Repository</a></li><li><a href="http://blog.itws.de/912/arch-linux-alle-explizit-installierten-pakete-auflisten/" title="Arch Linux: Alle explizit installierten Pakete auflisten">Arch Linux: Alle explizit installierten Pakete auflisten</a></li><li><a href="http://blog.itws.de/910/sabayon-erster-eindruck/" title="Sabayon: Erster Eindruck">Sabayon: Erster Eindruck</a></li></ul> <p><a href="http://blog.itws.de/?flattrss_redirect&amp;id=972&amp;md5=f9d0d39f193da0ff108dce59ab518ad3" title="Flattr" target="_blank"><img src="http://blog.itws.de/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.itws.de/972/arch-linux-pacman-dependency-skip/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Arch Linux: Alle explizit installierten Pakete auflisten</title>
		<link>http://blog.itws.de/912/arch-linux-alle-explizit-installierten-pakete-auflisten/</link>
		<comments>http://blog.itws.de/912/arch-linux-alle-explizit-installierten-pakete-auflisten/#comments</comments>
		<pubDate>Sun, 08 Jan 2012 14:35:31 +0000</pubDate>
		<dc:creator>Benny</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[arch linux]]></category>

		<guid isPermaLink="false">http://blog.itws.de/?p=912</guid>
		<description><![CDATA[Kurz und schmerzlos: $ pacman -Qe Ähnliche ArtikelArch Linux Pacman Dependency SkipSabayon: Erster EindruckGnome 3.2 im Arch Linux Repository]]></description>
			<content:encoded><![CDATA[<p>Kurz und schmerzlos:</p>
<pre>$ pacman -Qe</pre>
<h4  class="related_post_title">Ähnliche Artikel</h4><ul class="related_post"><li><a href="http://blog.itws.de/972/arch-linux-pacman-dependency-skip/" title="Arch Linux Pacman Dependency Skip">Arch Linux Pacman Dependency Skip</a></li><li><a href="http://blog.itws.de/910/sabayon-erster-eindruck/" title="Sabayon: Erster Eindruck">Sabayon: Erster Eindruck</a></li><li><a href="http://blog.itws.de/776/gnome-3-2-im-arch-linux-repository/" title="Gnome 3.2 im Arch Linux Repository">Gnome 3.2 im Arch Linux Repository</a></li></ul> <p><a href="http://blog.itws.de/?flattrss_redirect&amp;id=912&amp;md5=81fcc2ee08877662a62907468f69318d" title="Flattr" target="_blank"><img src="http://blog.itws.de/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.itws.de/912/arch-linux-alle-explizit-installierten-pakete-auflisten/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sabayon: Erster Eindruck</title>
		<link>http://blog.itws.de/910/sabayon-erster-eindruck/</link>
		<comments>http://blog.itws.de/910/sabayon-erster-eindruck/#comments</comments>
		<pubDate>Tue, 27 Dec 2011 13:19:33 +0000</pubDate>
		<dc:creator>Benny</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[arch linux]]></category>
		<category><![CDATA[sabayon]]></category>

		<guid isPermaLink="false">http://blog.itws.de/?p=910</guid>
		<description><![CDATA[Durch eine kleine Diskussion auf G+ wurde ich wieder daran erinnert, dass ich seit einigen Wochen schon einen Blick in die Sabayon Linux Distribution werfen möchte. Ich nutze die ruhige Phase zwischen den Jahren um das System mal auf in einer VBox zu installieren. Was ist Sabayon? Sabayon ist eine auf Gentoo basierende Linux Distribution. Die Philosophie hinter dem Projekt ist, dass alles out of the box funktioniert und die best mögliche UserExperience bietet. Klingt [...]]]></description>
			<content:encoded><![CDATA[<p>Durch eine kleine Diskussion auf G+ wurde ich wieder daran erinnert, dass ich seit einigen Wochen schon einen Blick in die Sabayon Linux Distribution werfen möchte. Ich nutze die ruhige Phase zwischen den Jahren um das System mal auf in einer VBox zu installieren.</p>
<p>Was ist Sabayon? Sabayon ist eine auf Gentoo basierende Linux Distribution. Die Philosophie hinter dem Projekt ist, dass alles out of the box funktioniert und die best mögliche UserExperience bietet.<br />
Klingt für mich im ersten Moment nach einer Distribution, welche die Vorteile von Gentoo und Ubuntu vereint. Und damit schonmal sehr interessant. Ich hatte lange Zeit Ubuntu und Gentoo verwendet und bin nun seit knapp 2 Jahren ein Arch Linux User. Mal sehen, ob mich Sabayon begeistern kann <img src='http://blog.itws.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><span id="more-910"></span></p>
<p>Ich habe mir also mal die Sabayon 7 Gnome x86 iso geladen. Leider ist der Installer beim ersten Versuch abgeraucht. Das kommt davon, wenn man die root Partition zu klein dimensionier (3,5GB) und die Warnungen ignoriert <img src='http://blog.itws.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  Beim zweiten Versuch hat es dann schließlich geklappt. 18GB Root Partition sollten jetzt ausreichen.</p>
<p>Um auf meinem Notebook Einzug zu erhalten, müssen einige Dinge fehlerfrei und interoperabel laufen: Nginx, Tomcat6, Sun JRE 1.6, Ruby 1.9, ZSH, VirtualBox, synergy, etc. Sobald ich das alles in der VBox zum Laufen bekommen habe, das System an sich stabil läuft und mich davon überzeugen kann, dass es mir mehr bringt als ArchLinux, werde ich es auf meinem Notebook installieren.</p>
<p>Mittlerweile ist das System fertig installiert und gebootet. Dabei ist mir im Grub schon direkt aufgefallen, dass das System noch mit dem Kernel 3.0.0 läuft. Mein  Arch Linux bootet  z.Z. den Kernel 3.1.5. Mal sehen, wie es nach dem Upgrade aussieht.</p>
<p>Nach dem Login befinde ich mich im Fallback Mode von Gnome 3.2. Warum der Fallback? Der erzwungene Fallback-Modus ist deaktiviert und auch beim Anmelden habe ich keine Option für den Fallback Modus gesehen oder entsprechend gesetzt. An der fehlenden 3D-Beschleunigung von VirtualBox kann es nicht liegen, da die LiveCD auch die Gnome-Shell gestartet hat. Strange.</p>
<p>Was mir direkt gut gefällt: LibreOffice, Gimp, Evince, Chromium, XChat, Empathy, Exalie, Adobe Flash Player, etc. sind vorinstalliert. Und auch das Menü sieht sehr übersichtlich aus. Außerdem gefällt mir das Icon-Set, aber das ist nebensächlich. Dafür ist VIM aber nicht vorinstalliert :/</p>
<p>Der grafische Paketmanager macht einen netten Eindruck, den werde ich als Shell Ninja aber ohnehin nicht verwenden. Equo lässt sich wirklich einfach bedienen und ist sehr gesprächig. Leider so gesprächig, dass es unübersichtlich wird. Außerdem verwendet Entropy die PROXY-Umgebungsvariablen nicht. Die Proxy Konfiguration muss also manuell in die entropy.conf eingetragen werden, was weniger flexibel ist.</p>
<p>Equo search ist ähnlich unübersichtlich wie die Portage Variante. Hier schneidet Pacman bzw. Yaourt auch etwas besser ab.</p>
<p>Nach dem Upgrade auf den aktuellen Stand und einem reboot steht mir dann zwar immer noch kein aktueller Kernel zur Verfügung aber dafür stirbt gnome auch instant nach dem booten. Super. Grund: assertion failed.</p>
<p>Damit ist mein Sabayon Experiment erstmal beendet.</p>
<h4  class="related_post_title">Ähnliche Artikel</h4><ul class="related_post"><li><a href="http://blog.itws.de/972/arch-linux-pacman-dependency-skip/" title="Arch Linux Pacman Dependency Skip">Arch Linux Pacman Dependency Skip</a></li><li><a href="http://blog.itws.de/912/arch-linux-alle-explizit-installierten-pakete-auflisten/" title="Arch Linux: Alle explizit installierten Pakete auflisten">Arch Linux: Alle explizit installierten Pakete auflisten</a></li><li><a href="http://blog.itws.de/776/gnome-3-2-im-arch-linux-repository/" title="Gnome 3.2 im Arch Linux Repository">Gnome 3.2 im Arch Linux Repository</a></li></ul> <p><a href="http://blog.itws.de/?flattrss_redirect&amp;id=910&amp;md5=af3d93b7eec672fd4d42268b6f4a83c6" title="Flattr" target="_blank"><img src="http://blog.itws.de/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.itws.de/910/sabayon-erster-eindruck/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>WordPress unter Nginx</title>
		<link>http://blog.itws.de/783/wordpress-unter-nginx/</link>
		<comments>http://blog.itws.de/783/wordpress-unter-nginx/#comments</comments>
		<pubDate>Sat, 24 Sep 2011 07:20:50 +0000</pubDate>
		<dc:creator>Benny</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://blog.itws.de/?p=783</guid>
		<description><![CDATA[Im Zuge meiner Umstellung von Apache auf Nginx mussten auch vier WordPress-Installationen migriert werden. Interessant dabei waren in erster Linie die Permalinks zu erhalten (und damit die RewriteRules zu portieren). Da es sich um vier voneinander unabhängige WordPress-Installationen handelt und ich die Server Config DRY halten möchte, gibt es für die WordPress-spezifischen Sachen mal wieder eine include Datei: # vim /etc/nginx/wordpress.inc rewrite ^(/[^/]+/)?files/(.+) /wp-includes/ms-files.php?file=$2 last; rewrite ^(/[^/]+)?(/wp-.*) $2 last; rewrite ^(/[^/]+)?(/.*\.php) $2 last; rewrite ^/(.*)$ [...]]]></description>
			<content:encoded><![CDATA[<p>Im Zuge meiner Umstellung von Apache auf Nginx mussten auch vier WordPress-Installationen migriert werden. Interessant dabei waren in erster Linie die Permalinks zu erhalten (und damit die RewriteRules zu portieren).</p>
<p>Da es sich um vier voneinander unabhängige WordPress-Installationen handelt und ich die Server Config DRY halten möchte, gibt es für die WordPress-spezifischen Sachen mal wieder eine include Datei:</p>
<pre># vim /etc/nginx/wordpress.inc</pre>
<pre>rewrite ^(/[^/]+/)?files/(.+) /wp-includes/ms-files.php?file=$2 last;

rewrite ^(/[^/]+)?(/wp-.*) $2 last;
rewrite ^(/[^/]+)?(/.*\.php) $2 last;

rewrite ^/(.*)$ /index.php?q=$1 last;

if (!-e $request_filename) {
        rewrite ^(.+)$ /index.php?q=$1 last;
}</pre>
<p>&nbsp;</p>
<p>Nun müssen die VHost-Konfigurationen noch entsprechend um ein Include erweitern werden:</p>
<pre># blog.itws.de
server {
        server_name blog.itws.de;
        root /var/www/itws.de/blog;

        include defaults.inc;
        include enable_php.inc;
        include wordpress.inc;
}</pre>
<p>Fertig. Wie ihr sehen könnt, an sich also kein Hexenwerk.</p>
<h4  class="related_post_title">Ähnliche Artikel</h4><ul class="related_post"><li><a href="http://blog.itws.de/769/debian-von-apache-zu-nginx-teil-5-basic-authentication/" title="Debian: Von Apache zu Nginx &#8211; Teil 5: Basic Authentication">Debian: Von Apache zu Nginx &#8211; Teil 5: Basic Authentication</a></li><li><a href="http://blog.itws.de/767/debian-von-apache-zu-nginx-teil-4-einen-tomcat-anbinden/" title="Debian: Von Apache zu Nginx &#8211; Teil 4: Einen Tomcat anbinden">Debian: Von Apache zu Nginx &#8211; Teil 4: Einen Tomcat anbinden</a></li><li><a href="http://blog.itws.de/763/debian-von-apache-zu-nginx-teil-3-php/" title="Debian: Von Apache zu Nginx &#8211; Teil 3: PHP">Debian: Von Apache zu Nginx &#8211; Teil 3: PHP</a></li></ul> <p><a href="http://blog.itws.de/?flattrss_redirect&amp;id=783&amp;md5=f0eb72662f5680973ae348d881547f44" title="Flattr" target="_blank"><img src="http://blog.itws.de/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.itws.de/783/wordpress-unter-nginx/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Debian: Von Apache zu Nginx &#8211; Teil 5: Basic Authentication</title>
		<link>http://blog.itws.de/769/debian-von-apache-zu-nginx-teil-5-basic-authentication/</link>
		<comments>http://blog.itws.de/769/debian-von-apache-zu-nginx-teil-5-basic-authentication/#comments</comments>
		<pubDate>Fri, 23 Sep 2011 07:35:07 +0000</pubDate>
		<dc:creator>Benny</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[nginx]]></category>

		<guid isPermaLink="false">http://blog.itws.de/?p=769</guid>
		<description><![CDATA[Übersicht Teil 1: Vorwort Teil 2: Installation und Konfiguration Teil 3: PHP Teil 4: Einen Tomcat anbinden Teil 5: Basic Authentication &#160; Wie im ersten Teil beschrieben, muss ich ein paar meiner VHosts per Basic Authentication schützen. Hier zeige ich euch noch kurz, wie ich das mit nginx angestellt habe. In meinem Fall möchte ich die Subdomain ci.itws.de schützen. Dazu lege ich mir erstmal ein Verzeichnis auth an, in dem ich die htpasswd-Dateien speichere: # [...]]]></description>
			<content:encoded><![CDATA[<h1>Übersicht</h1>
<ul>
<li><a href="http://blog.itws.de/747/debian-von-apache-zu-nginx-teil-1-vorwort/">Teil 1: Vorwort</a></li>
<li><a href="http://blog.itws.de/754/debian-von-apache-zu-nginx-teil-2-installation-und-konfiguration/">Teil 2: Installation und Konfiguration</a></li>
<li><a href="http://blog.itws.de/763/debian-von-apache-zu-nginx-teil-3-php/">Teil 3: PHP</a></li>
<li><a href="http://blog.itws.de/767/debian-von-apache-zu-nginx-teil-4-einen-tomcat-anbinden/">Teil 4: Einen Tomcat anbinden</a></li>
<li><strong>Teil 5: Basic Authentication</strong></li>
</ul>
<p>&nbsp;</p>
<p>Wie im ersten Teil beschrieben, muss ich ein paar meiner VHosts per Basic Authentication schützen. Hier zeige ich euch noch kurz, wie ich das mit nginx angestellt habe.</p>
<p>In meinem Fall möchte ich die Subdomain ci.itws.de schützen. Dazu lege ich mir erstmal ein Verzeichnis auth an, in dem ich die htpasswd-Dateien speichere:</p>
<pre># mkdir /etc/nginx/auth</pre>
<p>&nbsp;</p>
<p>Und ich lege mir einen Benutzer an:</p>
<pre># htpasswd -c /etc/nginx/auth/ci ghost</pre>
<p>&nbsp;</p>
<p>Danach muss ich nur noch den server-Block in der Datei /etc/nginx/sites-available/itws.de anpassen:</p>
<pre>server {
    server_name ci.itws.de;
    root /var/www/itws.de/ci;

    include defaults.inc;
    include enable_php.inc;

    auth_basic  "ITWS CI";
    auth_basic_user_file auth/ci;
}</pre>
<p>Fertig. Nach einem schnellen Restart von Nginx ist ci.itws.de per BA geschützt.</p>
<h4  class="related_post_title">Ähnliche Artikel</h4><ul class="related_post"><li><a href="http://blog.itws.de/783/wordpress-unter-nginx/" title="Wordpress unter Nginx">Wordpress unter Nginx</a></li><li><a href="http://blog.itws.de/767/debian-von-apache-zu-nginx-teil-4-einen-tomcat-anbinden/" title="Debian: Von Apache zu Nginx &#8211; Teil 4: Einen Tomcat anbinden">Debian: Von Apache zu Nginx &#8211; Teil 4: Einen Tomcat anbinden</a></li><li><a href="http://blog.itws.de/763/debian-von-apache-zu-nginx-teil-3-php/" title="Debian: Von Apache zu Nginx &#8211; Teil 3: PHP">Debian: Von Apache zu Nginx &#8211; Teil 3: PHP</a></li></ul> <p><a href="http://blog.itws.de/?flattrss_redirect&amp;id=769&amp;md5=7db2ec2e0c5dada81ac7a15e3fc8779f" title="Flattr" target="_blank"><img src="http://blog.itws.de/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.itws.de/769/debian-von-apache-zu-nginx-teil-5-basic-authentication/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Debian: Von Apache zu Nginx &#8211; Teil 4: Einen Tomcat anbinden</title>
		<link>http://blog.itws.de/767/debian-von-apache-zu-nginx-teil-4-einen-tomcat-anbinden/</link>
		<comments>http://blog.itws.de/767/debian-von-apache-zu-nginx-teil-4-einen-tomcat-anbinden/#comments</comments>
		<pubDate>Thu, 22 Sep 2011 07:20:51 +0000</pubDate>
		<dc:creator>Benny</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[tomcat]]></category>

		<guid isPermaLink="false">http://blog.itws.de/?p=767</guid>
		<description><![CDATA[Übersicht Teil 1: Vorwort Teil 2: Installation und Konfiguration Teil 3: PHP Teil 4: Einen Tomcat anbinden Teil 5: Basic Authentication &#160; Ich möchte den Nginx auch auf meinem Notebook verwenden um dort die gleiche Umgebung wie auf dem Server zu haben. Und auch die gleiche Performance. Da ich aber in der Firma mit dem Tomcat arbeite (den ich zur Zeit über mod_proxy an den Apachen angeklingt habe), muss ich meinen Nginx auch entsprechen konfigurieren. [...]]]></description>
			<content:encoded><![CDATA[<h1>Übersicht</h1>
<ul>
<li><a href="http://blog.itws.de/747/debian-von-apache-zu-nginx-teil-1-vorwort/">Teil 1: Vorwort</a></li>
<li><a href="http://blog.itws.de/754/debian-von-apache-zu-nginx-teil-2-installation-und-konfiguration/">Teil 2: Installation und Konfiguration</a></li>
<li><a href="http://blog.itws.de/763/debian-von-apache-zu-nginx-teil-3-php/">Teil 3: PHP</a></li>
<li><strong>Teil 4: Einen Tomcat anbinden</strong></li>
<li><a href="http://blog.itws.de/769/debian-von-apache-zu-nginx-teil-5-basic-authentication/">Teil 5: Basic Authentication</a></li>
</ul>
<p>&nbsp;</p>
<p>Ich möchte den Nginx auch auf meinem Notebook verwenden um dort die gleiche Umgebung wie auf dem Server zu haben. Und auch die gleiche Performance.</p>
<p>Da ich aber in der Firma mit dem Tomcat arbeite (den ich zur Zeit über mod_proxy an den Apachen angeklingt habe), muss ich meinen Nginx auch entsprechen konfigurieren. Da die Proxy-Funktionen im Nginx kein Modul sind, sondern der Nginx selbst ein Proxy-Server ist, ist das spielend einfach:</p>
<pre>server {
    server_name ci.itws.de;
    root /var/www/itws.de/ci;

    index index.jsp index.html index.htm;

    proxy_pass http://localhost:8080;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
}</pre>
<h4  class="related_post_title">Ähnliche Artikel</h4><ul class="related_post"><li><a href="http://blog.itws.de/747/debian-von-apache-zu-nginx-teil-1-vorwort/" title="Debian: Von Apache zu Nginx &#8211; Teil 1: Vorwort">Debian: Von Apache zu Nginx &#8211; Teil 1: Vorwort</a></li><li><a href="http://blog.itws.de/895/deployment-von-ruby-on-rails-applikationen/" title="Deployment von Ruby on Rails Applikationen">Deployment von Ruby on Rails Applikationen</a></li><li><a href="http://blog.itws.de/783/wordpress-unter-nginx/" title="Wordpress unter Nginx">Wordpress unter Nginx</a></li></ul> <p><a href="http://blog.itws.de/?flattrss_redirect&amp;id=767&amp;md5=7943e6270e506a271742f8073cb04e9a" title="Flattr" target="_blank"><img src="http://blog.itws.de/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.itws.de/767/debian-von-apache-zu-nginx-teil-4-einen-tomcat-anbinden/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Debian: Von Apache zu Nginx &#8211; Teil 2: Installation und Konfiguration</title>
		<link>http://blog.itws.de/754/debian-von-apache-zu-nginx-teil-2-installation-und-konfiguration/</link>
		<comments>http://blog.itws.de/754/debian-von-apache-zu-nginx-teil-2-installation-und-konfiguration/#comments</comments>
		<pubDate>Mon, 19 Sep 2011 10:38:14 +0000</pubDate>
		<dc:creator>Benny</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[nginx]]></category>

		<guid isPermaLink="false">http://blog.itws.de/?p=754</guid>
		<description><![CDATA[Übersicht Teil 1: Vorwort Teil 2: Installation und Konfiguration Teil 3: PHP Teil 4: Einen Tomcat anbinden Teil 5: Basic Authentication &#160; Installation Um eine aktuelle Version (1.0.6) auch unter Debian zu bekommen, kann man einfach das dotdeb Repository in die sources.list aufnehmen: dotdeb.org bietet ein umfangreiches Repository um Debian Systeme in perfekte LAMP Server zu verwandeln. Hier ist nicht nur die aktuelle Version von PHP 5.3 mit dem FPM, den ich später noch brauchen [...]]]></description>
			<content:encoded><![CDATA[<h1>Übersicht</h1>
<ul>
<li><a href="/747/debian-von-apache-zu-nginx-teil-1-vorwort/">Teil 1: Vorwort</a></li>
<li><strong>Teil 2: Installation und Konfiguration</strong></li>
<li><a href="http://blog.itws.de/763/debian-von-apache-zu-nginx-teil-3-php/">Teil 3: PHP</a></li>
<li><a href="http://blog.itws.de/767/debian-von-apache-zu-nginx-teil-4-einen-tomcat-anbinden/">Teil 4: Einen Tomcat anbinden</a></li>
<li><a href="http://blog.itws.de/769/debian-von-apache-zu-nginx-teil-5-basic-authentication/">Teil 5: Basic Authentication</a></li>
</ul>
<p>&nbsp;</p>
<h1>Installation</h1>
<p>Um eine aktuelle Version (1.0.6) auch unter Debian zu bekommen, kann man einfach das <a href="http://www.dotdeb.org/" target="_blank">dotdeb</a> Repository in die sources.list aufnehmen:<br />
dotdeb.org bietet ein umfangreiches Repository um Debian Systeme in perfekte LAMP Server zu verwandeln. Hier ist nicht nur die aktuelle Version von PHP 5.3 mit dem FPM, den ich später noch brauchen werde, sondern auch die aktuelle Version des nginx zu finden. Außerdem ist die Default-Konfiguration des Nginx aus dem dotdeb Repo etwas sauberer als die aus dem offiziellen Debian Nginx Repo &#8230;<br />
<span id="more-754"></span></p>
<pre># vim /etc/apt/sources.list</pre>
<pre>deb http://packages.dotdeb.org stable all
deb-src http://packages.dotdeb.org stable all</pre>
<p>Danach kurz die Paketliste aktualisieren und den nginx installieren:</p>
<pre># apt-get update
# apt-get install nginx</pre>
<p><span style="color: #ff0000;"> <div style="float: right; width: 200px; margin: 8px;">
<script type="text/javascript"><!--
google_ad_client = "ca-pub-4129785061498511";
/* itws content image */
google_ad_slot = "4724159474";
google_ad_width = 200;
google_ad_height = 200;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></span></p>
<h1>Basis Konfiguration</h1>
<p>Was mir im Konfigurationsverzeichnis des Nginx direkt auffällt sind die beiden Verzeichnisse &#8220;sites-avilable&#8221; und &#8220;sites-enabled&#8221;, welche man ja bereits vom apache kennt.</p>
<p>In der nginx.conf ändere ich folgende Parameter:</p>
<ul>
<li><em>user www-data www-data;</em></li>
<li><em>index index.php index.htm index.html;</em></li>
</ul>
<p>In den http-Block füge ich außerdem noch einige gzip Parameter ein:</p>
<pre>    gzip                    on;
    gzip_comp_level         9;
    gzip_proxied            any;
    gzip_types              text/plain text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript image/png image/gif image/jpeg;
    gzip_http_version       1.1;
    gzip_min_length         1000;
    gzip_buffers            16 8k;
    gzip_disable            "MSIE [1-6] \.";
    gzip_vary               on;</pre>
<p>Zusätzlich benötigen wir zwei Include Statements. Ersteres sollte bereits in der nginx.conf enthalten sein. Letzteres benötigen wir für die VHosts:</p>
<pre>include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;</pre>
<p>&nbsp;</p>
<h1>Virtuelle Hosts konfigurieren</h1>
<p>Im <em>sites-aviable</em> Verzeichnis benenne ich die Datei &#8220;<em>default</em>&#8221; in &#8220;<em>itws.de</em>&#8221; um und füge folgenden Inhalt ein:</p>
<pre>server {
    server_name itws.de www.itws.de;
    root /var/www/itws.de/www;

    # redirection to blog.itws.de
    rewrite ^(.*) http://blog.itws.de$1 permanent;
}

server {
    server_name blog.itws.de;
    root /var/www/itws.de/blog;

    location / {
        try_files $uri $uri/ /index.php /index.html;
    }

    location ~ /\.ht {
        deny all;
    }

     location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|xml)$ {
         access_log off;
         expires 30d;
         root /var/www;
     }
}

server {
     server_name ci.itws.de;
     root /var/www/itws.de/ci;

     location / {
         try_files $uri $uri/ /index.php /index.html;
     }

     location ~ /\.ht {
         deny all;
     }

     location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|xml)$ {
         access_log off;
         expires 30d;
         root /var/www;
     }
}</pre>
<p>Im <a href="http://wiki.nginx.org/Configuration" target="_blank">Wiki</a> gibts mehr Beispiele, Parameter und Dokumentation.</p>
<p>Danach gibts noch eine Datei yaana.de mit ähnlichem Inhalt.</p>
<p>Im Anschluss daran müssen beide Konfigurationen aktiviert werden:</p>
<pre># ln -s /etc/nginx/sites-available/itws.de /etc/nginx/sites-enabled/itws.de
# ln -s /etc/nginx/sites-available/yaana.de /etc/nginx/sites-enabled/yaana.de</pre>
<p>Diese Konfiguration kann ich mit 2-3 statischen Hallo-Welt-Dateien schonmal testen.<br />
Funktioniert einwandfrei.</p>
<p>Jetzt möchte ich aber nicht jedes Mal diese ganzen location-Blöcke in jedem VHost haben. Deswegen lege ich mir eine Include Datei hierfür an:</p>
<pre># vim /etc/nginx/defaults.inc</pre>
<p>Diese erhält folgenden Inhalt:</p>
<pre>location / {
    try_files $uri $uri/ /index.php /index.html;
}

location ~ /\. {#
    access_log off;
    log_not_found off;
    deny all;
}

location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|xml)$ {
    access_log off;
    expires 30d;
}

location ~ (\.inc\.php|\.tpl|\.sql|\.tpl\.php|\.db)$ {
    deny all;
}</pre>
<p>Nun ändere ich meine VHost Konfigurationen entsprechend ab:</p>
<pre>server {
    server_name itws.de www.itws.de;
    root /var/www/itws.de/www;

    # redirection to blog.itws.de
    rewrite ^(.*) http://blog.itws.de$1 permanent;
}

server {
    server_name blog.itws.de;
    root /var/www/itws.de/blog;

    Include defaults.inc;
}

server {
     server_name ci.itws.de;
     root /var/www/itws.de/ci;

     Include defaults.inc;
}</pre>
<p>Perfekt! Weniger Konfiguration als im Apache, aber mehr Performance <img src='http://blog.itws.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<h4  class="related_post_title">Ähnliche Artikel</h4><ul class="related_post"><li><a href="http://blog.itws.de/747/debian-von-apache-zu-nginx-teil-1-vorwort/" title="Debian: Von Apache zu Nginx &#8211; Teil 1: Vorwort">Debian: Von Apache zu Nginx &#8211; Teil 1: Vorwort</a></li><li><a href="http://blog.itws.de/783/wordpress-unter-nginx/" title="Wordpress unter Nginx">Wordpress unter Nginx</a></li><li><a href="http://blog.itws.de/769/debian-von-apache-zu-nginx-teil-5-basic-authentication/" title="Debian: Von Apache zu Nginx &#8211; Teil 5: Basic Authentication">Debian: Von Apache zu Nginx &#8211; Teil 5: Basic Authentication</a></li></ul> <p><a href="http://blog.itws.de/?flattrss_redirect&amp;id=754&amp;md5=3d8502770f4ac886ca53afaba114c1b6" title="Flattr" target="_blank"><img src="http://blog.itws.de/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.itws.de/754/debian-von-apache-zu-nginx-teil-2-installation-und-konfiguration/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Debian: Von Apache zu Nginx &#8211; Teil 1: Vorwort</title>
		<link>http://blog.itws.de/747/debian-von-apache-zu-nginx-teil-1-vorwort/</link>
		<comments>http://blog.itws.de/747/debian-von-apache-zu-nginx-teil-1-vorwort/#comments</comments>
		<pubDate>Sun, 18 Sep 2011 09:11:52 +0000</pubDate>
		<dc:creator>Benny</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[lighttpd]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[vps]]></category>

		<guid isPermaLink="false">http://blog.itws.de/?p=747</guid>
		<description><![CDATA[Übersicht Teil 1: Vorwort Teil 2: Installation und Konfiguration Teil 3: PHP Teil 4: Einen Tomcat anbinden Teil 5: Basic Authentication &#160; In diesem und den folgenden Beiträgen (es gibt jeden Tag einen) berichte ich euch ein wenig über meine Migration von Apache zu Nginx. Es war eigentlich nicht beabsichtigt, dass da ganze fünf Beiträge draus werden, aber irgendwie wurde es doch ziemlich viel Text und das war dann für einen einzelnen Artikel etwas zu [...]]]></description>
			<content:encoded><![CDATA[<h1>Übersicht</h1>
<ul>
<li><strong>Teil 1: Vorwort</strong></li>
<li><a href="http://blog.itws.de/754/debian-von-apache-zu-nginx-teil-2-installation-und-konfiguration/">Teil 2: Installation und Konfiguration</a></li>
<li><a href="http://blog.itws.de/763/debian-von-apache-zu-nginx-teil-3-php/">Teil 3: PHP</a></li>
<li><a href="http://blog.itws.de/767/debian-von-apache-zu-nginx-teil-4-einen-tomcat-anbinden/">Teil 4: Einen Tomcat anbinden</a></li>
<li><a href="http://blog.itws.de/769/debian-von-apache-zu-nginx-teil-5-basic-authentication/">Teil 5: Basic Authentication</a></li>
</ul>
<p>&nbsp;</p>
<p>In diesem und den folgenden Beiträgen (es gibt jeden Tag einen) berichte ich euch ein wenig über meine Migration von Apache zu Nginx. Es war eigentlich nicht beabsichtigt, dass da ganze fünf Beiträge draus werden, aber irgendwie wurde es doch ziemlich viel Text und das war dann für einen einzelnen Artikel etwas zu viel. Da könnte man ja fast den Eindruck bekommen, ich würde gerne schreiben &#8230; Keine Angst, das einzige was ich gerne in großen Mengen schreibe ist Programmcode <img src='http://blog.itws.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>However, ich hatte meinen VPS (Debian 6) bisher immer mit dem apache2 betrieben und auch meine Entwicklungsumgebung auf meinem Desktop und dem Notebook ebenfalls. Das hatte mehrere Gründe. Zum Einen bin ich mit dem Apache aufgewachsen und hatte eigentlich nie etwas anderes verwendet. Ich war auch immer sehr zufrieden mit dem Apachen. Es ist ein guter Webserver mit einer großen Auswahl an mächtigen Modulen und er ist sehr leicht zu konfigurieren. Da ich aber ab und an gerne etwas Neues ausprobiere und immer Spaß daran habe, an meinem Server zu schrauben (auf Software-Ebene), wollte ich mal einen anderen Webserver ausprobieren. Genaugenommen war das Projekt yaana.de einer der Auslöser. Ich möchte da noch etwas Performance aus dem Server quetschen. Und dafür sollte ich mich zu allererst vom Apachen verabschieden.</p>
<p>Zur Auswahl stehen also &#8211; neben dem Apachen &#8211; Lighttpd und Nginx (ausgesprochen: engine-x).</p>
<p><span id="more-747"></span></p>
<p>Zu allererst ein kurzer Überblick der Vor- und Nachteile der drei Kontrahenten: Apache, Lighttpd und Nginx:</p>
<h2></h2>
<h1>Der Apache</h1>
<h2>Vorteile</h2>
<ul>
<li><strong><span class="Apple-style-span" style="font-size: 13px;">Open Source &amp; Kostenlos</span></strong></li>
<li><strong>Community</strong>. Apache ist der am meist verbeiteste Webserver, die Community dahinter ist entsprechend gigantisch.</li>
<li><strong>Module</strong>. Es gibt unzählige Module für den Apache um praktisch jede Funktionalität abzudecken</li>
</ul>
<p>&nbsp;</p>
<h2>Nachteile</h2>
<ul>
<li><strong>Performance</strong>. Der Apache ist um einiges langsamer als seine Konkurenten. Vor Allem wenn es um das Ausliefern von statischen Dateien geht.</li>
<li><strong>Stabilität</strong>. Der Webserver hat schon mit schwachen DoS/DDoS Attacken Probleme, der Arbeitsspeicher (und das Logverzeichnis) verbrauchen innerhalb kurzer Zeit viel Speicher.</li>
<li><strong>Veraltet und überfüllt</strong>. Außerdem ist die Standard Konfiguration meistens nicht optimal und muss angepasst werden.</li>
<li>Die <strong>Entwicklung</strong> läuft vergleichsweise <strong>langsam</strong>.</li>
</ul>
<p>&nbsp;</p>
<p><span style="color: #ff0000;"> <div style="float: right; width: 200px; margin: 8px;">
<script type="text/javascript"><!--
google_ad_client = "ca-pub-4129785061498511";
/* itws content image */
google_ad_slot = "4724159474";
google_ad_width = 200;
google_ad_height = 200;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></span></p>
<h1>Der Lighttpd</h1>
<h2>Vorteile</h2>
<ul>
<li><strong>Open Source &amp; Kostenlos</strong></li>
<li><strong>Leichtgewichtig</strong>. In Version 1.4.13 benötigt der Lighty nicht mehr als 2Mb RSS auf einem VPS. Ein einzelner Prozess erledigt alles, selbst wenn 100 Connections eingehen.</li>
<li><strong>Geschwindigkeit</strong>. Die Auslieferung von statischen Dateien geschieht mit einer unglaublichen Geschwindigkeit. Das FastCGI und das Proxy Serving ist ebenfalls rasant schnell.</li>
<li><strong>Module</strong>. Es gibt gefühlt unendlich viele Module mit einer guten Dokumentation.</li>
<li><strong>Mod_magnet</strong> ist eine Scripting Engine direkt im Webserver. Das Modul integriert Lua in lighttpd.</li>
<li><strong>Community</strong>. Einen Blog, ein Wiki/bug tracker und ein Forum. Hier findet man immer Hilfe</li>
</ul>
<p>&nbsp;</p>
<p><span class="Apple-style-span" style="font-size: 20px; font-weight: bold;">Nachteile</span></p>
<ul>
<li><strong>Geringe Stabilität</strong> gerade was HTTPS+Proxy in Kombination mit Python oder Ruby angeht.</li>
<li><strong>Kein Mod_rewrite</strong>. Die Built-in rewriting engine ist Schrott, und das Portieren der Apache mod_rewrite Regeln ist nicht ganz einfach.</li>
<li><strong>Memory leaks</strong>. Und diese wurden seither nicht gefixed.</li>
<li>Die <strong>Entwicklung</strong> läuft vergleichsweise <strong>langsam</strong>.</li>
</ul>
<p>&nbsp;</p>
<h1>Nginx</h1>
<h2>Vorteile</h2>
<ul>
<li><strong>Open Source &amp; Kostenlos</strong></li>
<li><strong>Leichtgewichtig</strong>. Zwar nicht ganz so leicht wie der Lighty, aber dennoch nicht so Ressourcenhungrig wie der Apache.</li>
<li><strong>Schnell</strong>. Einie benchmarks haben gezeigt, dass Nginx deutlich schneller ist als der Lighty und der Apache. Gerade was die Auslieferung von statischen Inhalten angeht.</li>
<li><strong>Module</strong>. Ähnlich wie bei den beiden anderen Kontrahenten gibt es auch hier mehr Module als man benötigt. Während Lighttpd eine Lua scripting engine besitzt, kann man den Nginx mit dem Perl Interpreter aufmotzen.</li>
<li><strong>Besseres Rewrite Modul</strong>. Ein sehr viel besseres Rewrite Modul als Lighttpd mit komplexen Bedinungen. Das Portieren von mod_rewrite Regeln vom Apache ist vergleichsweise einfach.</li>
<li><strong>Stabil</strong> und keine leaks. Keine Probleme bekannt.</li>
<li>Sehr <strong>schnelle Entwicklung</strong>: Es gibt fast monatlich Updates</li>
<li>Die <strong>Konfiguration</strong> ist <strong>einfach</strong> und übersichtlich.</li>
</ul>
<h2>Nachteile</h2>
<ul>
<li><strong>Kleine Community</strong>. Es gibt einen IRC und ein Wiki. Dann wirds auch schon eng.</li>
<li>Nginx kann <strong>keine FastCGI Prozesse</strong> erstellen. Das muss dann über einen externen fcgi spawner geschehen.</li>
</ul>
<p>&nbsp;</p>
<p><span style="color: #ff0000;"> <div style="float: right; width: 200px; margin: 8px;">
<script type="text/javascript"><!--
google_ad_client = "ca-pub-4129785061498511";
/* itws content image */
google_ad_slot = "4724159474";
google_ad_width = 200;
google_ad_height = 200;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></span></p>
<p>Der Lighttpd kam bei mir eigentlich nie wirklich in Frage. Das hatte zwei Gründe:</p>
<ol>
<li>Ist die Konfiguration wirklich hässlich <img src='http://blog.itws.de/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' />  Sorry aber ich bin da etwas sensibel.</li>
<li>Weil der Lighttpd ein paar Memory Leaks hat, die seit Jahren nicht gefixt werden.</li>
<li>Hatte ich mir bereits vor längerer Zeit die Rewrite Rules vom Lighty angesehen &#8211; eher durch Zufall darauf gestoßen und dann aus Neugierde recheriert &#8211; das hat mich direkt abgeschreckt.</li>
</ol>
<p>Also fällt auf meine Wahl auf den hochangepriesenen Nginx Proxy-/WebServer, mit dem mittlerweile rund 7% des World Wide Webs betrieben werden. Darunter high-visibility Platformen wie <a href="http://wordpress.com" target="_blank">WordPress.com</a>, <a href="http://github.com" target="_blank">Github</a>, <a href="http://www.ohloh.net/" target="_blank">Ohloh</a>, <a href="sourceforge.net" target="_blank">SourceForge</a>, <a href="http://www.golem.de/" target="_blank">Golem.de</a> uvm. Außerdem verspricht dieser nicht nur mehr Performance sondern auch eine einfachere Konfiguration.</p>
<p>Auch wenn mich der Part mit dem FastCGI Prozessen etwas nerven wird. Mal sehen vielleicht finde ich dafür ja noch eine saubere Lösung.</p>
<p>&nbsp;</p>
<h1>Anforderungen</h1>
<p>Ich habe natürlich einige Anforderungen an den Webserver. Damit ich meinen Server migrieren kann, benötige ich folgende Funktionen:</p>
<ul>
<li>RewriteRules für .htaccess files</li>
<li>Basic Authentication</li>
<li>Virtuelle Hosts</li>
<li>PHP</li>
<li>Einen Proxy um den Java Webserver dahinter anzubinden</li>
</ul>
<p>Nginx ist nicht nur ein Webserver sondern auch ein POP3/IMAP-Proxy und ein reverse Proxy. Letzteres Problem war also schonmal gar kein Thema weil der Server einfach exakt für solche Dinge designed wurde. Auch Mongrel lässt sich sehr sehr gut mit Nginx betreiben, wie ich gelesen habe.</p>
<p>PHP lässt sich über FastCGI anbinden, was deutlich performanter ist als mod_php für den Apachen, da PHP somit nicht bei jedem Request mitgestartet wird. Was mir hier noch etwas Sorgen bereitet, ist das nicht vorhandene Feature vom Nginx, FastCGI Prozesse zu starten. Glücklichwerweise bringt PHP5 einen eigenen FastCGI Prozess Manager mit sich: PHP-FPM. Das erleichtert die Anbindung von PHP ungemein.</p>
<p>Virtuelle Hosts, Basic Authtentication und RewriteRules sind für moderne Webserver ohnehin bereits Standardumfang. Und die Rewrite Rules von Nginx sehen sogar ganz brauchbar aus (wenn es um das Portieren von  mod_rewrite Regeln geht). Sollte also alles kein Thema sein.</p>
<p>Bleibt noch eine kleine Anforderung: Die Verzeichnis-Struktur. Meine bisherige Verzeichnis-Struktur sieht wie folgt aus:</p>
<p><em>/var/www/hostname/subdomain/</em></p>
<p>Entsprechend gibt es folgende Verzeichnisse:</p>
<ul>
<li><em>/var/www/itws.de/blog</em></li>
<li><em>/var/www/itws.de/ci</em></li>
<li><em>/var/www/yaana.de/www</em></li>
<li><em>/var/www/yaana.de/blog</em></li>
</ul>
<p>Und einige mehr.</p>
<p>Diese Struktur will ich natürlich beibehalten. Es hätte mich nun gewundert, wenn das nicht gehen würde. Nach kurzer Recherche, war ich mir sicher, dass das kein Thema sein wird.</p>
<p>&nbsp;</p>
<p>Es kann also los gehen.</p>
<h4  class="related_post_title">Ähnliche Artikel</h4><ul class="related_post"><li><a href="http://blog.itws.de/763/debian-von-apache-zu-nginx-teil-3-php/" title="Debian: Von Apache zu Nginx &#8211; Teil 3: PHP">Debian: Von Apache zu Nginx &#8211; Teil 3: PHP</a></li><li><a href="http://blog.itws.de/767/debian-von-apache-zu-nginx-teil-4-einen-tomcat-anbinden/" title="Debian: Von Apache zu Nginx &#8211; Teil 4: Einen Tomcat anbinden">Debian: Von Apache zu Nginx &#8211; Teil 4: Einen Tomcat anbinden</a></li><li><a href="http://blog.itws.de/754/debian-von-apache-zu-nginx-teil-2-installation-und-konfiguration/" title="Debian: Von Apache zu Nginx &#8211; Teil 2: Installation und Konfiguration">Debian: Von Apache zu Nginx &#8211; Teil 2: Installation und Konfiguration</a></li></ul> <p><a href="http://blog.itws.de/?flattrss_redirect&amp;id=747&amp;md5=8201e70428a2058e9de81809355a6725" title="Flattr" target="_blank"><img src="http://blog.itws.de/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.itws.de/747/debian-von-apache-zu-nginx-teil-1-vorwort/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>dotfiles: Meine Linux config files</title>
		<link>http://blog.itws.de/721/dotfiles-meine-linux-config-files/</link>
		<comments>http://blog.itws.de/721/dotfiles-meine-linux-config-files/#comments</comments>
		<pubDate>Tue, 13 Sep 2011 14:03:58 +0000</pubDate>
		<dc:creator>Benny</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[projekte]]></category>

		<guid isPermaLink="false">http://blog.itws.de/?p=721</guid>
		<description><![CDATA[Auf Github findet ihr im Projekt itws/dotfiles meine Linux config Dateien. Im Moment liegen dort nur die configs für die ZSH und git, wird aber  noch mehr Ähnliche ArtikelArch Linux Pacman Dependency SkipArch Linux: Alle explizit installierten Pakete auflistenSabayon: Erster Eindruck]]></description>
			<content:encoded><![CDATA[<p>Auf Github findet ihr im Projekt <strong><a href="https://github.com/itws/dotfiles" target="_blank">itws/dotfiles</a></strong> meine Linux config Dateien. Im Moment liegen dort nur die configs für die ZSH und git, wird aber  noch mehr <img src='http://blog.itws.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<h4  class="related_post_title">Ähnliche Artikel</h4><ul class="related_post"><li><a href="http://blog.itws.de/972/arch-linux-pacman-dependency-skip/" title="Arch Linux Pacman Dependency Skip">Arch Linux Pacman Dependency Skip</a></li><li><a href="http://blog.itws.de/912/arch-linux-alle-explizit-installierten-pakete-auflisten/" title="Arch Linux: Alle explizit installierten Pakete auflisten">Arch Linux: Alle explizit installierten Pakete auflisten</a></li><li><a href="http://blog.itws.de/910/sabayon-erster-eindruck/" title="Sabayon: Erster Eindruck">Sabayon: Erster Eindruck</a></li></ul> <p><a href="http://blog.itws.de/?flattrss_redirect&amp;id=721&amp;md5=218f522183c33a42411b0481beb38118" title="Flattr" target="_blank"><img src="http://blog.itws.de/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.itws.de/721/dotfiles-meine-linux-config-files/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Meine .zshrc</title>
		<link>http://blog.itws.de/651/meine-zshrc/</link>
		<comments>http://blog.itws.de/651/meine-zshrc/#comments</comments>
		<pubDate>Mon, 11 Jul 2011 14:04:19 +0000</pubDate>
		<dc:creator>Benny</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[arch linux]]></category>
		<category><![CDATA[shell]]></category>
		<category><![CDATA[zsh]]></category>

		<guid isPermaLink="false">http://blog.itws.de/?p=651</guid>
		<description><![CDATA[Hier meine fertige .zshrc. Habe dabei zusätzlich noch die grml-zsh-config installiert (aus dem ArchLinux Repository) # autoload modules autoload -U colors &#38;&#38; colors autoload -U compinit &#38;&#38; compinit autoload -U zsh-mime-setup # the terminal export TERM=rxvt # prompt export PS1="%{$bold_color%}[%{$fg[grey]%}%* %{$fg[green]%}%n@%m %{$reset_color%}%{$fg[blue]%}%c%{$reset_color%}%{$bold_color%}]%#%{$reset_color%} " # options for zsh setopt auto_pushd setopt pushd_ignore_dups setopt correct setopt glob_complete setopt rm_star_wait setopt no_flow_control setopt no_beep setopt histignorespace setopt auto_cd # key bindings #bindkey "\e[1~" beginning-of-line # Home #bindkey "\e[4~" [...]]]></description>
			<content:encoded><![CDATA[<p>Hier meine fertige .zshrc. Habe dabei zusätzlich noch die grml-zsh-config installiert (aus dem ArchLinux Repository)</p>
<pre># autoload modules
autoload -U colors &amp;&amp; colors
autoload -U compinit &amp;&amp; compinit
autoload -U zsh-mime-setup

# the terminal
export TERM=rxvt

# prompt
export PS1="%{$bold_color%}[%{$fg[grey]%}%* %{$fg[green]%}%n@%m %{$reset_color%}%{$fg[blue]%}%c%{$reset_color%}%{$bold_color%}]%#%{$reset_color%} "

# options for zsh
setopt auto_pushd
setopt pushd_ignore_dups
setopt correct
setopt glob_complete
setopt rm_star_wait
setopt no_flow_control
setopt no_beep
setopt histignorespace
setopt auto_cd

# key bindings
#bindkey "\e[1~" beginning-of-line # Home
#bindkey "\e[4~" end-of-line # End
#bindkey "\e[5~" beginning-of-history # PageUp
#bindkey "\e[6~" end-of-history # PageDown
#bindkey "\e[2~" quoted-insert # Ins
#bindkey "\e[3~" delete-char # Del
#bindkey "\e[5C" forward-word
#bindkey "\eOc" emacs-forward-word
#bindkey "\e[5D" backward-word
#bindkey "\eOd" emacs-backward-word
#bindkey "\e\e[C" forward-word
#bindkey "\e\e[D" backward-word
#bindkey "\e[Z" reverse-menu-complete # Shift+Tab

case "$TERM" in
    cons25*|linux) # plain BSD/Linux console
      bindkey 'e[H'    beginning-of-line   # home
      bindkey 'e[F'    end-of-line         # end
      bindkey 'e[5~'   delete-char         # delete
      bindkey '[D'     emacs-backward-word # esc left
      bindkey '[C'     emacs-forward-word  # esc right
      ;;
    *rxvt*) # rxvt derivatives
      bindkey 'e[3~'   delete-char         # delete
      bindkey 'eOc'    forward-word        # ctrl right
      bindkey 'eOd'    backward-word       # ctrl left
      # workaround for screen + urxvt
      bindkey 'e[7~'   beginning-of-line   # home
      bindkey 'e[8~'   end-of-line         # end
      bindkey '^[[1~'  beginning-of-line   # home
      bindkey '^[[4~'  end-of-line         # end
      ;;
    *xterm*) # xterm derivatives
      bindkey 'e[H'    beginning-of-line   # home
      bindkey 'e[F'    end-of-line         # end
      bindkey 'e[3~'   delete-char         # delete
      bindkey 'e[1;5C' forward-word        # ctrl right
      bindkey 'e[1;5D' backward-word       # ctrl left
      # workaround for screen + xterm
      bindkey 'e[1~'   beginning-of-line   # home
      bindkey 'e[4~'   end-of-line         # end
      ;;
    screen)
      bindkey '^[[1~'   beginning-of-line  # home
      bindkey '^[[4~'   end-of-line        # end
      bindkey 'e[3~'    delete-char        # delete
      bindkey 'eOc'     forward-word       # ctrl right
      bindkey 'eOd'     backward-word      # ctrl left
      bindkey '^[[1;5C' forward-word       # ctrl right
      bindkey '^[[1;5D' backward-word      # ctrl left
      ;;
  esac

zsh-mime-setup

# aliases
alias l='ls -lAh --color'
alias g='grep -i --color'
alias lg='l | g'
alias gf='grep -nriH'
alias vg='grep -iv'
alias cd..='cd ..'
alias cdd='cd ~/Desktop'
alias p='pwd'
alias c='clear'
alias cc='cd ~; c; source .bashrc'
alias pacman='pacman-color'
alias install='yaourt -S'
alias search='yaourt -Ss'
alias update='yaourt -Suya'
alias edit='gedit'
alias tl='translate -l de-en -i'
alias keys='setxkbmap'

# uncompress depending on extension...
e() {
      if [ -f "$1" ] ; then
              case "$1" in
                        *.tar.bz2) tar xvjf "$1"   ;;
                        *.tar.gz)  tar xvzf "$1"   ;;
                        *.bz2)     bunzip2 "$1"    ;;
                        *.rar)     unrar x "$1"    ;;
                        *.gz)      gunzip "$1"     ;;
                        *.tar)     tar xvf "$1"    ;;
                        *.tbz2)    tar xvjf "$1"   ;;
                        *.tgz)     tar xvzf "$1"   ;;
                        *.zip)     unzip "$1"      ;;
                        *.Z)       uncompress "$1" ;;
                        *.7z)      7z x "$1"       ;;
                        *)
                                   echo "'$1' cannot be extracted"
                                   return 1
                        ;;
              esac
      else
              echo "'$1' is not a valid file"
              return 1
      fi
      return 0
}

# the editor is vim
export EDITOR="/usr/bin/vim"

# midnight commander color config
export MC_COLOR_TABLE="$MC_COLOR_TABLE: editnormal=lightgray,black: editbold=yellow,black: editmarked=black,cyan"

# less config
export LESS_TERMCAP_mb=$'\E[01;31m'       # begin blinking
export LESS_TERMCAP_md=$'\E[01;38;5;74m'  # begin bold
export LESS_TERMCAP_me=$'\E[0m'           # end mode
export LESS_TERMCAP_se=$'\E[0m'           # end standout-mode
export LESS_TERMCAP_so=$'\E[38;5;246m'    # begin standout-mode - info box
export LESS_TERMCAP_ue=$'\E[0m'           # end underline
export LESS_TERMCAP_us=$'\E[04;38;5;146m' # begin underline

# alt+s inserts sudo at the beginning of the line
insert_sudo () { zle beginning-of-line; zle -U "sudo " }
zle -N insert-sudo insert_sudo
bindkey "^[s" insert-sudo</pre>
<h4  class="related_post_title">Ähnliche Artikel</h4><ul class="related_post"><li><a href="http://blog.itws.de/972/arch-linux-pacman-dependency-skip/" title="Arch Linux Pacman Dependency Skip">Arch Linux Pacman Dependency Skip</a></li><li><a href="http://blog.itws.de/912/arch-linux-alle-explizit-installierten-pakete-auflisten/" title="Arch Linux: Alle explizit installierten Pakete auflisten">Arch Linux: Alle explizit installierten Pakete auflisten</a></li><li><a href="http://blog.itws.de/910/sabayon-erster-eindruck/" title="Sabayon: Erster Eindruck">Sabayon: Erster Eindruck</a></li></ul> <p><a href="http://blog.itws.de/?flattrss_redirect&amp;id=651&amp;md5=4e5ae0a8ab3e0f5ec1733e4353d0df0d" title="Flattr" target="_blank"><img src="http://blog.itws.de/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.itws.de/651/meine-zshrc/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

