Inhalt überspringen

Artikel getagged ‘’

30
Jul

Arch Linux blockt jeglichen Zugriff aus dem Netzwerk

Ich hab gestern einige Zeit damit verbracht heraus zu finden, warum mein Tomcat sich nicht mit dem MySQL-Server (beides localhost) verbinden kann. Ich hatte das System gerade frisch installiert und der sshd lief irgendwie auch nicht.

Schließlich lag es an der /etc/hosts.deny, die bei Arch Linux per default alles blockt. Nachdem ich die Zeile auskommentiert hatte, lief mein Tomcat, mein mysqld und mein sshd …

Darauf muss man erstmal kommen :)
 

8
Jul

[linux] meine .bashrc

 

Nur kurz damit ich das mal irgendwo liegen habe:

Prompt

if [ "$USER" == "root" ]; then
    PS1='\n\[\033[01;31m\][\[\033[01;32m\]\u@\h\[\033[00m\] \[\033[01;34m\]\W\[\033[01;31m\]]#\[\033[00m\] '
else
    PS1='\n\[\033[01;37m\][\[\033[01;32m\]\u@\h\[\033[00m\] \[\033[01;34m\]\W\[\033[01;37m\]]\$\[\033[00m\] '
fi

 

Aliase

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 ...='cd ../../'
alias ..='cd ..'
alias cdd='cd ~/Desktop'
alias p='pwd'
alias c='clear'
alias cc='cd ~; c; source .bashrc'
alias install='sudo aptitude install'
alias search='aptitude search'
alias update='sudo aptitude update'
alias upgrade='sudo aptitude full-upgrade'

 

Uncompress function

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
}

 

Umgebungs-Variablen

export EDITOR="/usr/bin/vim"
export MC_COLOR_TABLE="$MC_COLOR_TABLE: editnormal=lightgray,black: editbold=yellow,black: editmarked=black,cyan"

 

Sonstiges

# Keine Doppelten Zeilen in die History aufnehmen
export HISTCONTROL=ignoredups

# ... und aufeinanderfolgende Einträge ignorieren
export HISTCONTROL=ignoreboth
1
Jun

[PHP] Der include path

Oft liest man, dass man bestimmte Verzeichnisse in den sog. include path aufnehmen soll oder im include path irgendwelche scripts ablegen soll und das meist ohne weitere Erklärung. Der Include Path und das Administrieren des Selbigen gehört also mehr oder weniger zu den Grundkenntnissen. Dennoch ist es für viele ein Mysterium.
Da ich gestern ein wenig damit gearbeitet habe, dachte ich, ich blogge mal ein wenig drüber. Warum? Weil ichs kann. Und weil ich eine kleine Hilfestellung zum Thema path im Allgemeinen und dem PHP include path im Speziellen zur Verfügung stellen möchte.

Weiterlesen

28
Mai

Continous Integration – Erfahrungsbericht Teil 1

Da ich für ein kommendes Projekt mal ein Continous Integration System ausprobieren wollte, habe ich mich diese Woche mal bemüht ein geeignetes System zu finden und dieses zu installieren.

Angefangen habe ich mit Cruise Control, da mich phpUnderControl doch schon sehr angesprochen hat und Cruise Control auch einfach zu installieren war.
Dennoch lief es nicht. Die 380 MB RAM meines VServers waren zu wenig für Jetty und Cruise Control. :(
Nach einigen Einstellungs-Änderungen an CC und der JVM war ich dann schließlich soweit, dass die JVM immerhin mal angelaufen ist. Für CC jedoch war dann kein Platz mehr im Speicher. Schade. rm -rf. Danke. Der Nächste, bitte.

Weiter ging es mit einem Blick auf Hudson, aber das war eigentlich unnötig, da ich ja wusste, dass ich keinen Servlet-Container auf dem Server installieren brauche, da der RAM sowieso nicht ausreicht.

Also habe ich mir Xinc angesehen, was allerdings nicht funktioniert hat. Im Anschluss an meinen Versuch, Xinc zu Installieren, habe ich dann auch festgestellt, dass das Projekt tot ist. Schade.

Gestern Abend dann den letzten Versuch mit Arbit gestartet, welches mich mit seiner Funktionsvielfalt begeistern konnte.

Zudem ist es in PHP geschrieben, was mir den Servlet-Container erspart.
Installiert war das Teil recht fix, jedoch wirft es noch Exceptions. Ich vermute mal, dass der Nightly Build buggy ist und habe mir daher nun mal die Stable geladen. Aber noch nicht installiert. Das werde ich heute Abend mal angehen.

Also einfach mal schnell Continous Integratin ausprobieren is nich :D
Ich halte euch auf dem aktuellen Stand was CI und Arbit angeht ;)

27
Mai

[Linux] MySQL-Datenbanken per Filesystem kopieren

Sollte jemand von euch Wahnsinnigen es jemals nötig haben, eine MySQL-Datenbank per Filesystem kopieren zu müssen, hat er A etwas falsch gemacht und B findet er hier ein kleines How-To ;)

Weiterlesen

4
Mai

[yii] Globale Installation unter Linux

Jaaa, richtig, ich arbeite zur Zeit mit dem yii-Framework. Und ich finde es toll :)

1. Die Installation

ghost@spacebox:~$ sudo -s
root@spacebox:~$ cd /var/www/lib
root@spacebox:/var/www/lib$ svn co http://yii.googlecode.com/svn/trunk/framework yii

2. Updaten des Frameworks

ghost@spacebox:~$ sudo -s
root@spacebox:~$ cd /var/www/lib
root@spacebox:/var/www/lib$ svn up

3. Das Kommandozeilen-Tool im PATH ablegen:

ghost@spacebox:~$ sudo ln -s /var/www/lib/yii/yiic /usr/bin/yii

Absofort steht der Befehl "yii" in der bash zur Verfügung.

4. Anpassen der Applications

Die index.php jeder Application musst angepasst werden, damit das Framework gefunden wird:

<?php
    set_include_path('/var/www/lib/yii');

    define('DIR', dirname(__FILE__));
    define('YII_DEBUG', true);
    define('YII_TRACE_LEVEL', 3);

    $config = DIR . '/app/config/main.php';

    require_once('yii.php');
    Yii::createWebApplication($config)->run();
3
Mai

[Linux] Apache/MySQL/Eclipse PDT unter Ubuntu einrichten

Hier eine kurze Anleitung wie man sich unter einem aktuellen Ubuntu eine Entwicklungsumgebung mit Apache, MySQL und PDT einrichtet.

 

Schritt 1: Das Arbeitsverzeichnis

Zuerst legen wir uns ein Arbeitsverzeichnis an, der Eclipse-Workspace. Hier werden später die Projekte abgelegt. Außerdem dient das Verzeichnis als DocumentRoot für den Apache:

ghost@spacebox:~$ mkdir workspace

Fertig. Langweilig, ich weiß ;)

 

Schritt 2: Der Apache

Installieren des Apachen mit mod_php5:

ghost@spacebox:~$ sudo aptitude install apache2 libapache2-mod-php5

Einrichten der DocumentRoot:

ghost@spacebox:~$ sudo vim /etc/apache2/sites-avilable/default

Es öffnet sich der vim mit der default site, welche wir wie folgt anpassen ([i] zum Bearbeiten):

<VirtualHost *:80>
    DocumentRoot /home/ghost/workspace

    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>

    <Directory /home/ghost/workspace>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>

    (...)
</VirtualHost>

[esc], ":wq", [enter] speichert und schließt die Datei.

Anschließend muss der Apache reloaded werden, das funktioniert wie folgt:

ghost@spacebox:~$ sudo /etc/init.d/apache reload

Zum Testen legen wir innerhalb des workspace-Verzeichnisses eine index.php an:

ghost@spacebox:~$ cd workspace
ghost@spacebox:~/workspace$ echo 'Hallo Welt!'  > index.php

Im Anschluss dazu rufen wir im Browser die URL "http://localhost/index.php" auf.
Wir erhalten eine weiße Seite und ein "Hallo Welt!".

 

Schritt 3: Der MySQL-Server

Zuerst den MySQL-Server und den Client installieren:

ghost@spacebox:~$sudo aptitude install mysql-client-5.1 mysql-server-5.1

Während der Installation wird man dazu aufgefordert ein root-Passwort für den MySQL-Server festzulegen, dort ein beliebiges Passwort eingeben und selbiges bitte merken ;)

anschließend ein Verbindungstest zum Server:

ghost@spacebox:~$ mysql -h localhost -u root -p

Nach der Eingabe des korrekten Passworts, welches wir eben bei der Installation festgelegt haben, startet die mysql-Shell:

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 34
Server version: 5.1.41-3ubuntu12 (Ubuntu)

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>
 

 

Schritt 4: Die PDT

Die PHP Development Tools ist eine auf Eclipse basierende Entwicklungsumgebung für PHP.

Zuerst laden wir uns das tar.gz-Archiv, welches wir auf der offiziellen Website finden und entpacken dieses anschließend nach /opt/eclpse:

ghost@spacebox:~/Desktop$ sudo tar xvzf eclipse.tar.gz -C /opt/

Über einen Rechtsklick auf das Gnome bzw KDE-Menü kann mit Hilfe des "Menü bearbeiten"-Tools ein Menü-Eintrag für Eclipse angelegt werden. Der Befehl zum starten von Eclipse lautet:

/opt/eclipse/eclipse

 

Nun stehen  Apache und MySQL zusammen mit PDT zur Verfügung. Der Apache und der MySQL-Server starten bei jedem Booten des Systems automatisch und müssen daher nicht manuell gestartet werden.

20
Apr

[bash] mcedit Farben anpassen

$ vim ~/.mc/ini

[Colors]
base_color=normal=lightgray,default:marked=yellow,default:viewunderline=brightred,default:helpslink=yellow,default:directory=white,default:executable=brightgreen,default:link=lightgray,default:stalelink=brightred,default:device=brightmagenta,default:core=red,default:special=magenta,default:editnormal=lightgray,default:editbold=yellow,default:

14
Aug

Mozilla empfiehlt …

… auf Firefox 3.5 upzudaten

NEIN! Mir egal, was Mozilla emfiehlt und wenn sie Kopfstand machen … Ich war ja noch nie ein großer Firefox-Fan, aber das was sich die Jungs von Mozilla sich jetzt geleistet haben, ist ja noch peinlicher als der Internet Explorer 6! Was soll der Schwachsinn eigentlich?

Fixt endlich die Bugs, dann update ich. Vorher nicht.  Solange der FF 3.5 die Seiten so darstellt werde ich nicht umsteigen.

Hier mal ein Screenshot des ITWS Developer Blogs im tollen neuen, super schnellen Firefox 3.5:

(Wer jetzt sagt, das liegt am Blog: Ich kann von fast jeder Website mit Bildern einen solchen Screenshot mit Darstellungsfehlern liefern und im FF 3.0.x gibts absolut keine Probleme).

Das konnte ich bisher auf allen Linux-Systemen, die ich finden konnte, nachstellen. Unter Windows scheint es keine Probleme zu geben.

12
Jun

[Linux] Saubere LAMPP Installation

LAMPP: Linux Apache, MySQL, Perl and PHP stellt schnell und einfach eine Entwicklungsumgebung für Webentwickler zur Verfügung. Enthalten ist ein Webserver (Apache 2), ein FTP-Server (ProFTP), ein MySQL-Server, PHP & PEAR, phpMyAdmin, Perl, und vieles vieles mehr.

In diesem Beitrag möchte ich euch zeigen, wie man den LAMPP sauber und sicher auf einerm Linux-System aufsetzt und ihn in das System integriert.

Schrit 0: Download

Bevor wir loslegen müssen wir erstmal dar tar-Archiv runterladen. Die aktuelle LAMPP-Version gibts immer auf apache-friends.org

Schritt 1: Entpacken der Dateien

Zuerst entpacken wir das Archiv in der Verzeichnis /opt:/

$ sudo tar xfz xampp-linux-1.7.1.tar.gz -C /opt/

Schritt 2: Der lampp-Befehl

Damit wir LAMPP nicht immer über /opt/lampp/lampp ansprechen müssen, stellen wir eine Verknüpfung her, die den lampp-Befehl zur Verfügung stellt:

$ sudo ln -s /opt/lampp/lampp /usr/bin/lampp

Anschließend kann LAMPP über den Befehl “lampp” gesteuert werden.

Schritt 3: Autostart einrichten

Damit LAMPP bei jedem System-Start ausgeführt wird, müssen wir noch eine Verknüpfung im /etc/init.d/-Verzeichnis anlegen:

$ sudo ln -s /opt/lampp/lampp /etc/rc3.d/S99lampp

Schritt 4: MySQL-Socket verlinken

Nach der Installation von LAMPP haben wir das Problem, dass der Socket, welcher von Symfony und dem mysql-client verwendet wird, nicht dort liegt, wo er erwartet wird. Das Problem lässt sich wie folgt beheben:

$ sudo mkdir -p /var/run/mysqld/
$ sudo ln -s /opt/lampp/var/mysql/mysql.sock /var/run/mysqld/mysqld.sock

Schritt 5: Security

Nach der Installation müssen noch ein paar Security-Anpassungen durchgeführt werden. LAMPP bietet dazu den security-Modus, der dem User eine Reihe von Optionen zur Sicherheits-Optimierung zur Verfügung stellen.

Die Konfiguration ist sehr trivial: Einfach den Befehl

$ sudo lampp security

ausführen und den Anweisungen folgen.

Fertig. Nun kann LAMPP gestartet werden:

$ sudo lampp start