Kategorieauswahl

Linux

Pash – Powershell unter Linux

Die bash oder gar die zsh sind mächtige Werkzeuge – kein Zweifel. Powershell 1.0 war ein Witz. Ellenlange Kommandos und viele Dinge gingen nur über .NET-Framework. 9 Zeilen Powerhshell 1.0 Code um die Websites von IIS auflisten zu lassen. Dasselbe macht appcmd list sites mit 3 Worten in der cmd.exe. Mit Powershell 2.0 hat man aber wesentlich mehr Befehle und alle können auf remote ausgeführt werden. Zugegeben die Befehle sind durch Ihren Aufbau etwas mehr Tipparbeit, dafür kann ich aber Powershell 2.0 nach einem Tag lernen benutzen! Für die Profis gibt es dann Aliase auf die Befehle sodass man dann z.B. statt dem eigentlichen Powershellbefehl get-childitem genausogut dir oder gar ls tippen kann. Das was die Powershell jedoch wirklich gegenüber bash und zsh besser macht ist die Objektorientierung. Das bedeutet auch beim Weiterleiten der Ausgabe über eine Pipe für die Eingabe eines Folgekommandos wird nicht nur einfach ein Text weiter geschubst, sondern es werden Objekte bzw. Referenzen darauf übergeben. Das bedeutet also wenn ich die Ausgabe eine Verzeichnisses weiter leite sind das nicht die Dateinamen, sondern tatsächlich die Dateien mit all Ihren Eigenschaften die am Ziel ankommen und dort entsprechend weiterverarbeitet werden können. Das macht die Powershell wirklich zur Power Shell! Schade ist nur, dass die Powershell eine pure Microsoft Geschichte ist und nicht wie perl Plattform unabhängig. Das könnte sich jedoch bald ändern. Powershell ist von Microsoft unter eine OpenSource-Lizenz gestellt worden. Da die Powershell komplett auf .NET-Framework aufbaut und das .NET-Framework bereits länger unter Opensource als MONO zur Verfügung steht steht der Portierung also nichts mehr im Weg. Mit Pash (Powershell+Bash) gibt es bereits eine frühe Implementierung der Powershell und Linux und Mac. Ich hoffe, dass dieses Projekt rege Unterstützung findet und so bald tatsächlich auf Linux-Systemen produktiv eingesetzt werden kann.

Bootfähigen USB Stick aus einer bootfähigen ISO-Datei erstellen

Allgemein

Sie haben eine bootfähige CD/DVD vorliegen, möchten aber z.B. für ein Netbook ohne CD/DVD Laufwerk einen bootfähigen USB-Stick erstellen? Mit UNETBOOTIN ist das ein Kinderspiel. Sie brauchen dazu lediglich die ISO-Datei der CD/DVD. Meist liegt die schon vor. Wenn nicht können Sie die CD/DVD mit einem herkömmlichen Brennprogramm auslesen und als ISO-Datei auf einem PC ablegen lassen. Unter Linux geht das auch sehr bequem über die Bash indem Sie dd if=/dev/scd of=meine.iso eintippen. Je nach Distribution kann Ihr CD Laufwerk auf eine andere Gerätebezeichnung haben als /dev/scd, dann probieren Sie einfach einmal /dev/cdrom. Welche Betriebssysteme werden unterstützt? Falsche Frage! Alle! Egal ob Windows, Linux, oder was auch immer. Die Sache passiert noch bevor das eigentliche Betriebssystem damit in Berührung kommt.Sie können also Window Server 2008 genau so gut bootfähig machen wie Windows 7 oder ein Kubuntu.

Windows 7 – Ergänzung

Wenn Sie Ihren Windows 7 USB-Installations-Stick in einem UEFI Rechner benutzen müssen Sie noch folgende Änderungen machen:

1. Auf der Windows 7 Installations-DVD finden Sie im install.wim Archiv (auf der DVD also unter: \sources\install.wim\1\Windows\Boot\EFI\) die Datei bootmgfw.efi. Das WIM Archiv könnnen Sie mit den meisten Kompressionsprogrammen wie z.B. 7-Zip öffnen.

2. Kopieren Sie die Datei auf Ihren Stick in das Verzeichnis \efi\boot (CPU-Typ beachten 32/64 bit) und bennen Sie sie in bootx64.efi bzw. boot.efi um.

SSD Tipps

Wenn Sie eine SSD kaufen sind single-level-cells (SLC) gegenüber multi-level-cell (MLC) zu bevorzugen. SLC sind allerdings teurer und haben meist eine geringere Kapazität. Der Wert Write Amplification sollte möglichst niedrig sein. 1 oder gar kleiner wäre toll.

Windows Vista führt von Haus aus 1 x Woche ein defrag aus. Defrag ist für SSD nicht zuträglich. Durch die Zugriffstechnik haben Sie keine Vorteile einer Defragmentierung, allerdings müssen Blöcke neu geschrieben werden. Pro Speicherzelle sind nur ca. 5000 Schreibvorgänge durchfühbar. Danach ist die SSD hin. Also bei Vista in der Aufgabenplanung das Defrag abschalten. Windows 7 erkennt SSD und deaktiviert das Defrag von selbst.

Sektorbasierte Imager wie Ghost oder unter Linux der Befehl dd sind zu meiden.

Empfohlene Dateisysteme unter Linux beim SSD Betrieb sind ext4 und btrfs.

Zur Zeit (2011) gibt es noch einige schwere Bugs in der Firmware von SSDs (auch namhafte Hersteller!). Ein gelegentliches Firmwareupdate ist daher dringend anzuraten.

Desktopumgebung unter Linux beschleunigen

Mit cgroups (Control Grouops) lassen sich die Ressourcen (CPU,Speicher,Festplatte,Netzwerk, etc..) den Anwendungen zuteilen. Dadurch können Priorisierungen vorgenommen werden. Das komplette Thema hier ab zu handeln wäre zu umfangreich. Aber zum Glück gibt es auch eine automatische Konfiguration die ebenfalls eine spürbare Beschleunigung des Desktops ähnlich wie bei Vista -> Windows 7 ermöglicht.

Dazu müssen Sie zunächst das entsprechende Paket installieren.

Debian basierte Systeme (Ubuntu, Knoppix und Kosorten):

apt-get install cgroup-bin

Red Hat basierte Systeme (SuSE, Fedora und Co.):

zypper install cgroup-bin (SuSE)

yum install cgroup-bin (alle anderen)

Mit lssubsys können Sie feststellen, ob die Ressourcen bereits eingerichtet wurden. Auch das Verzeichnis /sys/fs/cgroup müsste entsprechend „bevölkert“ sein.

Ob sich das System auf Autopilot befindet sehen Sie mit cat /proc/sys/kernel/sched_autogroup_enabled. Kommt eine 1 raus ist der Autopilot an – bei 0 aus.

Für anderen PC Treiber und Aktualisierungen von Windows Update herunterladen oder auch für Linux

Der Windows Update Katalog kann direkt mit einem 32-bit Internetexplorer ab Version 6 aufgerufen werden. Wenn Sie nun auf einem PC, mangels Netzwerkkartentreiber nicht auf Windows Update zugreifen können gehen Sie in den Gerätemanager und schauen Sie dort bei der Netzwerkkarte (einer von gelben, Rechtsklick -> Eigenschaften) bei dem Reiter Details unter Hardware-ID nach was dort steht. Meist etwas in der Art „PCI\VEN8086&DEV_100f&CC_0200“. VEN_XXXX gibt den Hersteller an und DEV_YYYY&CC_ZZZZ das entsprechende Gerät(ZZZZ=Geräteklasse, z.B. Maus,Tastatur, etc… und XXXX=das eigentliche Gerät). Wenn Sie recherchieren möchten was die Zahlen bedeuten empfiehlt sich die PCIDatabase. Hier können Sie die gefundenen Nummern identifizieren lassen und finden auch Hyperlinks auf die Seiten der Hersteller. Vielleicht lässt sich auch dort ein Treiber finden.

Hinweis: Da dies nur die Hardware betrifft kann das auch bei Linux hilfreich sein um einen Treiber zu finden. Unter Linux bekommen Sie die Geräte-IDs mittels des Kommandos lspci (für interne Geräte) und lsusb (für externe USB-Geräte) heraus.

Haben Sie herausgefunden was für eine Netzwerkkarte sich im PC/Laptop befindet, können Sie im Windows Update Katalog nach dem Gerät suchen (am besten den Namen des Herstellers ins Suchfeld eintragen) und den entsprechenden Treiber auswählen, so er denn von Microsoft inzwischen bereitgestellt wird. Ansonsten bleibt nur noch die Website des Herstellers.

Hinweis: Achtung!!! Wenn Sie nur nach Gerätename oder Hardware-IDs googeln kommen Sie oft auf irgendwelchen dubiosen Seiten heraus, die Ihnen irgendetwas unterschieben wollen. Die Mühe über die PCI Datenbank ist es auf jeden Fall wert, wenn Sie Nachts ruhig schlafen wollen!

Haben Sie nun den Netzwerkkartentreiber ergattert, können Sie den auf einem USB-Stick auf den PC mit den Treiberproblemen einspielen. Da Sie nun eine Netzwerkverbindung haben, können alle weiteren Treiber direkt an diesem PC eingespielt werden. Am einfachsten geht das über das Standverfahren mit Windows Update. Sollten immer noch irgendwelche gelben Symbole im Taskmanager auftauchen, werden die Treiber über Windows Update nicht angeboten und Sie müssen die Website des Herstellers aufsuchen in der Hoffnung für Ihre Windows oder Linux Version dort einen Treiber zu finden.

Probleme bei der Installation von Windows 7 Service Pack 1 bei Dualboot mit Linux

Inzwischen installieren die meisten Linux Systeme Ihren Bootmanager nicht mehr im MBR, sondern im Bootsektor der Linuxpartition. Dazu muss dann natürlich auch die Linuxpartition aktiv gesetzt sein. Erhalten Sie eine Fehlermeldung 0x800f0a12 bei der Installation des SP1, dann müssen Sie folgendes tun:

Setzen Sie mit irgendeinem Partitionierungswerkzeug (z.B. fdisk, diskpart, gpartet, etc…) die aktive Partition auf die Windows Partition von der aus Windows bootet (wenn Sie 2 haben ist das in der Regel die kleinere, so um die 100 MB – auf der liegt der BCD-Store). Wenn Sie nun Ihren Rechner starten ist der Linuxbootmanager weg und es wird direkt Windows gestartet. Keine Panik, den holen wir gleich wieder! Installieren Sie in aller Seelenruhe nun Ihr Service Pack 1. Die besagte Fehlermeldung dürfte nun aus bleiben. Ist die Installation von SP 1 abgeschlossen nehmen Sie wieder Ihr Partitionierungswerkzeug und setzen Sie wieder die Linuxpartition als aktiv. Da ist er wieder, Ihr Bootmanager. 🙂

Shellscripte und Perl auf dem KDE 4 Desktop ausführen lassen

Damit Shellscripte (bei Bash z.B. Dateien mit der Endung .sh) beim Anklicken auf dem Desktop nicht zum Bearbeiten geöffnet werden, sondern ablaufen müssen Sie das Programm systemsettings (klick auf Systemeinstellungen) aufrufen. Dort findet man gleich in der ersten Reihe den Eintrag Dateizuordnungen. Unter application finden Sie den Eintrag x-shellscript. Bei Rangfolge der zugeordneten Anwendungsprogramme klicken Sie auf Hinzufügen und geben Sie /bin/bash in die weiße Zeile ein. Bestätigen Sie mit OK. Mit dem Nach oben Knopf sorgen Sie nun noch dafür, dass das öffnen mit der Bash bevorzugt geschieht.

Genauso gut können Sie das natürlich auch mit Perl machen. Nur statt x-shellscript wählen Sie den Knoten x-perl aus und statt /bin/bash tragen Sie /usr/bin/perl ein.

Linux Integration Components für Windows Server 2008 R2 und Windows Server 2012

Microsoft hat die neue Version 3.4 der Linux Integration Components für Windows Server 2008 und 2008 R2 veröffentlicht. Diese brauchen Linux-Gäste um unter Hyper-V performanter und korrekt abzulaufen. Neu ist u. a. die Unterstützung für RedHat.

In Version 3.4 neu ist die Unterstützung der neuen Microsoft Hyper-V-Hosts: Windows 8 und Windows Server 2012.

Zentrale Gruppenrichtlinienverwaltung ohne Active Directory

Gruppenrichtlinien sind ein mächtiges Werkzeug für die Verwaltung von Windowsstationen. Es soll aber tatsächlich einige Netzwerke geben, die entweder immer noch als Arbeitsgruppe eingerichtet sind oder mit einer Samba Domäne (Version < 4.0) arbeiten. Dort würde man vielleicht auch gerne Gruppenrichtlinien einmal erstellen und auf allen Stationen anwenden.

Dazu müssen Sie lediglich auf einer der Windowssysteme die lokale Gruppenrichtlinienverwaltung gemäß Ihren Wünschen mittels gpedit.msc wie gewünscht konfigurieren. Auf dieser Station werden die Einstellungen dann im C:\Windows\System32\GroupPolicy Verzeichnis hinterlegt. Vorsicht! Nicht das Verzeichnis GroupPolicyUsers! Das werden Sie aber zunächst als einziges sehen. Erst wenn Sie im Explorer die versteckten und Systemdateien anzeigen lassen wird das GrouPolicy Verzeichnis sichtbar. Der Rest ist denkbar einfach! Lassen Sie auf eine Art Ihrer Wahl dieses Verzeichnis auf die anderen Computer kopieren – ggf. noch ein Reboot und fertig. Das war’s auch schon!

Wenn Sie mögen können Sie die Verteilung über ein einfaches *.bat Script erledigen lassen, dass Sie entweder durch doppelklick starten oder der Aufgabenplanung für regelmäßige Aktualisierungen übergeben.

Firewalls

Sie brauchen eine gute, vielfältige und sichere Firewall, die trotz allem einfach zu bedienen ist und obendrein nichts kostet, weil GPL? Diese hier sind wie IPCop, nur besser und es gibt sie auch als virtuelle Appliance für die unterschiedlichen Virtualisierungsumgebungen (VMware,XEN,KVM-Quemu). Sind also auch ideal für Routing in Laborumgebungen geeignet:

IPfire Ableger von IPCop

pfSense Ableger von m0n0wall