Netbeans unter Oneiric Ocelot

Nach dem Update auf Oneiric Ocelot (in meinem Fall die Kubuntuversion) war auf einmal Netbeans verschwunden. Natürlich stellt sich die Frage warum es plötzlich entfernt wurde. Aufschluss darüber gibt der Ubuntu Bug 822753 welcher unter https://bugs.launchpad.net/ubuntu/+source/netbeans/+bug/822753 zu finden ist:

Could you please remove both source netbeans package and all binary packages from Ubuntu Oneiric universe repository.
The current version of NetBeans IDE in the packages is out of date and there is no enough resources to support and update the packages. So it makes using NetBeans IDE buggy and unreliable. The users are strongly recommended to download latest NetBeans versions from netbeans.org.

Sprich die Netbeansversion welche in Universe vorhanden ist, war zu fehlerbehaftet und da niemand die Zeit hatte sie upzudaten, sollte sie rausfliegen, was ja nun auch geschehen ist. Nun gut, nun muss man sich Netbeans halt unter http://netbeans.org/ direkt herunterladen.

Weitere Informationen gibt es unter:
http://wiki.ubuntuusers.de/Netbeans

Low Fat

Heute gegen 19 Uhr wird (höchstwahrscheinlich) die neuste Ubuntu-/Kubuntuversion 11.10 mit dem Codenamen Oneiric Ocelot das Licht der Welt erblicken. Interessant finde ich wie immer die entsprechende Kubuntuvariante. Besonders hat es mir dabei das neue Paket kubuntu-low-fat-settings angetan. In diesem Paket sind Einstellungen enthalten um das System flott zu machen, indem z.B. die Arbeitflächeneffekte, Nepomuk et cetera deaktiviert werden. Sehr schön für die die das nicht jedesmal neu konfigurieren wollen :)

Weitere Informationen gibt es unter:
http://wiki.ubuntuusers.de/Oneiric_Ocelot
http://dohbuoy.wordpress.com/2011/09/23/slim-it-down/

TeamViewer unter Ubuntu installieren

Manchmal möchte man jemandem helfen und ist aber nicht vor Ort. Dann bieten sich Fernwartungslösungen wie VNC oder RDP an. Das Problem an diesen ist, das sie meist relativ umständlich zu konfigurieren sind, was so Dinge wie Portforwarding et cetera angeht. In diesem Fall macht sich die proprietäre Software TeamViewer ganz gut, da sie ohne Konfiguration auskommt und für die private Nutzung kostenlos ist.

Möchte man den Teamviewer nun auf Ubuntu installieren so geht man auf die Seite http://www.teamviewer.com/en/download/index.aspx#downloadAreaLinux und lädt dort die deb Datei für die entsprechende Version (32 oder 64 Bit) herunter. Diese kann man mit einem Klick auf dieselbe installieren und den Teamviewer über das Menü aufrufen. Nach dem Start lässt man sich dann die entsprechende ID und den PIN geben und schon kann die Fernwartung beginnen :)

bash cannot execute binary file

Gestern wollte ich eine Binärdatei auf meinem Ubuntu Server ausführen und bekam dabei folgende Meldung:

bash cannot execute binary file

Im ersten Moment war das ganze etwas irritierend da es auf meinem lokalen Rechner ohne Probleme lief. Nach kurzem nachdenken fiel mir das Problem dann auf. Ich hatte versucht ein 64 Bit Kompilat auf einem 32 BIt Server auszuführen. Leider ist die Fehlermeldung dafür nicht all zu aussagekräftig. Hier sollte nachgebessert werden ;)

1024 Ports behalte ich für mich

Unter Linux (und UNIX) kann man die Ports bis 1024 (die sogenannten Well Known Ports) nur dann binden, wenn man über root Rechte verfügt. Das ist natürlich unschön wenn man einen Server z.B. auf Port 80 laufen lassen will, dieser aber keine dementsprechenden Rechte bekommen darf.

So läuft bei mir zum Beispiel ein Etherpad Light auf dem Port 9001. Jetzt wäre es natürlich schön wenn dieser auf dem Port 80 erreichbar wäre. Dazu würde eine iptables Regel reichen:

iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 9001

Das Problem an dieser Regel ist zum ersten das die Anwendung damit unter Port 80 und Port 9001 zu erreichen ist. Das zweite Problem ist das jeder unprivilegierte Nutzer ebenfalls den Port 9001 öffnen kann und damit auch die Daten von Port 80 bekommt. Und es gibt auch noch ein drittes Problem. Das ganze funktioniert nicht auf Maschinen die mit dem Linux VServer betrieben werden. Dort funktioniert das IP Tables nämlich nicht:

iptables v1.4.4: can't initialize iptables table `nat': Permission denied (you must be root)

Eine weitere Variante wäre setpcaps was allerdings problematisch ist da man diese einem Programm geben muss, was dann bei Skripten nicht funktionieren sollte:

setcap 'cap_net_bind_service=+ep' /path/to/program

Weitere Informationen gibt es unter:
http://www.wensley.org.uk/info#setpcaps
http://serverfault.com/questions/112795/how-can-i-run-a-server-on-linux-on-port-80-as-a-normal-user
http://stackoverflow.com/questions/413807/is-there-a-way-for-non-root-processes-to-bind-to-privileged-ports-1024-on-li