<?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>ITbert.de &#187; Linux/BSD</title>
	<atom:link href="http://www.itbert.de/category/linuxbsd/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.itbert.de</link>
	<description>photos, unix, bb-dev and something more</description>
	<lastBuildDate>Thu, 24 Nov 2011 19:50: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>Blackberry Playbook und Linux</title>
		<link>http://www.itbert.de/2011/10/22/blackberry-playbook-und-linux/</link>
		<comments>http://www.itbert.de/2011/10/22/blackberry-playbook-und-linux/#comments</comments>
		<pubDate>Sat, 22 Oct 2011 19:28:32 +0000</pubDate>
		<dc:creator>bert2002</dc:creator>
				<category><![CDATA[Blackberry]]></category>
		<category><![CDATA[Linux/BSD]]></category>

		<guid isPermaLink="false">http://www.itbert.de/?p=952</guid>
		<description><![CDATA[Damit man auf die SMB Freigabe auf dem Playbook unter Linux zugreifen kann muss man ein bisschen was machen. Als erstes müssen wir auf dem Playbook die Datenfreigabe aktivieren: Settings -&#62; Storage &#38; Sharing -&#62; USB Connections -&#62; Connect to Mac Dann muss man noch &#8220;File Sharing&#8221; und &#8220;Password Protect&#8221; aktivieren und ein Passwort vergeben. [...]]]></description>
			<content:encoded><![CDATA[<p>Damit man auf die SMB Freigabe auf dem Playbook unter Linux zugreifen kann muss man ein bisschen was machen. Als erstes müssen wir auf dem Playbook die Datenfreigabe aktivieren:</p>
<blockquote><p>Settings -&gt; Storage &amp; Sharing -&gt; USB Connections -&gt; Connect to Mac</p></blockquote>
<p>Dann muss man noch &#8220;File Sharing&#8221; und &#8220;Password Protect&#8221; aktivieren und ein Passwort vergeben. Dann können wir auch schon das Playbook per USB verbinden. Mittels &#8220;ifconfig -a&#8221; sollten wir jetzt ein usb0 Gerät sehen:</p>
<blockquote><p>usb0: flags=4098&lt;BROADCAST,MULTICAST&gt;  mtu 1500  metric 1<br />
ether XX:XX:XX:XX:XX:XX  txqueuelen 1000  (Ethernet)<br />
RX packets 0  bytes 0 (0.0 B)<br />
RX errors 0  dropped 0  overruns 0  frame 0<br />
TX packets 0  bytes 0 (0.0 B)<br />
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</p></blockquote>
<p>Ein Gerät ohne IP hilft uns nicht wirklich, also lassen wir dhcpd die Arbeit machen:</p>
<blockquote><p>[root@host ~]# dhcpcd usb0<br />
dhcpcd[9533]: version 5.2.12 starting<br />
dhcpcd[9533]: usb0: rebinding lease of 169.254.91.114<br />
dhcpcd[9533]: usb0: NAK: from 169.254.74.157<br />
dhcpcd[9533]: usb0: broadcasting for a lease<br />
dhcpcd[9533]: usb0: offered 169.254.74.158 from 169.254.74.157<br />
dhcpcd[9533]: usb0: acknowledged 169.254.74.158 from 169.254.74.157<br />
dhcpcd[9533]: usb0: checking for 169.254.74.158<br />
dhcpcd[9533]: usb0: leased 169.254.74.158 for 43200 seconds<br />
dhcpcd[9575]: usb0: usb0: MTU set to 1500<br />
dhcpcd[9533]: forked to background, child pid 9590</p>
<p>usb0: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500  metric 1<br />
inet 169.254.74.158  netmask 255.255.255.252  broadcast 169.254.74.159<br />
inet6 XXXX::XXXX:XXXX:XXXX:XXXX  prefixlen 64  scopeid 0&#215;20&lt;link&gt;<br />
ether XX:XX:XX:XX:XX:XX  txqueuelen 1000  (Ethernet)<br />
RX packets 71  bytes 12014 (11.7 KiB)<br />
RX errors 0  dropped 0  overruns 0  frame 0<br />
TX packets 16  bytes 1880 (1.8 KiB)<br />
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</p></blockquote>
<p>Das &#8220;mini subnet&#8221; das wir bekommen ändert sich jedes mal. Das muss man beachten wenn man ein Script schreibt. Nachdem wir jetzt eine IP haben können wir die Freigabe mounten:</p>
<blockquote><p>mount -t cifs -o username=playbook,password=XXX,rw //169.254.74.157/media /mnt/playbook</p></blockquote>
<p>XXX spiegelt das Passwort wieder welches wir auf dem Playbook festgelegt haben. Und vola wir können Daten kopieren.</p>
<p>Ich habe mir ein kleines Script geschrieben das mir die Arbeit abnimmt. Download: <a href="http://paste.frubar.net/14221" target="_blank">playbook</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.itbert.de/2011/10/22/blackberry-playbook-und-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress und mod_status</title>
		<link>http://www.itbert.de/2011/08/23/wordpress-und-mod_status/</link>
		<comments>http://www.itbert.de/2011/08/23/wordpress-und-mod_status/#comments</comments>
		<pubDate>Tue, 23 Aug 2011 20:05:42 +0000</pubDate>
		<dc:creator>bert2002</dc:creator>
				<category><![CDATA[Linux/BSD]]></category>

		<guid isPermaLink="false">http://www.itbert.de/?p=921</guid>
		<description><![CDATA[Wenn man WordPress mit einer schönen .htaccess benutzt, dann hat man vermutlich so etwas: RewriteEngine On RewriteBase / RewriteRule ^index\.php$ &#8211; [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] Dabei wird dank der RewriteBase alles umgeschrieben (was man in dem Fall will) und es gibt keine Möglichkeit auf /server-status zuzugreifen. Damit dies [...]]]></description>
			<content:encoded><![CDATA[<p>Wenn man WordPress mit einer schönen .htaccess benutzt, dann hat man vermutlich so etwas:</p>
<blockquote><p>RewriteEngine On<br />
RewriteBase /<br />
RewriteRule ^index\.php$ &#8211; [L]<br />
RewriteCond %{REQUEST_FILENAME} !-f<br />
RewriteCond %{REQUEST_FILENAME} !-d<br />
RewriteRule . /index.php [L]</p></blockquote>
<p>Dabei wird dank der RewriteBase alles umgeschrieben (was man in dem Fall will) und es gibt keine Möglichkeit auf /server-status zuzugreifen. Damit dies möglich ist muss man eine weitere Bedingung einbauen:</p>
<blockquote><p>RewriteCond %{REQUEST_URI} !=/server-status</p></blockquote>
<p>Sobald dies eingetragen ist, kann man auf /server-status zugreifen. Auf das Problem kommt man wenn man ein 404 bekommt, wenn man auf den Status zugreifen will (obwohl Modul und Zugriffsrechte gegeben sind).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.itbert.de/2011/08/23/wordpress-und-mod_status/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Amazon KDP Reporting Script</title>
		<link>http://www.itbert.de/2011/07/30/amazon-kdp-reporting-script/</link>
		<comments>http://www.itbert.de/2011/07/30/amazon-kdp-reporting-script/#comments</comments>
		<pubDate>Sat, 30 Jul 2011 14:47:54 +0000</pubDate>
		<dc:creator>bert2002</dc:creator>
				<category><![CDATA[Fun]]></category>
		<category><![CDATA[Kindle]]></category>
		<category><![CDATA[Linux/BSD]]></category>

		<guid isPermaLink="false">http://www.itbert.de/?p=912</guid>
		<description><![CDATA[Das Amazon KDP Portal bietet leider keine Möglichkeit Reports per Email zu bekommen. Das ist ein bisschen Umständlich und manchmal will man die Umsätze per Email bekommen. Amazon berechnet die &#8220;Royalities&#8221; immer erst am Sonntag und so braucht man sich unter der Woche keine Sorgen zu machen. Ich habe mir ein kleines Perl script geschrieben [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Das Amazon KDP Portal bietet leider keine Möglichkeit Reports per Email zu bekommen. Das ist ein bisschen Umständlich und manchmal will man die Umsätze per Email bekommen. Amazon berechnet die &#8220;Royalities&#8221; immer erst am Sonntag und so braucht man sich unter der Woche keine Sorgen zu machen. Ich habe mir ein kleines Perl script geschrieben das mir jeden Sonntag eine Email schickt mit meinen neu errechneten Umsätzen aus dem US Geschäft. Leider habe ich noch keinen Weg gefunden um auf die Umsätze für den Britischen und Deutschen Shop zuzugreifen, aber vielleicht findet jemand anderes einen Weg.</p>
<blockquote><p>#!/usr/bin/perl -w<br />
use strict;<br />
use WWW::Mechanize;<br />
use HTML::TokeParser;<br />
use HTTP::Cookies;</p>
<p># KDP credentials<br />
my $email = &#8220;myemail\@example.org&#8221;;<br />
my $password = &#8220;awesomepassword&#8221;;</p>
<p># Mail Settings<br />
my $from = &#8220;\&#8221;KDP Report\&#8221; &lt;kdp\@example.org&gt;&#8221;;<br />
my $to = &#8220;$email&#8221;;<br />
my $subject = &#8220;KDP Royalities Report (US)&#8221;;</p>
<p>my $agent = WWW::Mechanize-&gt;new();<br />
$agent-&gt;agent_alias( &#8216;Linux Mozilla&#8217; );<br />
$agent-&gt;get(&#8220;https://kdp.amazon.com/self-publishing/signin/ap&#8221;);<br />
$agent-&gt;field(&#8220;email&#8221;, $email);<br />
$agent-&gt;field(&#8220;password&#8221;, $password);<br />
$agent-&gt;click();<br />
$agent-&gt;follow_link( text =&gt; &#8216;Reports&#8217; );</p>
<p>$agent-&gt;get(&#8216;https://kdp.amazon.com/self-publishing/reports/transactionSummary&#8217;);<br />
my $response =  $agent-&gt;{content};</p>
<p>if ($response =~ m{.*Total: (.*)&lt;\\\/div&gt;.*}g) {</p>
<p>my $grandtotal = &#8220;$1&#8243;;<br />
my $message = &#8220;Your revenue for the past six weeks of the Amazon KDP US store is $grandtotal.\n&#8221;;</p>
<p># sending email<br />
my $sendmail = &#8216;/usr/lib/sendmail&#8217;;<br />
open(MAIL, &#8220;|$sendmail -oi -t&#8221;);<br />
print MAIL &#8220;From: $from\n&#8221;;<br />
print MAIL &#8220;To: $to\n&#8221;;<br />
print MAIL &#8220;Subject: $subject\n\n&#8221;;<br />
print MAIL &#8220;$message\n&#8221;;<br />
close(MAIL);</p>
<p>}</p></blockquote>
<p>Es ist gleichermaßen ein kleines Beispiel wie man WWW::Mechanize benutzen kann. Das Script kann man sich nun auf einen sicheren Server packen und mittels Cron am Sonntag früh ausführen lassen. Ich hoffe natürlich das Amazon sein Reporting demnächst ausbaut, damit man nicht so eklige Scripte braucht.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.itbert.de/2011/07/30/amazon-kdp-reporting-script/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Versteck mich &#8211; Eine VM im RAM</title>
		<link>http://www.itbert.de/2011/06/30/versteck-mich-eine-vm-im-ram/</link>
		<comments>http://www.itbert.de/2011/06/30/versteck-mich-eine-vm-im-ram/#comments</comments>
		<pubDate>Thu, 30 Jun 2011 18:53:08 +0000</pubDate>
		<dc:creator>bert2002</dc:creator>
				<category><![CDATA[Fun]]></category>
		<category><![CDATA[Linux/BSD]]></category>

		<guid isPermaLink="false">http://www.itbert.de/?p=880</guid>
		<description><![CDATA[Ich möchte für meinen Mitbewohner ein Geburtstagsgeschenk kaufen, aber leider hackt er immer meinen Computer und würde so erfahren was er bekommt. Wie gehen wir also sicher das er nichts erfährt? Wir kaufen das Geschenk in einem Laden oder wir starten eine VMWare in unserem Arbeitsspeicher. Dafür brauchen wir nur /dev/shm/ und eine unschuldige virtuelle [...]]]></description>
			<content:encoded><![CDATA[<p>Ich möchte für meinen Mitbewohner ein Geburtstagsgeschenk kaufen, aber leider hackt er immer meinen Computer und würde so erfahren was er bekommt. Wie gehen wir also sicher das er nichts erfährt? Wir kaufen das Geschenk in einem Laden oder wir starten eine VMWare in unserem Arbeitsspeicher. Dafür brauchen wir nur <em>/dev/shm/</em> und eine unschuldige virtuelle Maschine. Diese kopieren wir nach<em> /dev/shm/</em> , starten sie, bestellen das Geschenk und danach überschreiben wir wieder die benutzte VM mit der unschuldigen VMware in <em>/dev/shm/</em>. Jetzt sollte es außerordentlich schwer sein an die Daten zu gelangen und falls ein Teil der VMWare auf die SWAP geschrieben wurde  &#8211; wird es nicht leichter.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.itbert.de/2011/06/30/versteck-mich-eine-vm-im-ram/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Animiertes gif erstellen unter Linux</title>
		<link>http://www.itbert.de/2011/06/18/animiertes-gif-erstellen-unter-linux/</link>
		<comments>http://www.itbert.de/2011/06/18/animiertes-gif-erstellen-unter-linux/#comments</comments>
		<pubDate>Sat, 18 Jun 2011 11:45:35 +0000</pubDate>
		<dc:creator>bert2002</dc:creator>
				<category><![CDATA[Fun]]></category>
		<category><![CDATA[Linux/BSD]]></category>

		<guid isPermaLink="false">http://www.itbert.de/?p=876</guid>
		<description><![CDATA[convert -adjoin -delay 2 *.JPG animation.gif &#160;]]></description>
			<content:encoded><![CDATA[<blockquote><p>convert -adjoin -delay 2 *.JPG animation.gif</p></blockquote>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.itbert.de/2011/06/18/animiertes-gif-erstellen-unter-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ubuntu mirror mit debmirror</title>
		<link>http://www.itbert.de/2011/02/26/ubuntu-mirror-mit-debmirror/</link>
		<comments>http://www.itbert.de/2011/02/26/ubuntu-mirror-mit-debmirror/#comments</comments>
		<pubDate>Sat, 26 Feb 2011 18:45:09 +0000</pubDate>
		<dc:creator>bert2002</dc:creator>
				<category><![CDATA[Linux/BSD]]></category>

		<guid isPermaLink="false">http://www.itbert.de/?p=863</guid>
		<description><![CDATA[Manchmal ist es sehr hilfreich wenn man einen eigenen Ubuntu mirror im Netzwerk hat. Mit dem Programm debmirror ist das auch nicht mehr schwierig und ist in ein paar Schritten erledigt. Bei ubuntuusers.de ist so gut wie alles beschrieben, aber leider fehlt das die GPG keys als &#8220;trusted&#8221; hinzugefügt werden müssen. Fangen wir also an [...]]]></description>
			<content:encoded><![CDATA[<p>Manchmal ist es sehr hilfreich wenn man einen eigenen Ubuntu mirror im Netzwerk hat. Mit dem Programm debmirror ist das auch nicht mehr schwierig und ist in ein paar Schritten erledigt. Bei <a href="http://wiki.ubuntuusers.de/Ubuntu-Mirror" target="_blank">ubuntuusers.de</a> ist so gut wie alles beschrieben, aber leider fehlt das die GPG keys als &#8220;trusted&#8221; hinzugefügt werden müssen.</p>
<p>Fangen wir also an den User und die Gruppe anzulegen und wechseln zu dem User:</p>
<blockquote><p>sudo bash<br />
aptitude install debmirror ubuntu-keyring<br />
groupadd mirror<br />
useradd -g mirror  -c &#8220;Ubuntu Mirror&#8221; mirror<br />
su &#8211; mirror<br />
mkdir -p ~/scripts ~/ubuntu ~/ubuntu-security ~/ubuntu-updates<br />
cd ~/scripts</p></blockquote>
<p>Jetzt können wir die Scripte erstellen die zum aktualisieren des Mirrors verantworlich sind. Es ist möglich sie von ubuntuusers.de zu nehmen und muss nur den Pfad des Mirrors ändern. Zum Beispiel:</p>
<blockquote><p>#!/bin/bash<br />
#<br />
# Spiegelt die Haupt-Ubuntu-Repostiories<br />
#<br />
logger -t mirror-ubuntu.bash[$$] Updating Ubuntu<br />
debmirror /home/mirror/ubuntu &#8211;passive &#8211;progress &#8211;nosource             \<br />
&#8211;host=ftp.inf.tu-dresden.de &#8211;root=os/linux/dists/ubuntu<br />
&#8211;dist=hardy,lucid      \<br />
&#8211;section=multiverse,universe,restricted,main &#8211;arch=amd64 &#8211;cleanup<br />
\<br />
&#8211;verbose<br />
logger -t mirror-ubuntu.bash[$$] Finished Updating Ubuntu</p></blockquote>
<p>Bei dem oben beschriebenen Script wird ein mirror für hardy <strong>und</strong> lucid erstellt. Die Architektur ist 64bit (amd64). Es ist also nicht nötig für jeden Release ein Mirror zu erstellen. Falls man einen eigenen dns eintrag für den Mirror erstellen möchte reicht eine sehr einfache apache Konfiguration:</p>
<blockquote><p>NameVirtualHost mirror.example.org:80<br />
&lt;VirtualHost mirror.example.org:80&gt;</p>
<p>DocumentRoot /home/mirror/<br />
ServerName mirror.example.org</p>
<p>Alias /mirror/ &#8220;/home/mirror/&#8221;</p>
<p>&lt;Directory &#8220;/home/mirror/&#8221;&gt;<br />
Options Indexes FollowSymLinks<br />
AllowOverride None<br />
Order allow,deny<br />
allow from all<br />
&lt;/Directory&gt;</p>
<p>&lt;/VirtualHost&gt;</p></blockquote>
<p>Als user mirror müssen wir noch den GPG keyring als <strong>trustedkeys</strong> einbinden. Ansonsten können wir den Mirror nicht updaten.</p>
<blockquote><p>gpg &#8211;no-default-keyring &#8211;keyring trustedkeys.gpg &#8211;import /usr/share/keyrings/ubuntu-archive-keyring.gpg</p></blockquote>
<p>Zum Schluss tragen wir noch ein paar cronjobs (user: mirror) ein und der Mirror wird jede Nacht aktualisiert.</p>
<blockquote><p>crontab -e</p></blockquote>
<p>und fügen folgendes hinzu:</p>
<blockquote><p>0 1 * * * bash -l -c &#8220;/home/mirror/scripts/mirror-ubuntu.bash&#8221;</p></blockquote>
<p>Das war es auch schon. Zum testen und initialisieren des Mirros lohnt es sich das Script einmal per Hand auszuführen.</p>
<p>Der /etc/apt/sources.list des Clients kann dann zum Beispiel wie folgt aktualisiert werden:</p>
<blockquote><p>deb http://mirror.example.org/mirror/ubuntu lucid universe multiverse main restricted</p></blockquote>
<p>Fertig. Pro Mirror können schon mehr als 60GB zusammen kommen. Also Vorsichtig!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.itbert.de/2011/02/26/ubuntu-mirror-mit-debmirror/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Debian Installation auf einer Seagate FreeAgent DockStar</title>
		<link>http://www.itbert.de/2010/10/10/debian-installation-auf-einer-seagate-freeagent-dockstar/</link>
		<comments>http://www.itbert.de/2010/10/10/debian-installation-auf-einer-seagate-freeagent-dockstar/#comments</comments>
		<pubDate>Sun, 10 Oct 2010 20:11:11 +0000</pubDate>
		<dc:creator>bert2002</dc:creator>
				<category><![CDATA[Linux/BSD]]></category>

		<guid isPermaLink="false">http://www.itbert.de/?p=813</guid>
		<description><![CDATA[Durch Zufall wurde ich auf die DockStar aufmerksam geworden und habe mir direkt eine bestellt. Findigen Leuten ist es nämlich gelungen Linux auf das kleine Gerät zum laufen zu bekommen. Das Geniale an dem Gerät ist das es nur 26EUR kostet und nur 8Watt verbraucht. CPU &#38; RAM Übersicht (aus der busybox): -bash-3.2# cat /proc/cpuinfo [...]]]></description>
			<content:encoded><![CDATA[<p>Durch Zufall wurde ich auf die DockStar aufmerksam geworden und habe mir direkt eine bestellt. Findigen Leuten ist es nämlich gelungen Linux auf das kleine Gerät zum laufen zu bekommen. Das Geniale an dem Gerät ist das es nur <a href="http://www2.hardwareversand.de/articledetail.jsp;jsessionid=93389E3FF075A9DC1834AE192BE910AE.www2?aid=29042&amp;agid=1460&amp;ref=105" target="_blank">26EUR</a> kostet und nur 8Watt verbraucht.</p>
<p>CPU &amp; RAM Übersicht (aus der busybox):</p>
<blockquote><p>-bash-3.2# cat /proc/cpuinfo<br />
Processor       : ARM926EJ-S rev 1 (v5l)<br />
BogoMIPS        : 1192.75<br />
Features        : swp half thumb fastmult edsp<br />
CPU implementer : 0&#215;56<br />
CPU architecture: 5TE<br />
CPU variant     : 0&#215;2<br />
CPU part        : 0&#215;131<br />
CPU revision    : 1<br />
Cache type      : write-back<br />
Cache clean     : cp15 c7 ops<br />
Cache lockdown  : format C<br />
Cache format    : Harvard<br />
I size          : 16384<br />
I assoc         : 4<br />
I line length   : 32<br />
I sets          : 128<br />
D size          : 16384<br />
D assoc         : 4<br />
D line length   : 32<br />
D sets          : 128</p>
<p>Hardware        : Feroceon-KW<br />
Revision        : 0000<br />
Serial          : 0000000000000000<br />
-bash-3.2# free<br />
total         used         free       shared      buffers<br />
Mem:       126064       123488         2576            0          104<br />
Swap:            0            0            0<br />
Total:       126064       123488         2576</p></blockquote>
<p style="text-align: center;"><img class="size-medium wp-image-817   aligncenter" style="border: 1px solid black;" title="DockStar" src="http://www.itbert.de/wp-content/uploads/2010/10/IMG_2116-300x200.jpg" alt="" width="300" height="200" /></p>
<p>Wir können das Linux nicht direkt auf dem Gerät Installieren sondern auf einem USB Stick oder externe Festplatte. Zum testen benutze ich hier einen 4GB USB Stick. Das Wichtigste ist dass das Gerät <strong>NIEMALS</strong> vorher mit dem Internet in Kontakt war. Es gibt auch <a href="http://www.mikrocontroller.net/articles/DockstarDebianSqueeze#Verwendung_des_automatischen_Installers_von_Jeff_Dozan_f.C3.BCr_Debian_Squeeze" target="_blank">verschiedene</a> <a href="http://ahsoftware.de/dockstar/" target="_blank">Anleitungen</a>. Ich habe beide benutzt ;)</p>
<p>NOTE: So wie es aussieht hat Jeff es geschafft Debian auf das <a href="http://forum.doozan.com/read.php?2,72" target="_blank">NAND zu installieren</a>! Das probiere ich demnächst aus.</p>
<p>Als erstes müssen wir die Dockstar mit einem Computer verbinden und die IP des Gerätes heraus finden:</p>
<blockquote><p>root@host ~ # ifconfig eth0 169.254.1.0<br />
root@host ~ # nmap -e eth0 -sP 169.254.0.0/16</p></blockquote>
<p>Danach melden wir uns mit folgenden Daten per ssh an:</p>
<blockquote><p>user: root<br />
password: stxadmin</p></blockquote>
<p>Ab jetzt streiten sich die Geister was gemacht werden soll. Ich habe mich dazu entschieden die Pogo Software zu Beenden damit wir den Knilch an unser normales Netzwerk verbinden können.</p>
<blockquote><p>-bash-3.2# killall hbwd<br />
-bash-3.2# mount -o remount,rw /<br />
-bash-3.2# chmod go+w /dev/null<br />
-bash-3.2# vi /etc/init.d/rcS</p></blockquote>
<p>folgendes kommentieren damit es wie folgt aussieht:</p>
<blockquote><p>#/etc/init.d/hbmgr.sh start</p></blockquote>
<p>Jetzt können wir das Gerät ausschalten und an unser normales Netzwerk anschliessen:</p>
<blockquote><p>-bash-3.2# mount -o remount,ro /<br />
-bash-3.2# /sbin/halt</p></blockquote>
<p>Bevor wir weiter machen können muessen wir einen USB Stick vorbereiten auf dem wir Debian Installieren können. Dabei muss beachtet werden das die erste Partition die root Partition wird und die zweite die Swap.</p>
<blockquote><p>Partition 1, primaer, Typ Linux, min. 280MB, Typisch 512MB<br />
Partition 2, primaer, Typ Swap,  ~100-500MB (je groesser, desto besser fuer das Wear Leveling des Sticks)</p></blockquote>
<p>Nachdem die DockStar von unserem DHCP (in unserem &#8220;nomalen&#8221; Netz&#8221;) eine IP bekommen hat können wir uns wieder mit der Box verbinden und anfangen Debian Installieren mit Hilfe einem Script von Jeff Dozan:</p>
<blockquote><p>-bash-3.2#  cd /tmp<br />
-bash-3.2# wget http://jeff.doozan.com/debian/dockstar.debian-squeeze.sh<br />
-bash-3.2# chmod +x dockstar.debian-squeeze.sh<br />
-bash-3.2# export PATH=$PATH:/usr/sbin:/sbin<br />
-bash-3.2# ./dockstar.debian-squeeze.sh</p></blockquote>
<p>Das wird ein bisschen dauern und danach ist Debian Squeeze und ein neuer Bootloader Installiert :D Bei der Einrichtung kann man getrost der Anleitung von <a href="http://www.mikrocontroller.net/articles/DockstarDebianSqueeze#Linux_einrichten" target="_blank">mikrocontroller.net</a> folgen. So schnell kann man einen kleinen 24/7 Server mit 4 USB Ports und einem 1GB RJ45 Anschluss haben mit nur 8Watt (inklusive Platten) verbrauch.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.itbert.de/2010/10/10/debian-installation-auf-einer-seagate-freeagent-dockstar/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Twitter::Lite und OAuth</title>
		<link>http://www.itbert.de/2010/09/08/twitterlite-und-oauth/</link>
		<comments>http://www.itbert.de/2010/09/08/twitterlite-und-oauth/#comments</comments>
		<pubDate>Wed, 08 Sep 2010 08:49:27 +0000</pubDate>
		<dc:creator>bert2002</dc:creator>
				<category><![CDATA[Japan]]></category>
		<category><![CDATA[Linux/BSD]]></category>
		<category><![CDATA[Perl]]></category>

		<guid isPermaLink="false">http://www.itbert.de/?p=804</guid>
		<description><![CDATA[Wie manche früher oder später *hust* mitbekommen haben erlaubt Twitter jetzt nur noch OAuth als Authentifizierungsverfahren. Ich war in letzter Zeit irgendwie sehr beschäftigt und habe es erst gestern gemerkt. Also musste ich mein rss2twitter script auf OAuth umstellen und dabei hat bayashi sehr geholfen. Im großen und ganzen geht das sehr einfach und hier [...]]]></description>
			<content:encoded><![CDATA[<p>Wie manche früher oder später *hust* mitbekommen haben erlaubt Twitter jetzt nur noch <a href="http://oauth.net/" target="_blank">OAuth</a> als Authentifizierungsverfahren. Ich war in letzter Zeit irgendwie sehr beschäftigt und habe es erst gestern gemerkt. Also musste ich mein rss2twitter script auf OAuth umstellen und dabei hat <a href="http://bayashi.vox.com/library/post/a-twitter-bot-written-in-perl-how-to-tweet-by-oauth.html" target="_blank">bayashi</a> sehr geholfen. Im großen und ganzen geht das sehr einfach und hier gibt es das Script zum Nachlesen:</p>
<blockquote><p>#!/usr/bin/perl<br />
# script: Using the latest RSS entry to update Twitter</p>
<p>use strict;<br />
use warnings;<br />
use Net::Twitter::Lite;<br />
use LWP::Simple;<br />
use XML::RSS::Parser::Lite;<br />
use WWW::Shorten::Metamark;</p>
<p>my $feed = get(&#8216;http://dailywadoku.itbert.de/feed.rss&#8217;);<br />
my $rp = new XML::RSS::Parser::Lite;</p>
<p>$rp-&gt;parse($feed);</p>
<p>my $it = $rp-&gt;get(0);</p>
<p>my $long_url = $it-&gt;get(&#8216;url&#8217;);<br />
my $short_url = makeashorterlink($long_url);<br />
my $message = $it-&gt;get(&#8216;description&#8217;);</p>
<p>$message =~ s/^.+ &#8211; //; # remove dash seperator.<br />
$message =~ s/^\s+//; # Nuke any leading space; every char counts.<br />
$message =~ s/\s+$//; # Nuke any trailing space; every char counts.<br />
$message =~ s/[_]+$//; # Nuke any trailing underscores; happens when message is short.</p>
<p>$message = substr $message , 0 , 116; # Twitter can only handle 140 chars.<br />
$message .= &#8216; -&gt; &#8216;; # Append ellipse to denote further content available.<br />
$message .= $short_url; # Append the shortened URL.</p>
<p># get in http://dev.twitter.com/apps/XXXXXX<br />
my %CONSUMER_TOKENS = (<br />
consumer_key    =&gt; &#8216;** CONSUMER_KEY **&#8217;,<br />
consumer_secret =&gt; &#8216;** CONSUMER_SECRET **&#8217;,);</p>
<p># get in http://dev.twitter.com/apps/XXXXXX/my_token<br />
my $ACCESS_TOKEN        = &#8216;** ACCESS_TOKEN **&#8217;;<br />
my $ACCESS_TOKEN_SECRET = &#8216;** ACCESS_TOKEN_SECRET **&#8217;;</p>
<p>my $t = Net::Twitter::Lite-&gt;new(%CONSUMER_TOKENS);<br />
$t-&gt;access_token($ACCESS_TOKEN);<br />
$t-&gt;access_token_secret($ACCESS_TOKEN_SECRET);<br />
my $status = $t-&gt;update($message);</p></blockquote>
<p>So Sachen wie ** CONSUMER_KEY ** müssen natürlich ersetzt werden und sind hier nur Platzhalter.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.itbert.de/2010/09/08/twitterlite-und-oauth/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Froscon 2010 in St. Augustin</title>
		<link>http://www.itbert.de/2010/08/23/froscon-2010-in-st-augustin/</link>
		<comments>http://www.itbert.de/2010/08/23/froscon-2010-in-st-augustin/#comments</comments>
		<pubDate>Mon, 23 Aug 2010 17:43:38 +0000</pubDate>
		<dc:creator>bert2002</dc:creator>
				<category><![CDATA[Linux/BSD]]></category>

		<guid isPermaLink="false">http://www.itbert.de/?p=769</guid>
		<description><![CDATA[Vergangenes Wochenende war die fünfte (für mich die erste) Froscon in St. Augustin in der nähe von Bonn. Es gab spannende Vorträge und leckere Getränke. Da ich leider nicht alle Vorträge sehen konnte warte ich schon gespannt auf die Streams, aber bis das soweit ist wollte ich schon einmal eine Empfehlung abgeben von Vorträgen die [...]]]></description>
			<content:encoded><![CDATA[<p>Vergangenes Wochenende war die fünfte (für mich die erste) <a href="http://www.froscon.de" target="_blank">Froscon</a> in St. Augustin in der nähe von Bonn. Es gab spannende Vorträge und leckere Getränke. Da ich leider nicht alle Vorträge sehen konnte warte ich schon gespannt auf die Streams, aber bis das soweit ist wollte ich schon einmal eine Empfehlung abgeben von Vorträgen die ich sehr gut gefunden habe:</p>
<ul>
<li>Gute Open-Source-Projekte bestehen aus mehr als nur Code (<a href="http://programm.froscon.org/2010/events/550.en.html" target="_blank">lnk</a>) (<a href="http://michael-prokop.at/blog/2010/08/26/vortrag-gute-open-source-projekte-bestehen-aus-mehr-als-nur-code/" target="_blank">folien</a>)</li>
<li>Antifeatures (<a href="http://programm.froscon.org/2010/events/644.en.html" target="_blank">lnk</a>)</li>
<li>Quadrocopter für Anfänger (<a href="http://programm.froscon.org/2010/events/564.en.html" target="_blank">lnk</a>)</li>
<li>Die wunderbare Welt der Regulären Ausdrücke (<a href="http://programm.froscon.org/2010/events/493.en.html" target="_blank">lnk</a>) (<a href="http://westhoffswelt.de/portfolio.html" target="_blank">folien</a>)</li>
</ul>
<p>Das sind meine vier <strong>must seen</strong> Vorträge die man sich auch Anschauen sollte, wenn man nicht vor Ort war. Sobald die Videos verfügbar sind werde ich die noch ergänzen.</p>
<p>Aufnahmen: <a href="http://ftp-b.stw-bonn.de/froscon/2010/" target="_blank">http://ftp-b.stw-bonn.de/froscon/2010/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.itbert.de/2010/08/23/froscon-2010-in-st-augustin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wiederherstellen von gelöschten Dateien unter Linux</title>
		<link>http://www.itbert.de/2010/08/20/wiederherstellen-von-geloschten-dateien-unter-linux/</link>
		<comments>http://www.itbert.de/2010/08/20/wiederherstellen-von-geloschten-dateien-unter-linux/#comments</comments>
		<pubDate>Fri, 20 Aug 2010 17:27:44 +0000</pubDate>
		<dc:creator>bert2002</dc:creator>
				<category><![CDATA[Linux/BSD]]></category>

		<guid isPermaLink="false">http://www.itbert.de/?p=760</guid>
		<description><![CDATA[Mittels dem Inhalt nach einer Datei suchen (via): grep -a -B 25 -A 100 &#8216;some string in the file&#8217; /dev/sda1 &#62; results.txt Binaries wiederherstellen (via): foremost -i /dev/sda -o /recovery]]></description>
			<content:encoded><![CDATA[<p>Mittels dem Inhalt nach einer Datei suchen (<a href="http://www.commandlinefu.com/commands/view/6371/recover-a-deleted-file" target="_blank">via</a>):</p>
<blockquote><p>grep -a -B 25 -A 100 &#8216;some string in the file&#8217; /dev/sda1 &gt; results.txt</p></blockquote>
<p>Binaries wiederherstellen (<a href="http://www.commandlinefu.com/commands/view/6372/recover-deleted-binary-files" target="_blank">via</a>):</p>
<blockquote><p>foremost -i /dev/sda -o /recovery</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.itbert.de/2010/08/20/wiederherstellen-von-geloschten-dateien-unter-linux/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

