<?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/"
	xmlns:series="http://unfoldingneurons.com/"
	>

<channel>
	<title>Bits, Bytes and my 5 cents &#187; Ausbildung</title>
	<atom:link href="http://blog.encodingit.ch/category/ausbildung/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.encodingit.ch</link>
	<description>Life is just a technical game</description>
	<lastBuildDate>Thu, 02 Feb 2012 16:28:14 +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>Schreibwettbewerb für Schulen: Opensource</title>
		<link>http://blog.encodingit.ch/2012/01/schreibwettbewerb-fur-schulen-opensource/</link>
		<comments>http://blog.encodingit.ch/2012/01/schreibwettbewerb-fur-schulen-opensource/#comments</comments>
		<pubDate>Tue, 31 Jan 2012 08:22:38 +0000</pubDate>
		<dc:creator>Patrick</dc:creator>
				<category><![CDATA[Ausbildung]]></category>
		<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[Planet]]></category>
		<category><![CDATA[Schulen]]></category>
		<category><![CDATA[Wettbewerb]]></category>

		<guid isPermaLink="false">http://blog.encodingit.ch/?p=3072</guid>
		<description><![CDATA[Jürgen von bitblokes.de hat einen Schreibwettbewerb zum Thema Opensource ausgeschrieben. Ich selbst habe das Vergnügen als Mitglied in der Jury zu agieren.
Teilnehmen am Wettbewerb dürfen Schulen aller Grösse und Stufe, welche der deutschen Sprache mächtig sind!<img src="http://www.encodingit.ch/piwik/piwik.php?idsite=2&rec=1" style="border:0" alt="" />]]></description>
			<content:encoded><![CDATA[<p>Jürgen von bitblokes.de hat <a href="http://www.bitblokes.de/2012/01/open-source-schreibwettbewerb-fur-schulen-vorbereitungsphase/"  target="_blank">einen <strong>Schreibwettbewerb </strong>zum Thema Opensource</a> ausgeschrieben. Ich selbst habe das Vergnügen als Mitglied in der Jury zu agieren.<br />
Teilnehmen am Wettbewerb dürfen Schulen aller Grösse und Stufe, welche der deutschen Sprache mächtig sind!</p>
<p>Doch natürlich gibt es im Wettbewerb auch <strong>Regeln</strong>!</p>
<ul>
<li><strong>Thema</strong>: Die einzige Vorgabe ist hier Open-Source. Wir wollen weder Leute ausschließen, noch uns auf ein Betriebssystem festlegen. Open-Source-Software gibt es für Linux (irgendwie klar), Mac OS X, Windows, *BSD, Android und so weiter und so fort. Wir setzen hier auf die Kreativität der Schüler, die auch in die Berwertung einfließen wird.</li>
<li><strong>D A CH</strong>: Schulen aus Deutschland, Österreich und der Schweiz sind teilnahmeberechtigt. Wenn aus dem anderen EU-Bereich ein Artikel in deutscher Sprache eingeht, werden wir den auch mitspielen lassen.</li>
<li><strong>Zeichenbeschränkung</strong>: maximal 8000 Zeichen (inklusive Leerzeichen) und keine Untergrenze. Heißt im Klartext, wer sich mehr Mühe macht, hat höhere Chancen. Bedenkt allerdings bitte, dass Quantität nicht immer Qualität ist. Man kann auch 8000 Zeichen schreiben und gar nichts aussagen. Schwafelei endet wahrscheinlich in Punktabzug.</li>
<li><strong>Schrecklicher Verdacht</strong>: Sollten wir das Gefühl haben, dass der zuständige Lehrer zu viel mitgeholfen hat, werden wir das entsprechende Team kontaktieren. Wenn wir dann der Meinung sind, dass sich der Verdacht bestätigt, wird es Punktabzug geben. Die Schüler sollen das Thema selbst erarbeiten und ausarbeiten &#8211; der Lehrer als Stütze und Koordinations-Leiter dienen. Bitte haltet Euch daran, sonst hätten wir gleich einen Wettbewerb für Lehrer ausrufen können.</li>
<li><strong>Bildschirmaufnahmen oder auf neuhochdeutsch Screenshots</strong>: Ihr könnt bis zu 10 Screenshots abliefern. Das sollte allerdings dem Umfang des Werkes gerecht werden. Also ein Text mit 3 Zeilen und dazu 10 Screenshots ist unangemessen. Ihr werdet das richtige Mittelmaß schon finden. Die Screenshots bitte in einem png- oder jpg-Format mitschicken. Numeriert die Bilder bitte in der richtigen Reihenfolge und gebt uns auch entsprechend Bildunterschriften mit. Macht hierzu einfach eine txt-Datei bu.txt, wo sich die Bildunterschriften wie zum Beispiel im folgenden Format befinden: 1.jpg: Was für ein toller Screenshot!</li>
<p><span id="more-3072"></span></p>
<li><strong>Schreibweise</strong>: Bekanntlich lesen sich Texte auf einem Bildschirm schwerer als auf Papier. Wir werden keine Punkt-Abzüge vergeben, wenn ihr zum Beispiel Zahlen bis 12/zwölf auch als Zahl schreibt, oder lange zusammenhängende Wörter trennt. Hier könnt ihr schalten und walten wie ihr möchtet. Dass die Sätze Sinn ergeben und nachvollziehbar sein sollen, versteht sich von selbst.</li>
<li><strong>Textformat</strong>: Den Text bitte als Klartext (.txt-Datei) oder HTML-formatiert einsenden. Wer seinen Text natürlich farblich und mit Überschriften aufhübschen möchte, wird das HTML-Format bevorzugen. Bitte keine aufwändigen CSS-Orgien durchführen, weil sich diese beim Veröffentlichen der Artikel in Luft auflösen. Reines, klares HTML bitte und nur das, was zwischen &lt;body&gt;&lt;/body&gt; stehen soll &#8211; ohne die &lt;body&gt;&lt;/body&gt;-Tags.</li>
<li><strong>Teilnehmerinformationen</strong>: Wir wollen natürlich auch bekannt geben, von wem das schöne Werk ist. Daher bitte eine txt-Datei team.txt erstellen, in dem folgende Informationen sind: Klasse, Schule, Stadt, zuständiger Lehrer und eine E-Mail-Adresse an die wir uns bei Rückfragen wenden können / dürfen. Die E-Mail-Adresse wird von uns selbstverständlich weder veröffentlicht, noch für lästige Newsletter verwendet &#8211; sie dient rein zu Kommunikations-Zwecken. Optional könnt ihr uns eine Liste mit den Vornamen der Schüler schicken, die wir dann auch veröffentlichen. Bitte keine Nachnamen &#8211; das hier ist nicht die Stalker-Applikation von Facebook (Timeline). Ihr könnt uns auch mitteilen, wenn wir bestimmte Informationen nicht veröffentlichen sollen. Das wird respektiert und natürlich auch nicht mit Punktabzug belegt &#8211; schöner ist es schon, wenn man ein bisschen etwas über das Team erfahren kann. Überlegt es Euch einfach.</li>
</ul>
<p>Wer Lust hat auch am Wettbewerb <strong>teilzunehmen</strong>, der hat Zeit bis am <strong>24. Februar</strong> sein Werk an <strong>schreibwettbewerb@bitblokes.de</strong> einzusenden und somit die Möglichkeit einer der <strong>11 Preise</strong> abzustauben:</p>
<ul>
<li>bitblokes.de: <strong>200 Euro</strong> für die Klassenkasse. Damit könnt ihr machen, was ihr wollt.</li>
<li>O’Reilly: <strong>5 Bücher</strong>. Ein Gewinnberechtigter kann sich ein Buch nach Wahl für die Klassen- / oder Schulbibliothek aussuchen.</li>
<li>terrashop.de: <strong>5 Gutscheine</strong> zu je 20 Euro. Ein gewinnendes Team kann diesen bei terrashop.de einlösen.</li>
</ul>
<p>Also auf die Tasten, fertig, los &#8211; zu verlieren habt ihr nichts! Mehr Infos gibt es <a href="http://www.bitblokes.de/2012/01/open-source-schreibwettbewerb-fur-schulen-es-geht-los-und-die-regeln/"  target="_blank">hier</a>.</p>
<img src="http://www.encodingit.ch/piwik/piwik.php?idsite=2&rec=1" style="border:0" alt="" />]]></content:encoded>
			<wfw:commentRss>http://blog.encodingit.ch/2012/01/schreibwettbewerb-fur-schulen-opensource/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<series:name><![CDATA[Schreibwettbewerb]]></series:name>
	</item>
		<item>
		<title>Festplatte säubern mit Linux</title>
		<link>http://blog.encodingit.ch/2011/06/festplatte-saubern-mit-linux/</link>
		<comments>http://blog.encodingit.ch/2011/06/festplatte-saubern-mit-linux/#comments</comments>
		<pubDate>Tue, 21 Jun 2011 07:00:46 +0000</pubDate>
		<dc:creator>Patrick</dc:creator>
				<category><![CDATA[Ausbildung]]></category>
		<category><![CDATA[Planet]]></category>
		<category><![CDATA[shred]]></category>

		<guid isPermaLink="false">http://blog.encodingit.ch/?p=2480</guid>
		<description><![CDATA[Da ich gerne Vorsichtig umgehe mit meinen Daten, habe ich eine Möglichkeit gesucht, meine Linux-Maschine, mit zum Glück nur knapp 100 GB, von meinen persönlichen Daten zu befreien, bevor ich den meinen 4 jährigen Begleiter einfach so alleine lasse ;)
Das könnte dich auch interessieren:<ol>
<li><a href='http://blog.encodingit.ch/2011/03/lvm-fur-linux-einrichten/' rel='bookmark' title='LVM für Linux einrichten'>LVM für Linux einrichten</a> <small>LVM ist eine andere Art von Festplatten Management, ähnlich einem...</small></li>
<li><a href='http://blog.encodingit.ch/2011/03/software-raid-fur-linux/' rel='bookmark' title='Software RAID für Linux'>Software RAID für Linux</a> <small>Was also tun wenn die Platte langsam zu langsam wird...</small></li>
<li><a href='http://blog.encodingit.ch/2011/03/backup-und-restore-mit-linux/' rel='bookmark' title='Backup und Restore mit Linux'>Backup und Restore mit Linux</a> <small>Von den bisher vorgestellten Themen in LPIC 201 ist das...</small></li>
</ol><img src="http://www.encodingit.ch/piwik/piwik.php?idsite=2&rec=1" style="border:0" alt="" />]]></description>
			<content:encoded><![CDATA[<p>Da ich gerne Vorsichtig umgehe mit meinen Daten, habe ich eine Möglichkeit gesucht, meine Linux-Maschine, mit zum Glück nur knapp 100 GB, von meinen persönlichen Daten zu befreien, bevor ich den meinen 4 jährigen Begleiter einfach so alleine lasse <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Alles was zu tun war, ist die Maschine ab CD oder USB (bei mir wars ein Backtrack von einem USB-Stick) zu booten und <a target="_blank" href="http://linux.die.net/man/1/shred" >ein kleiner Befehl</a> auszuführen:</p>
<pre class="brush: bash; title: ; notranslate">
shred -vfz -n 100 /dev/sda
</pre>
<p>Dabei wird die primäre Festplatte sda hundert Mal mit zufälligen Zahlen und dann ein Mal mit lauter Nullen überschrieben.<br />
Gleichzeitig kann mit shred auch nur eine bestimmte, einzelne Datei gelöscht werden:</p>
<pre class="brush: bash; title: ; notranslate">
shred -n 35 -vfu /etc/shadow*
</pre>
<p>Natürlich können selbst nach dieser Prozedur auch noch Daten wiederhergestellt werden, doch ich denke mal nicht, dass jemand diesen Aufwand betreiben würde!</p>
<br /><p>Das könnte dich auch interessieren:<ol>
<li><a href='http://blog.encodingit.ch/2011/03/lvm-fur-linux-einrichten/' rel='bookmark' title='LVM für Linux einrichten'>LVM für Linux einrichten</a> <small>LVM ist eine andere Art von Festplatten Management, ähnlich einem...</small></li>
<li><a href='http://blog.encodingit.ch/2011/03/software-raid-fur-linux/' rel='bookmark' title='Software RAID für Linux'>Software RAID für Linux</a> <small>Was also tun wenn die Platte langsam zu langsam wird...</small></li>
<li><a href='http://blog.encodingit.ch/2011/03/backup-und-restore-mit-linux/' rel='bookmark' title='Backup und Restore mit Linux'>Backup und Restore mit Linux</a> <small>Von den bisher vorgestellten Themen in LPIC 201 ist das...</small></li>
</ol></p><img src="http://www.encodingit.ch/piwik/piwik.php?idsite=2&rec=1" style="border:0" alt="" />]]></content:encoded>
			<wfw:commentRss>http://blog.encodingit.ch/2011/06/festplatte-saubern-mit-linux/feed/</wfw:commentRss>
		<slash:comments>31</slash:comments>
		</item>
		<item>
		<title>Eine Ära geht zu Ende &#8230;</title>
		<link>http://blog.encodingit.ch/2011/06/eine-ara-geht-zu-ende/</link>
		<comments>http://blog.encodingit.ch/2011/06/eine-ara-geht-zu-ende/#comments</comments>
		<pubDate>Mon, 20 Jun 2011 07:10:05 +0000</pubDate>
		<dc:creator>Patrick</dc:creator>
				<category><![CDATA[Ausbildung]]></category>
		<category><![CDATA[Bash]]></category>
		<category><![CDATA[DNS]]></category>
		<category><![CDATA[Drucker]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[Quota]]></category>
		<category><![CDATA[RedHat]]></category>
		<category><![CDATA[Solaris]]></category>
		<category><![CDATA[Sun]]></category>
		<category><![CDATA[VBS]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://blog.encodingit.ch/?p=2464</guid>
		<description><![CDATA[Nein keine Angst, ich höre nicht auf mit dem Bloggen. Die Ära bezieht sich auf meine 4 Jährige Lehre, die ich ich wenigen Tagen abschliessen werde!
Und als ich mich so durch meine Ordnerstrukturen geklickt habe, wurde mir klar, dass sich in den 4 Jahren sehr viele kleine, aber auch wichtige und interessante Scripts, Kommandos und ähnliches angesammelt hat. Und da ich denke, es könnte dem einen oder anderen vielleicht mal helfen, möchte ich euch das nicht vorenthalten.<img src="http://www.encodingit.ch/piwik/piwik.php?idsite=2&rec=1" style="border:0" alt="" />]]></description>
			<content:encoded><![CDATA[<p>&#8230; nein keine Angst, ich höre nicht auf mit dem Bloggen! Die Ära bezieht sich auf meine 4 Jährige Lehre, die ich ich wenigen Tagen abschliessen werde!<br />
Und als ich mich so durch meine Ordnerstrukturen geklickt habe, wurde mir klar, dass sich in den 4 Jahren sehr viele kleine, aber auch wichtige und interessante Scripts, Kommandos und ähnliches angesammelt hat. Und da ich denke, es könnte dem einen oder anderen vielleicht mal helfen, möchte ich euch das nicht vorenthalten.</p>
<p>Beginnen wir mit einem einfachen VBS-Script um ein Netzlaufwerk zu verbinden unter Windows. Ich weiss die gibts wie Sand am Meer, aber meines ist besser <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<pre class="brush: bash; title: ; notranslate">
'Author: 	Patrick schmid
'Datum:	23.9.2008
'Version:	1.0.0

Option Explicit

'Variablen einlesen
Dim objNetwork, objFSO
Dim strPath, strDrive, bolPer, strUsr, strPas

'Neue Systemojekte kreieren
Set objNetwork = CreateObject(&quot;WScript.Network&quot;)
Set objFSO = CreateObject(&quot;Scripting.FileSystemObject&quot;)

'Relevante Daten definieren
strPath = &quot;\\PFAD\ZUM\SERVER'
strDrive = &quot;W:&quot;
bolPer = False
strUsr = &quot;USER&quot;
strPas = &quot;PASSWORD&quot;

'Prüfen ob Drive schon vorhanden
If NOT objFSO.DriveExists (strDrive) Then
	'drive mappen
	objNetwork.MapNetworkDrive strDrive, strPath , bolPer, strUsr, strPas
End If
</pre>
<p>Oder noch ein VBS-Script, um zwei DNS-Einträge zu setzen:</p>
<pre class="brush: bash; title: ; notranslate">
'-----------------------------------------------------------------------------------------------
'Author:		Patrick Schmid
'Date:			14.12.2009
'Version:		1.0
'-----------------------------------------------------------------------------------------------
Option Explicit

'reserve variabels
Dim objWMIService, colNetCards, arrDNSServers, objNetCard, strprimary, strsecondary

'set dns ips for primary and secondary
strprimary = &quot;192.168.1.18&quot;
strsecondary = &quot;192.168.1.19&quot;

'set array with primary and secondary dns server
arrDNSServers = Array(strprimary, strsecondary)

'get system environment
Set objWMIService = GetObject(&quot;winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2&quot;)

'get all Network interfaces
Set colNetCards = objWMIService.ExecQuery(&quot;Select * From Win32_NetworkAdapterConfiguration Where IPEnabled = True&quot;)

'read each network interface in variable
For Each objNetCard in colNetCards
	'set dns arry to network interface
	objNetCard.SetDNSServerSearchOrder(arrDNSServers)
Next
</pre>
<p>Nun weg von der dunklen Seite &#8211; auf zu Linux, da hab ich entsprechend mehr Material <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><span id="more-2464"></span></p>
<p>Los geht es mit einem Perl-Script, welches alle Benutzer aus dem LDAP ausliesst, die abgelaufen sind und diese via eMail informiert:</p>
<pre class="brush: perl; title: ; notranslate">
#!/usr/bin/perl -w
use IPC::Open3;
use Net::LDAP;

$date = setExpire();
my $LDAPHOST = &quot;&quot;;
my $LDAPROOT  = &quot;&quot;;
my $LDAPUPASS = &quot;&quot;;

my $ldap = Net::LDAP-&gt;new($LDAPHOST) or die &quot;Can't bind to ldap:\n $!\n $@&quot;;
$ldap-&gt;bind;
my $pid = open3(\*IN,\*OUT,0,'/bin/bash');
my $cmd = 'lsuser -a expires ALL &gt; tmpusers';
print IN &quot;$cmd\n&quot;;
open(USERS, &quot;tmpusers&quot;) || die(&quot;tmpusers is not accessable!&quot;);
@raw_data = &lt;USERS&gt;;
close(USERS);
foreach $user (@raw_data)
{
	@splited = split(/=/, $user);
	@splited2 = split(/ /, $splited[0]);
	$username = $splited2[0];
	if (not($splited[1] == &quot;0&quot;))
	{
		$exyear = (substr($splited[1],8,2));
		$exmonth = (substr($splited[1],0,2));
		$exday = (substr($splited[1],2,2));
		$expired = &quot;$exyear$exmonth$exday&quot;;
		if ($date &gt; $expired) {
			my $pid = open3(\*IN,\*OUT,1,'/bin/bash');
			my $cmd = 'lsuser -a gecos '.$username;
			print IN &quot;$cmd\n&quot;;
			my $result = &lt;OUT&gt;;
			if ((index($result,&quot;gecos&quot;)) &gt; 0)
			{
				@raw_info = split(/=/, $result);
				if ((index($raw_info[1],&quot;_&quot;)) &gt; 0)
				{
					@raw_name = split(/_/, $raw_info[1]);
					$fullname = $raw_name[0].&quot; &quot;.$raw_name[1];
				} else {
					$fullname = $raw_info[1];
				}
				my ($mesg) = $ldap-&gt;search(
					base   =&gt; &quot;ou=People,$LDAPROOT&quot;,
					filter =&gt; &quot;(uid=$username)&quot;,
					attrs =&gt; ['uid', 'mail']
				);
				$mesg-&gt;code &amp;&amp; die $mesg-&gt;error;
				foreach my $entry ( $mesg-&gt;entries ) {
					my ($useremail) = $entry-&gt;get_value('mail');
					my $pid = open3(\*IN,\*OUT,1,'/bin/bash');
					my $cmd = '/usr/lib/sendmail -t
						To: '.$useremail.'
						Subject: Account has expired
						Dear '.$fullname.'
						Your account '.$username.' has expired!';
					print IN &quot;$cmd\n&quot;;
				}
			}
		}
	}
}

$ldap-&gt;unbind;

sub setExpire {
	my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);

	$year += 1900;
	$mon += 1;
	$year = sprintf(&quot;%02d&quot;, $year % 100);
	$mon = sprintf(&quot;%02d&quot;, $mon % 100);
	$mday = sprintf(&quot;%02d&quot;, $mday% 100);
	return &quot;$year$mon$mday&quot;;
}
</pre>
<p>Oder ein Bash-Script, um einen Drucker hinzuzufügen:</p>
<pre class="brush: bash; title: ; notranslate">
#!/bin/bash
echo &quot;What's the printer's name?&quot;
read printer
echo &quot;What's the queue's name (Default: $printer)?&quot;
read queue

echo &quot;&lt;Printer $printer&gt;&quot; &gt;&gt; /etc/cups/printers.conf
echo &quot;Info $printer&quot; &gt;&gt; /etc/cups/printers.conf
echo &quot;DeviceURI lpd://$printer/$queue&quot; &gt;&gt; /etc/cups/printers.conf
echo &quot;State Idle&quot; &gt;&gt; /etc/cups/printers.conf
echo &quot;Accepting Yes&quot; &gt;&gt; /etc/cups/printers.conf
echo &quot;JobSheets none none&quot; &gt;&gt; /etc/cups/printers.conf
echo &quot;QuotaPeriod 0&quot; &gt;&gt; /etc/cups/printers.conf
echo &quot;PageLimit 0&quot; &gt;&gt; /etc/cups/printers.conf
echo &quot;KLimit 0&quot; &gt;&gt; /etc/cups/printers.conf
echo &quot;&lt;/Printer&gt;&quot; &gt;&gt; /etc/cups/printers.conf

echo &quot;restarting cups&quot;
/etc/init.d/cups restart
</pre>
<p>Wie wäre es mit einem kleinen Script, dass den freien Festplattenspeicher mit ASCII grafisch aufbereitet:</p>
<pre class="brush: bash; title: ; notranslate">
#!/bin/bash
df -h $1 | tr -s ' ' '\t' | cut -f2,3,5,6 | grep '^[^/].*$' | grep '^.*/.*$' | while read all use pct fs
	#get the percent without the % and wirte it to fil
	do echo $pct $fs | cut -d% -f1 | while read fil
		#write as that much # as the number of fil is
		do for (( i=0 ; $i&lt;$fil; i=$i+1 ))
			#write everything to out
			do out=&quot;$out#&quot;
		done

		#calculate the rest
		rest=$((100-fil))
		for (( i=0 ; $i&lt;$rest; i=$i+1 ))
			#add everything to out too
			do out=&quot;$out-&quot;
		done

		#get the size of the mountpoint
		size=$(echo $fs | wc -m)
		#calculate the needed rest
		size=$((15-$size))

		#add the number of spaces
		for (( i=0 ; $i&lt;$size; i=$i+1 ))
			do space=&quot;$space &quot;
		done

		#print the mountpoint, space buffer and out (its fil)
		echo -e &quot;$fs $space $out $pct ($use/$all)&quot;
	done
done
</pre>
<p>Oder aber ein Script (benötigt expect) das via iLO eine Maschine neustartet:</p>
<pre class="brush: bash; title: ; notranslate">
#!/usr/bin/expect
# Version 1.0
# by Patrick Schmid

spawn ssh root@[lindex $argv 0]
expect &quot;Password:&quot; {send &quot;PASSWORD\r&quot;}
expect &quot;&gt; &quot; {send &quot;reset /SYS -script\r&quot;}
expect {
	&quot;Performing&quot; {puts stdout &quot;\nDone&quot;}
  default {puts stdout &quot;\nError&quot;}
}
</pre>
<p>So jetzt mal weg von den Scripts, einfach ein paar Befehle für die Konsole. So zum Hinzufügen einer Maschine zu einer NIS-Domäne:</p>
<pre class="brush: bash; title: ; notranslate">
ypset -d DOMÄNE SERVER
/etc/init.d/ypbind restart
chkconfig --level 345 ypbind on
</pre>
<p>Oder eine Checkliste zum Zurücksetzen eines vergessenen Passwortes unter RedHat:</p>
<ul>
<li>Insert de Rescue Disk</li>
<li>Befor loading the system press F2 to enter the start up menu</li>
<li>Select Disk and wait until it is loaded</li>
<li>Press F5 to enter rescue mode</li>
<li>enter &#8220;linux rescue&#8221; and confirm with Enter</li>
<li>Wait until a shell promt comes up</li>
<li>Type &#8220;chroot /mnt/syslinux&#8221; and confirm with enter</li>
<li>mount -o remount,rw /</li>
<li>Open the shadow file by entering &#8220;vi /etc/shadow&#8221;</li>
<li>Delete the value between the first two :</li>
<li>Type :wq to save and quit</li>
<li>Type shutdown -h now and remove the CD</li>
<li>Password is reseted now</li>
</ul>
<p>Auch die Quota lässt sich ganz einfach anzeigen und anpassen:</p>
<pre class="brush: bash; title: ; notranslate">
zfs get quota store/home/USERNAME
zfs set quota=10G store/home/USERNAME
</pre>
<p>Oder aber viel Nützliches im Umgang mit SUN / Solaris. So zum Beispiel zum Ausführen eines Filesystemchecks:</p>
<pre class="brush: bash; title: ; notranslate">
fsck -v ufs /dev/dsk/c0t0d0sX
</pre>
<p>Oder zum sauberen Neustarten eines Maschine:</p>
<pre class="brush: bash; title: ; notranslate">
sync:sync:reboot
</pre>
<p>Oder wenn man auf der Konsole mit BACKSPACE nichts mehr löschen kann, so hilft:</p>
<pre class="brush: bash; title: ; notranslate">
stty erase [BACKSPACE]
</pre>
<p>Auch wenn man alle Partitionen sehen will, wird geholfen:</p>
<pre class="brush: bash; title: ; notranslate">
echo|format
</pre>
<p>Oder wer von der Konsole aus neustarten will:</p>
<pre class="brush: bash; title: ; notranslate">
boot -s (Single User)
boot net -s (ab Netzwerk starten)
boot net - install (ab Netzwerk installieren)
boot cdrom -s (von CD starten)
</pre>
<p>Auch wer unter Solaris sein Passwort vergisst, muss nicht verzweifeln:</p>
<ul>
<li>boot cdrom -s                        &#8211;> Ab CD starten</li>
<li>echo|format                          &#8211;> Die Partitionen ausgeben</li>
<li>mkdir /tmp/d                         &#8211;> Ordner zum mounten erstellen</li>
<li>mount /dev/dsk/c0t0d0s0 /tmp/t       &#8211;> Partition mounten</li>
<li>vim /etc/shadow                      &#8211;> Passwortfile öffnen, Passwort für root löschen</li>
<li>sync;sync;reboot                     &#8211;> Reboot</li>
<li>fsck /dev/dsk/c0t0d0s0               &#8211;> file system check</li>
<li>fsck -y /dev/dsk/c0t0d0s0            &#8211;> confirm file system check</li>
</ul>
<p>So das war es dann in etwa auch schon wieder. Und ja ich weiss, die Scripts sind teils schrecklich umständlich, aber sie führten zum Ziel <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<img src="http://www.encodingit.ch/piwik/piwik.php?idsite=2&rec=1" style="border:0" alt="" />]]></content:encoded>
			<wfw:commentRss>http://blog.encodingit.ch/2011/06/eine-ara-geht-zu-ende/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Asuro Clean Up</title>
		<link>http://blog.encodingit.ch/2011/03/asuro-clean-up/</link>
		<comments>http://blog.encodingit.ch/2011/03/asuro-clean-up/#comments</comments>
		<pubDate>Mon, 28 Mar 2011 09:34:08 +0000</pubDate>
		<dc:creator>Patrick</dc:creator>
				<category><![CDATA[Ausbildung]]></category>
		<category><![CDATA[Asuro]]></category>

		<guid isPermaLink="false">http://blog.encodingit.ch/?p=2020</guid>
		<description><![CDATA[Asuro ist ein kleiner, in C programmierbarer Roboter auf 2 Rädern und einem halben Ping-Pong-Ball. Der Name steht dabei für "Another Small and Unique Robot from Oberpfaffenhofen" was auch gleich dessen Herkunft klärt.<img src="http://www.encodingit.ch/piwik/piwik.php?idsite=2&rec=1" style="border:0" alt="" />]]></description>
			<content:encoded><![CDATA[<p>Asuro ist ein kleiner, in C programmierbarer Roboter auf 2 Rädern und einem halben Ping-Pong-Ball. Der Name steht dabei für &#8220;Another Small and Unique Robot from Oberpfaffenhofen&#8221; was auch gleich dessen <a target="_blank" href="http://www.dlr.de/rm/en/desktopdefault.aspx/tabid-3848/6062_read-9031/" >Herkunft</a> klärt.</p>
<p><a target="_blank" href="http://www.arexx.com/arexx.php?cmd=goto&amp;cparam=p_asuro" ><img src="http://blog.encodingit.ch/wp-content/uploads/2011/03/asuro_front.jpg" alt="" title="asuro_front" width="256" height="202" class="alignnone size-full wp-image-2021" /></a></p>
<p>Ob man den Asuro auch gleich zusammengebaut kaufen kann, ist mir nicht bekannt, ich habe mir dem Bausatz mit allen Komponenten und einem ausführlichen Bauplan geholt und für ein Schulprojekt zusammengebaut.<br />
Der Roboter besteht dabei aus üblichen Komponenten, bietet nebenbei aber viele interessante Schnittstellen zur Aussenwelt wie Licht- und Tastsensoren, mehrere Leuchtdioden oder Lichtschranken. Dazu kommen noch Motoren, welche sich unabhängig mit beliebiger Geschwindigkeit und Richtung ansteuern lassen.<br />
Alles zusammen wird betrieben von 4 AAA-Batterien und gesteuert von einem ATmega8 8-Bit-Mikrocontroller mit 8kB Flash-Speicher. Seinen compilierten Code kann man dabei über die Infrarot-Schnittstelle einspeisen.</p>
<p>Nun als Projekt für den Asuro hatten wir uns vorgenommen, möglichst alle Sensoren und Funktionen des Asuros auszunutzen! Also vielen banale Dinge wie Linienfolgen oder Objekten ausweichen schon mal weg.<br />
Nach reichlicher Überlegung dann, kamen wir zum Ergebnis, den Asuro als &#8220;Aufräumer&#8221; zu missbrauchen. So sollte der kleine Roboter Objekte in der Form eines Bechers innerhalb eines schwarzen Kreises aufspüren und rausschieben, so dass zum Schluss der Asuro alleine innerhalb des Kreises ist.</p>
<p>Die konzeptionelle Umsetzung davon ist nicht sonderlich schwer:</p>
<p><span id="more-2020"></span></p>
<ul>
<li>Der Asuro fährt, bis der Lichsensor am unteren Ende die schwarze Linie entdeckt, dann wendet er um 140° und fährt zurück. </li>
<li>Entdeckt er daneben an seinen Tastsensoren eine Aktivität, so hat er einen Becher gefunden. Ist es einer der äusseren Sensoren, so muss der Roboter sich mittig ausrichten, sind es die inneren beiden Sensoren, so sitzt der Becher ideal und kann geschoben werden.</li>
</ul>
<p>Die Umsetzung in C war schon etwas anspruchsvoller, da mir die spezifischen Funktionen vom Asuro noch nicht bekannt waren. Also musste ich mich zuerst einarbeiten.<br />
Heraus kam dann ein Stück Code, welches ich mit einem Video nach Abgabe des Projektes hier veröffentlichen werde. Seid also gespannt <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Um um die Zeit zu vertreiben, noch ein paar Möglichkeiten:</p>
<p><iframe title="YouTube video player" width="480" height="390" src="http://www.youtube.com/embed/vuzn-WWkA9s" frameborder="0" allowfullscreen></iframe></p>
<p><iframe title="YouTube video player" width="480" height="390" src="http://www.youtube.com/embed/VLMvod0WCMA" frameborder="0" allowfullscreen></iframe></p>
<img src="http://www.encodingit.ch/piwik/piwik.php?idsite=2&rec=1" style="border:0" alt="" />]]></content:encoded>
			<wfw:commentRss>http://blog.encodingit.ch/2011/03/asuro-clean-up/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
	
		<series:name><![CDATA[Asuro]]></series:name>
	</item>
		<item>
		<title>ICT Schweizermeisterschaften 2010</title>
		<link>http://blog.encodingit.ch/2010/10/ict-schweizermeisterschaften-2010/</link>
		<comments>http://blog.encodingit.ch/2010/10/ict-schweizermeisterschaften-2010/#comments</comments>
		<pubDate>Wed, 06 Oct 2010 16:59:10 +0000</pubDate>
		<dc:creator>Patrick</dc:creator>
				<category><![CDATA[Ausbildung]]></category>
		<category><![CDATA[Netzwerk]]></category>
		<category><![CDATA[ICT]]></category>
		<category><![CDATA[Schweizermeisterschaft]]></category>

		<guid isPermaLink="false">http://blog.encodingit.ch/?p=1077</guid>
		<description><![CDATA[Ein Artikel über die Vorbereitung zur Schweizermeisterschaft 2010 der Informatik mit Verlinkung zu den Testaufgaben<img src="http://www.encodingit.ch/piwik/piwik.php?idsite=2&rec=1" style="border:0" alt="" />]]></description>
			<content:encoded><![CDATA[<p>Zur Zeit bereite ich mich auf die Schweizermeisterschaft der Informatikberufe vor.</p>
<blockquote><p>Die 8. Schweizermeisterschaft der  Informatikberufe findet in Basel an der Basler Berufs- und Bildungsmesse  im Messezentrum statt. Sie dauert vom Donnerstag, <strong>14. bis Samstag, 16. Oktober 2010</strong>.  Nach dem Grosserfolg an der Weltmeisterschaft 2009 in Calgary, wo  Fabian Vogler eine Goldmedaille im Webdesign, Florian Meier die  Bronzemedaille in der Netzwerktechnik und Martin Dörig mit dem 5. Rang  ein Diplom gewannen und gleich Informatik-Mannschafts-Weltmeister  wurden, wollen wir nun eine weitere tolle Schweizermeisterschaft  organisieren. Es lohnt sich daran teilzunehmen, ist das doch bereits  eine sehr wirkungsvolle Bestätigung der Leistungsbereitschaft der  einzelnen Person. Es ist auch eine wertvolle Standortbestimmung, die  Anwesenden spüren, wo sie stehen und erleben einen einmaligen Tag. Das  bestätigen die Teilnehmer/-innen der Vorjahre &#8211; einige von ihnen werden  wieder dabei sein!</p></blockquote>
<p>Dabei wir eine Aufgabe gestellt, welche erst am Tag der Entscheidung  bekannt gegeben wird. Diese beinhaltet normalerweise die Installation, Verkabelung und Konfiguration von Diensten wie Active Directory, DNS, DHCP, TFTP auf Windows und Linux (Debian) Basis und Subnet- und VLAN-Konfiguration, sowie VPN auf Cisco Routern, Switches und Firewalls.<br />
Für die Prüfung hat man dabei 6 Stunden zur Verfügung und neben dem eigenen Kopf dürfen keine Hilfsmittel oder Dokumentationen verwendet werden.</p>
<p>Da ich besonders im Bereich Cisco noch einige Defizite habe, habe ich zur Vorbereitung die Aufgabe aus dem Jahre 2003 hervor gesucht und aufgebaut. Und ich muss sage, es ist relativ ungewohnt und viel komplizierter, wenn man kein Google zur Verfügung hat <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> . Diese Erfahrung kann ich nur jedem Mal empfehlen&#8230;</p>
<p>Wer auch mal ein paar Stunden übrig hat, der kann das ganze ja gerne mal durchspielen und schauen, wie weit er kommt. Die Aufgabenstellung kann <a target="_blank" href="http://www.ict-skills.ch/content/cmscontent/100162_pruefung_trade39.pdf" >hier </a>bezogen werden. Als <a target="_blank" href="http://www.ict-skills.ch/content/cmscontent/100218_tool-liste_2010_definitive_version.pdf" >Hardwareliste </a>habe ich die vom aktuellen Jahr genommen.</p>
<p><a href="http://blog.encodingit.ch/wp-content/uploads/2010/10/pt.jpg"  rel="lightbox[1077]"><img class="alignnone size-full wp-image-1079" title="pt" src="http://blog.encodingit.ch/wp-content/uploads/2010/10/pt.jpg" alt="" width="572" height="284" /></a></p>
<p><a href="http://blog.encodingit.ch/wp-content/uploads/2010/10/ict.pkt" >PKT-Datei herunterladen</a></p>
<p>Das Netzwerk habe ich soweit möglich mal in Packet Tracer simuliert, bis auf die Firewall, welche in meiner Programmversion leider nicht enthalten ist, und natürlich spezifischen Konfigurationen wie Active Directory.</p>
<p>Weitere Informationen zu den Aufgaben und der Schweizermeisterschaft gibt es auf der offiziellen Webseite von <a target="_blank" href="http://www.ict-skills.ch/" >ICT-Skills</a>.</p>
<img src="http://www.encodingit.ch/piwik/piwik.php?idsite=2&rec=1" style="border:0" alt="" />]]></content:encoded>
			<wfw:commentRss>http://blog.encodingit.ch/2010/10/ict-schweizermeisterschaften-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Junior Level Linux Professional</title>
		<link>http://blog.encodingit.ch/2010/06/junior-level-linux-professional/</link>
		<comments>http://blog.encodingit.ch/2010/06/junior-level-linux-professional/#comments</comments>
		<pubDate>Thu, 24 Jun 2010 07:30:56 +0000</pubDate>
		<dc:creator>Patrick</dc:creator>
				<category><![CDATA[Ausbildung]]></category>
		<category><![CDATA[LPIC]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://blog.encodingit.ch/?p=923</guid>
		<description><![CDATA[Vor einer Woche habe ich an der Zertifikatsprüfung für LPI 102 teilgenommen und seid heute weiss ich, dass ich mit 620 von 800 Punkten bestanden habe :)<img src="http://www.encodingit.ch/piwik/piwik.php?idsite=2&rec=1" style="border:0" alt="" />]]></description>
			<content:encoded><![CDATA[<p>Vor einer Woche habe ich an der Zertifikatsprüfung für LPI 102 teilgenommen und seid heute weiss ich, dass ich mit 620 von 800 Punkten bestanden habe <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="text" style="font-family:monospace;">Erreichte Punkte: 620
Erforderliche Punktzahl: 500
Status: Pass</pre></td></tr></table></div>

<p>Diese Prüfung habe ich, im Vergleich zu LPI 101, als viel einfacher empfunden.<br />
In 102 geht es Hauptsächlich um Shell-Scripting, Cron und X11, wobei das Hauptgewicht in meiner Prüfung klar auf Scripting lag:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
</pre></td><td class="code"><pre class="text" style="font-family:monospace;">80% Shells, Scripting and Data Management
80% User Interfaces and Desktops
50% Administrative Tasks
80% Essential System Services
78% Networking Fundamentals
66% Security</pre></td></tr></table></div>

<p>Vorbereitet habe ich mich neben dem offiziellen Script auch noch mit dem Buch<a target="_blank" href="http://www.galileocomputing.de/2181?GPP=oplinux3" > LPIC-1</a> von Harald Maassen aus dem Galileo Computing Verlag.<br />
Für LPIC 101 habe ich zwar noch ein anderes Buch verwendet, aber wenn ich heute einen Vergleich machen und eines der beiden Bücher empfehlen müsste, so würde ich mich klar für LPIC-1 entscheiden, da es in meinen Augen den Stoff besser abdeckt und realistischere Testfragen vorweisen kann.<br />
Die Testfragen waren sogar teils so realistisch, das sie mit exakt dem Wortlaut an der Zertifizierungsprüfung vorkamen <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Mit bestandener LPIC-1 Zertifizierung konnte ich auch gleich das Novell CLA <a href="http://practicum.novell.com/LPI2CLAForm.php"  target="_blank">beantragen</a>, da Novell vor etwa einem Jahr gemerkt hat, dass sich die Prüfungsinhalte von CLA mit denen von LPIC-1 überschneiden, und seither jeder mit bestandenem LPIC-1 das Novell CLA geschenkt bekommt.</p>
<p>Nun bleibt nicht mehr viel übrig, als auf meine Zertifikate zu warten und dann auf zu LPIC-2. Und natürlich auch <a target="_blank" href="http://blog.root1024.ch/betriebssystem/linux/zertifizierung-junior-level-linux-professional-lpic-1-bestanden/"  target="_self">meinem Mitstreiter</a> zu gratulieren <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<img src="http://www.encodingit.ch/piwik/piwik.php?idsite=2&rec=1" style="border:0" alt="" />]]></content:encoded>
			<wfw:commentRss>http://blog.encodingit.ch/2010/06/junior-level-linux-professional/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Slipstream Error &#8211; imekr61.ime nicht gefunden</title>
		<link>http://blog.encodingit.ch/2008/09/slipstream-error-imekr61ime-nicht-gefunden/</link>
		<comments>http://blog.encodingit.ch/2008/09/slipstream-error-imekr61ime-nicht-gefunden/#comments</comments>
		<pubDate>Thu, 11 Sep 2008 15:05:55 +0000</pubDate>
		<dc:creator>Patrick</dc:creator>
				<category><![CDATA[Ausbildung]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Slipstream]]></category>
		<category><![CDATA[XP]]></category>

		<guid isPermaLink="false">http://compr00t.5x.to/?p=112</guid>
		<description><![CDATA[Wie sehr ich doch Microsoft hasse! Ich kann es nicht verstehen wieso Microsoft nicht immer nach jedem Patchday eine aktuelle i386-Datei zur Verfügung stellt&#8230; So habe ich halt nun das Vergnügen einen Slipstream (schau bei Wikipedia nach!) für unser XP durchzuführen. Doch wäre es doch langweilig wenn es keine Problem gäbe! Nach dem ich alle [...]<img src="http://www.encodingit.ch/piwik/piwik.php?idsite=2&rec=1" style="border:0" alt="" />]]></description>
			<content:encoded><![CDATA[<p>Wie sehr ich doch Microsoft hasse! Ich kann es nicht verstehen wieso Microsoft nicht immer nach jedem Patchday eine aktuelle i386-Datei zur Verfügung stellt&#8230;</p>
<p>So habe ich halt nun das Vergnügen einen Slipstream (schau bei Wikipedia nach!) für unser XP durchzuführen.</p>
<p>Doch wäre es doch langweilig wenn es keine Problem gäbe! Nach dem ich alle Hotfixes, welche bisher nach der Installation des OS automatisch aus einem seperaten Folder installiert wurden, in den i386 Folder integriert habe, und meine VM neu aufsetzen wollte passierte es&#8230;</p>
<p>Ein File namens<em> imekr61.ime</em> sei nicht mehr verfügbar&#8230; Also habe ich mich auf die Suche gemacht, wer den dieses File gelöscht hat!</p>
<p>Also habe ich alle integrierten Files wieder gelöscht und die Hotfixes wieder in einen seperaten Ordner verschoben, so das die Updates halt nicht mit dem OS sondern erst danach installiert werden. Und oh wunder&#8230; alles klappt, keine Fehlermeldungk, nichts! Dirket langweilig -.-</p>
<p>Nach langer suche mit der Windows Suche konnte ich das entsprechende File dann endlich lokalisieren. Einmal in C:\Windows\System32\ und einmal in i386\LANG&#8230;</p>
<p>Also mache ich mich auf die Suche nach dem File in meinem Ordner bei welchem die Hotfixes integriert sind&#8230; Und tatsächlich! Nein nicht wie alle (und ich eigentlich auch) erwahrten&#8230; Das File ist vorhanden und funktioniert einwandfrei&#8230;. Meine Depriphase setze ein in Kombination mit Ratlosigkeit&#8230;</p>
<p>Nun gut: Ich schliesse daraus, dass irgend ein Update, welches sich nicht slipstreamen (geiles Wort) lässt, auf diese Datei zugreifft und diese dann halt dummerweise korrupt macht&#8230; Für mich heisst das, dieses Update finden&#8230;</p>
<p>Ich muss sagen diese Ausgangslage hat mich ungeheim motiviert -.-</p>
<p>Nach langer Suche auf Microsoft&#8217;s Seite, in Foren und im hintersten Eckchen vom WWW habe ich herausgefunden, dass ein Hotfixes mit der Bezeichung <em>WindowsXP-KB901190-x86-ENU.exe</em> schuld an dem ganzen ist!</p>
<p>Also habe ich wieder alle integrierten Hotfixes gelöscht, dann wieder alle bis auf den obig genannten nochmal integriert.</p>
<p>Die Installation sieht nun wie folgt aus: Es werden alle aktuellen Hotfixes direkt mit direkt mit dem OS installiert bis eben auf diesen einen. Für den habe ich einen seperaten Folder mit einem Script dazu angelegt. Dieser wird erst nach erfolgreicher Installation des OS von dem Script gestartet und installiert. Und man glaubt es kaum&#8230; der Fehler ist verschwunden und das Stagen funktioniert wieder einwandfrei&#8230;</p>
<p>Was mich betrifft, ich bin genervt, ausgelaugt und am Ende! Man kann seine Arbeitszeit auch so totschlagen&#8230;</p>
<img src="http://www.encodingit.ch/piwik/piwik.php?idsite=2&rec=1" style="border:0" alt="" />]]></content:encoded>
			<wfw:commentRss>http://blog.encodingit.ch/2008/09/slipstream-error-imekr61ime-nicht-gefunden/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

