<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Gastbeitrag on Ulis Notizen</title>
    <link>https://wolf-u.li/tag/gastbeitrag/</link>
    <description>Recent content in Gastbeitrag on Ulis Notizen</description>
    <generator>Hugo</generator>
    <language>de</language>
    <copyright>Copyright 2006-CURRENTYEAR Uli Wolf - All rights reserved</copyright>
    <lastBuildDate>Sun, 08 Feb 2015 19:34:14 +0800</lastBuildDate>
    <atom:link href="https://wolf-u.li/tag/gastbeitrag/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>4k Sector Alignment auf einem Conceptronic CH3MNAS mit RAID</title>
      
      
      <link>https://wolf-u.li/4k-sector-alignment-auf-einem-conceptronic-ch3mnas-mit-raid/</link>
      <pubDate>Sun, 21 Nov 2010 15:32:05 +2100</pubDate>
      <guid>https://wolf-u.li/4k-sector-alignment-auf-einem-conceptronic-ch3mnas-mit-raid/</guid>
      <description>&lt;p&gt;Dieser Artikel wurde von Andi (quattro) als &lt;a href=&#34;https://wolf-u.li/3688/suche-gastautoren-fuer-nas-geraete/&#34;
    title=&#34;Gastartikel&#34; 
   &gt;
  Gastartikel&lt;/a&gt; eingereicht!&lt;/p&gt;
&lt;p&gt;Diese Anleitung beschreibt wie man ein RAID1 auf die neue Festplattensektorgröße von 4K (welche bei einigen Herstellern als Standardsektorgröße für neue Festplatten festgelegt wurde) genau einstellen kann. Für linear und RAID0 sollte aber kein Unterschied bestehen. Die größere Sektorengröße führt zu einer höheren Netto-Kapazität, da pro neuem 4096-Byte-Sektor acht Sync/DAM-Abschnitte, acht Toleranzbereiche sowie acht ECC-Bereiche eingespart werden (Quelle &lt;link rel=dns-prefetch href=//www.wdc.com /&gt; &lt;a href=&#34;http://www.wdc.com/wdproducts/library/WhitePapers/DEU/2579-771430.pdf&#34;
    title=&#34;Whitepaper WD&#34; 
     target=&#34;_blank&#34; rel=&#34;nofollow noopener noreferrer&#34; &gt;
  Whitepaper WD&amp;nbsp;&lt;svg xmlns=&#34;http://www.w3.org/2000/svg&#34; class=&#34;icon&#34; aria-hidden=&#34;true&#34; focusable=&#34;false&#34; viewBox=&#34;0 -128 512 640&#34;&gt;
    &lt;path d=&#34;M384 320c-17.67 0-32 14.33-32 32v96H64V160h96c17.67 0 32-14.32 32-32s-14.33-32-32-32L64 96c-35.35 0-64 28.65-64 64V448c0 35.34 28.65 64 64 64h288c35.35 0 64-28.66 64-64v-96C416 334.3 401.7 320 384 320zM488 0H352c-12.94 0-24.62 7.797-29.56 19.75c-4.969 11.97-2.219 25.72 6.938 34.88L370.8 96L169.4 297.4c-12.5 12.5-12.5 32.75 0 45.25C175.6 348.9 183.8 352 192 352s16.38-3.125 22.62-9.375L416 141.3l41.38 41.38c9.156 9.141 22.88 11.84 34.88 6.938C504.2 184.6 512 172.9 512 160V24C512 10.74 501.3 0 488 0z&#34;/&gt;
  &lt;/svg&gt;&lt;/a&gt;). Laut &lt;link rel=dns-prefetch href=//www.wdc.com /&gt; &lt;a href=&#34;http://www.wdc.com/de/products/advancedformat/&#34;
    title=&#34;Western Digital&#34; 
     target=&#34;_blank&#34; rel=&#34;nofollow noopener noreferrer&#34; &gt;
  Western Digital&amp;nbsp;&lt;svg xmlns=&#34;http://www.w3.org/2000/svg&#34; class=&#34;icon&#34; aria-hidden=&#34;true&#34; focusable=&#34;false&#34; viewBox=&#34;0 -128 512 640&#34;&gt;
    &lt;path d=&#34;M384 320c-17.67 0-32 14.33-32 32v96H64V160h96c17.67 0 32-14.32 32-32s-14.33-32-32-32L64 96c-35.35 0-64 28.65-64 64V448c0 35.34 28.65 64 64 64h288c35.35 0 64-28.66 64-64v-96C416 334.3 401.7 320 384 320zM488 0H352c-12.94 0-24.62 7.797-29.56 19.75c-4.969 11.97-2.219 25.72 6.938 34.88L370.8 96L169.4 297.4c-12.5 12.5-12.5 32.75 0 45.25C175.6 348.9 183.8 352 192 352s16.38-3.125 22.62-9.375L416 141.3l41.38 41.38c9.156 9.141 22.88 11.84 34.88 6.938C504.2 184.6 512 172.9 512 160V24C512 10.74 501.3 0 488 0z&#34;/&gt;
  &lt;/svg&gt;&lt;/a&gt; führt die Vergrößerung von 512 Bytes auf 4 KB zu einem Anstieg der Netto-Kapazität zwischen 7% und 11%. An sich könnte dies dem Anwender egal sein, jedoch richtet sich das OS bei Schreibzugriffen nicht nach der physikalischen Sektorgröße. In der Praxis kann dies dazu führen, dass Daten mit einer Dateigröße von mehr als 512 Byte und weniger als 4k so ungünstig auf die Festplatte geschrieben werden, dass diese über zwei 4K-Blöcke verteilt werden. Hierbei kann es zu Performanceproblemen kommen, da die Festplatten die beiden 4K-Blöcke erst lesen und dann beide wieder schreiben muss. Das führt zu einer &amp;ldquo;Strafrunde&amp;rdquo; (Read-Modify-Write – RMW), welche durch höhere Zugriffszeiten die Geschwindigkeit erheblich bremst. Für diese Anleitung wurden 2 gleich große 
&lt;a href=&#34;https://www.amazon.de/dp/B002ZCXK0I?tag=lebendeswolfuli-21&#34; target=&#34;_blank&#34;&gt;Western Digital EARS*&lt;/a&gt;
 Platten und ein 
&lt;a href=&#34;https://www.amazon.de/s?k=Conceptronic%20CH3MNAS&amp;tag=lebendeswolfuli-21&#34; target=&#34;_blank&#34;&gt;Conceptronic CH3MNAS*&lt;/a&gt;
  mit der (zur Zeit aktuellen) Firmware 1.02b2 verwendet.&lt;/p&gt;</description>
      
         <content:encoded><![CDATA[<p>Dieser Artikel wurde von Andi (quattro) als <a href="/3688/suche-gastautoren-fuer-nas-geraete/"
    title="Gastartikel" 
   >
  Gastartikel</a> eingereicht!</p>
<p>Diese Anleitung beschreibt wie man ein RAID1 auf die neue Festplattensektorgröße von 4K (welche bei einigen Herstellern als Standardsektorgröße für neue Festplatten festgelegt wurde) genau einstellen kann. Für linear und RAID0 sollte aber kein Unterschied bestehen. Die größere Sektorengröße führt zu einer höheren Netto-Kapazität, da pro neuem 4096-Byte-Sektor acht Sync/DAM-Abschnitte, acht Toleranzbereiche sowie acht ECC-Bereiche eingespart werden (Quelle <link rel=dns-prefetch href=//www.wdc.com /> <a href="http://www.wdc.com/wdproducts/library/WhitePapers/DEU/2579-771430.pdf"
    title="Whitepaper WD" 
     target="_blank" rel="nofollow noopener noreferrer" >
  Whitepaper WD&nbsp;<svg xmlns="http://www.w3.org/2000/svg" class="icon" aria-hidden="true" focusable="false" viewBox="0 -128 512 640">
    <path d="M384 320c-17.67 0-32 14.33-32 32v96H64V160h96c17.67 0 32-14.32 32-32s-14.33-32-32-32L64 96c-35.35 0-64 28.65-64 64V448c0 35.34 28.65 64 64 64h288c35.35 0 64-28.66 64-64v-96C416 334.3 401.7 320 384 320zM488 0H352c-12.94 0-24.62 7.797-29.56 19.75c-4.969 11.97-2.219 25.72 6.938 34.88L370.8 96L169.4 297.4c-12.5 12.5-12.5 32.75 0 45.25C175.6 348.9 183.8 352 192 352s16.38-3.125 22.62-9.375L416 141.3l41.38 41.38c9.156 9.141 22.88 11.84 34.88 6.938C504.2 184.6 512 172.9 512 160V24C512 10.74 501.3 0 488 0z"/>
  </svg></a>). Laut <link rel=dns-prefetch href=//www.wdc.com /> <a href="http://www.wdc.com/de/products/advancedformat/"
    title="Western Digital" 
     target="_blank" rel="nofollow noopener noreferrer" >
  Western Digital&nbsp;<svg xmlns="http://www.w3.org/2000/svg" class="icon" aria-hidden="true" focusable="false" viewBox="0 -128 512 640">
    <path d="M384 320c-17.67 0-32 14.33-32 32v96H64V160h96c17.67 0 32-14.32 32-32s-14.33-32-32-32L64 96c-35.35 0-64 28.65-64 64V448c0 35.34 28.65 64 64 64h288c35.35 0 64-28.66 64-64v-96C416 334.3 401.7 320 384 320zM488 0H352c-12.94 0-24.62 7.797-29.56 19.75c-4.969 11.97-2.219 25.72 6.938 34.88L370.8 96L169.4 297.4c-12.5 12.5-12.5 32.75 0 45.25C175.6 348.9 183.8 352 192 352s16.38-3.125 22.62-9.375L416 141.3l41.38 41.38c9.156 9.141 22.88 11.84 34.88 6.938C504.2 184.6 512 172.9 512 160V24C512 10.74 501.3 0 488 0z"/>
  </svg></a> führt die Vergrößerung von 512 Bytes auf 4 KB zu einem Anstieg der Netto-Kapazität zwischen 7% und 11%. An sich könnte dies dem Anwender egal sein, jedoch richtet sich das OS bei Schreibzugriffen nicht nach der physikalischen Sektorgröße. In der Praxis kann dies dazu führen, dass Daten mit einer Dateigröße von mehr als 512 Byte und weniger als 4k so ungünstig auf die Festplatte geschrieben werden, dass diese über zwei 4K-Blöcke verteilt werden. Hierbei kann es zu Performanceproblemen kommen, da die Festplatten die beiden 4K-Blöcke erst lesen und dann beide wieder schreiben muss. Das führt zu einer &ldquo;Strafrunde&rdquo; (Read-Modify-Write – RMW), welche durch höhere Zugriffszeiten die Geschwindigkeit erheblich bremst. Für diese Anleitung wurden 2 gleich große 
<a href="https://www.amazon.de/dp/B002ZCXK0I?tag=lebendeswolfuli-21" target="_blank">Western Digital EARS*</a>
 Platten und ein 
<a href="https://www.amazon.de/s?k=Conceptronic%20CH3MNAS&tag=lebendeswolfuli-21" target="_blank">Conceptronic CH3MNAS*</a>
  mit der (zur Zeit aktuellen) Firmware 1.02b2 verwendet.</p>
<p><strong>Warnhinweis: Diese Anleitung ist für fortgeschrittene Besucher geschrieben, die einzelnen Schritte sollten nur durchgeführt werden, wenn man sich ganz sicher ist. Jeder verwendet diese Anleitung auf eigenes Risiko. Die Daten auf den Festplatten sind nach Befolgen dieser Anleitung weg, erstellt daher ein Backup!</strong></p>
<p>&ldquo;~#&rdquo; bezeichnet im folgenden Konsoleneingaben.</p>
<p><strong>FFP auf einem USB-Stick installieren</strong>
Das ffp muss laut <a href="/3329/fun_plug-0-5-auf-einem-usb-stick-auf-dem-conceptronic-ch3mnas-installieren/"
    title="Anleitung installiert" 
   >
  Anleitung installiert</a> werden. Dieses ist nur für das Geraderichten der Partitionen notwendig und kann danach auch wieder entfernt werden.</p>
<p><strong>Erstmal den Ist-Zustand ansehen und notieren</strong>
Partitionen:</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span><span class="lnt">12
</span><span class="lnt">13
</span><span class="lnt">14
</span><span class="lnt">15
</span><span class="lnt">16
</span><span class="lnt">17
</span><span class="lnt">18
</span><span class="lnt">19
</span><span class="lnt">20
</span><span class="lnt">21
</span><span class="lnt">22
</span><span class="lnt">23
</span><span class="lnt">24
</span><span class="lnt">25
</span><span class="lnt">26
</span><span class="lnt">27
</span><span class="lnt">28
</span><span class="lnt">29
</span><span class="lnt">30
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">~# fdisk -lu
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">Disk /dev/sda: 1500.3 GB, <span class="m">1500301910016</span> bytes
</span></span><span class="line"><span class="cl"><span class="m">255</span> heads, <span class="m">63</span> sectors/track, <span class="m">182401</span> cylinders, total <span class="m">2930277168</span> sectors
</span></span><span class="line"><span class="cl"><span class="nv">Units</span> <span class="o">=</span> sectors of <span class="m">1</span> * <span class="nv">512</span> <span class="o">=</span> <span class="m">512</span> bytes
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"> Device Boot Start End Blocks Id System
</span></span><span class="line"><span class="cl">/dev/sda1 <span class="m">63</span> <span class="m">1060289</span> 530113+ <span class="m">82</span> Linux swap
</span></span><span class="line"><span class="cl">/dev/sda2 <span class="m">2088450</span> <span class="m">2927621339</span> <span class="m">1462766445</span> <span class="m">83</span> Linux
</span></span><span class="line"><span class="cl">/dev/sda4 <span class="m">1060290</span> <span class="m">2088449</span> <span class="m">514080</span> <span class="m">83</span> Linux
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">Partition table entries are not in disk order
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">Disk /dev/sdb: 1500.3 GB, <span class="m">1500301910016</span> bytes
</span></span><span class="line"><span class="cl"><span class="m">255</span> heads, <span class="m">63</span> sectors/track, <span class="m">182401</span> cylinders, total <span class="m">2930277168</span> sectors
</span></span><span class="line"><span class="cl"><span class="nv">Units</span> <span class="o">=</span> sectors of <span class="m">1</span> * <span class="nv">512</span> <span class="o">=</span> <span class="m">512</span> bytes
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"> Device Boot Start End Blocks Id System
</span></span><span class="line"><span class="cl">/dev/sdb1 <span class="m">63</span> <span class="m">1060289</span> 530113+ <span class="m">82</span> Linux swap
</span></span><span class="line"><span class="cl">/dev/sdb2 <span class="m">2088450</span> <span class="m">2927621339</span> <span class="m">1462766445</span> <span class="m">83</span> Linux
</span></span><span class="line"><span class="cl">/dev/sdb4 <span class="m">1060290</span> <span class="m">2088449</span> <span class="m">514080</span> <span class="m">83</span> Linux
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">Partition table entries are not in disk order
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">Disk /dev/sdc: <span class="m">2019</span> MB, <span class="m">2019557376</span> bytes
</span></span><span class="line"><span class="cl"><span class="m">255</span> heads, <span class="m">63</span> sectors/track, <span class="m">245</span> cylinders, total <span class="m">3944448</span> sectors
</span></span><span class="line"><span class="cl"><span class="nv">Units</span> <span class="o">=</span> sectors of <span class="m">1</span> * <span class="nv">512</span> <span class="o">=</span> <span class="m">512</span> bytes
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"> Device Boot Start End Blocks Id System
</span></span><span class="line"><span class="cl">/dev/sdc1 <span class="m">63</span> <span class="m">3935924</span> <span class="m">1967931</span> <span class="m">83</span> Linux
</span></span></code></pre></td></tr></table>
</div>
</div><p>Wie geht es dem RAID?</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span><span class="lnt">5
</span><span class="lnt">6
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">~# cat /proc/mdstat
</span></span><span class="line"><span class="cl">Personalities : <span class="o">[</span>linear<span class="o">]</span> <span class="o">[</span>raid0<span class="o">]</span> <span class="o">[</span>raid1<span class="o">]</span>
</span></span><span class="line"><span class="cl">md0 : active raid1 sda2<span class="o">[</span>0<span class="o">]</span> sdb2<span class="o">[</span>1<span class="o">]</span>
</span></span><span class="line"><span class="cl"> <span class="m">1462766336</span> blocks <span class="o">[</span>2/2<span class="o">]</span> <span class="o">[</span>UU<span class="o">]</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">unused devices:
</span></span></code></pre></td></tr></table>
</div>
</div><p>Bitte die Anzahl der blocks (Hier <em>1462766336</em>) notieren. Nun nachsehen, welche Einstellungen das Filesystem hat:</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span><span class="lnt">12
</span><span class="lnt">13
</span><span class="lnt">14
</span><span class="lnt">15
</span><span class="lnt">16
</span><span class="lnt">17
</span><span class="lnt">18
</span><span class="lnt">19
</span><span class="lnt">20
</span><span class="lnt">21
</span><span class="lnt">22
</span><span class="lnt">23
</span><span class="lnt">24
</span><span class="lnt">25
</span><span class="lnt">26
</span><span class="lnt">27
</span><span class="lnt">28
</span><span class="lnt">29
</span><span class="lnt">30
</span><span class="lnt">31
</span><span class="lnt">32
</span><span class="lnt">33
</span><span class="lnt">34
</span><span class="lnt">35
</span><span class="lnt">36
</span><span class="lnt">37
</span><span class="lnt">38
</span><span class="lnt">39
</span><span class="lnt">40
</span><span class="lnt">41
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">~# tune2fs -l /dev/md0
</span></span><span class="line"><span class="cl">tune2fs 1.41.0 <span class="o">(</span>10-Jul-2008<span class="o">)</span>
</span></span><span class="line"><span class="cl">Filesystem volume name:
</span></span><span class="line"><span class="cl">Last mounted on:
</span></span><span class="line"><span class="cl">Filesystem UUID: 5523dde6-1b52-4607-b598-d1dba439de65
</span></span><span class="line"><span class="cl">Filesystem magic number: 0xEF53
</span></span><span class="line"><span class="cl">Filesystem revision <span class="c1">#: 1 (dynamic)</span>
</span></span><span class="line"><span class="cl">Filesystem features: ext_attr resize_inode dir_index filetype sparse_super large_file
</span></span><span class="line"><span class="cl">Filesystem flags: unsigned_directory_hash
</span></span><span class="line"><span class="cl">Default mount options: <span class="o">(</span>none<span class="o">)</span>
</span></span><span class="line"><span class="cl">Filesystem state: not clean
</span></span><span class="line"><span class="cl">Errors behavior: Continue
</span></span><span class="line"><span class="cl">Filesystem OS type: Linux
</span></span><span class="line"><span class="cl">Inode count: <span class="m">357152</span>
</span></span><span class="line"><span class="cl">Block count: <span class="m">365691584</span>
</span></span><span class="line"><span class="cl">Reserved block count: <span class="m">0</span>
</span></span><span class="line"><span class="cl">Free blocks: <span class="m">365627444</span>
</span></span><span class="line"><span class="cl">Free inodes: <span class="m">357138</span>
</span></span><span class="line"><span class="cl">First block: <span class="m">0</span>
</span></span><span class="line"><span class="cl">Block size: <span class="m">4096</span>
</span></span><span class="line"><span class="cl">Fragment size: <span class="m">4096</span>
</span></span><span class="line"><span class="cl">Reserved GDT blocks: <span class="m">936</span>
</span></span><span class="line"><span class="cl">Blocks per group: <span class="m">32768</span>
</span></span><span class="line"><span class="cl">Fragments per group: <span class="m">32768</span>
</span></span><span class="line"><span class="cl">Inodes per group: <span class="m">32</span>
</span></span><span class="line"><span class="cl">Inode blocks per group: <span class="m">2</span>
</span></span><span class="line"><span class="cl">Filesystem created: Wed Sep <span class="m">29</span> 21:29:15 <span class="m">2010</span>
</span></span><span class="line"><span class="cl">Last mount time: Thu Sep <span class="m">30</span> 08:01:01 <span class="m">2010</span>
</span></span><span class="line"><span class="cl">Last write time: Thu Sep <span class="m">30</span> 17:49:18 <span class="m">2010</span>
</span></span><span class="line"><span class="cl">Mount count: <span class="m">5</span>
</span></span><span class="line"><span class="cl">Maximum mount count: -1
</span></span><span class="line"><span class="cl">Last checked: Wed Sep <span class="m">29</span> 21:29:15 <span class="m">2010</span>
</span></span><span class="line"><span class="cl">Check interval: <span class="m">0</span> <span class="o">()</span>
</span></span><span class="line"><span class="cl">Reserved blocks uid: <span class="m">0</span> <span class="o">(</span>user root<span class="o">)</span>
</span></span><span class="line"><span class="cl">Reserved blocks gid: <span class="m">0</span> <span class="o">(</span>group root<span class="o">)</span>
</span></span><span class="line"><span class="cl">First inode: <span class="m">11</span>
</span></span><span class="line"><span class="cl">Inode size: <span class="m">256</span>
</span></span><span class="line"><span class="cl">Required extra isize: <span class="m">28</span>
</span></span><span class="line"><span class="cl">Desired extra isize: <span class="m">28</span>
</span></span><span class="line"><span class="cl">Default directory hash: tea
</span></span><span class="line"><span class="cl">Directory Hash Seed: 64fff61f-6680-4632-8912-1e5d68ed2924
</span></span></code></pre></td></tr></table>
</div>
</div><p>Bitte notieren, diese Daten sind wichtig. Am einfachsten grad lokal in einer Textdatei unterbringen.</p>
<p><strong>Vorbereitung</strong>
fun_plug wegsichern:</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">~# mkdir /mnt/usbstorage/fun_plug_backup
</span></span><span class="line"><span class="cl">~# cp -a /mnt/HD_a2/fun_plug /mnt/HD_a2/.bootstrap /mnt/usbstorage/fun_plug_backup/
</span></span></code></pre></td></tr></table>
</div>
</div><p>Nun müssen wir die Prozesse beenden, welche viel Arbeitsspeicher brauchen und/oder offene Files auf dem Dateisystem des RAID haben könnten. Ich hatte ftp, den streaming server und itunes nie aktiviert. Es ist wohl klug, diese Sachen zuvor zu deaktivieren (kann man genau an dieser Stelle tun). Samba dreht man so ab:</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">~# smb stop
</span></span><span class="line"><span class="cl"><span class="nv">$Shutting</span> down SMB services:
</span></span><span class="line"><span class="cl"><span class="nv">$Shutting</span> down NMB services:
</span></span></code></pre></td></tr></table>
</div>
</div><p>RAID abdrehen:</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">~# raidstop md0
</span></span><span class="line"><span class="cl">mdadm: stopped /dev/md0
</span></span></code></pre></td></tr></table>
</div>
</div><p>Hats geklappt?</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">~# cat /proc/mdstat
</span></span><span class="line"><span class="cl">Personalities : <span class="o">[</span>linear<span class="o">]</span> <span class="o">[</span>raid0<span class="o">]</span> <span class="o">[</span>raid1<span class="o">]</span>
</span></span><span class="line"><span class="cl">unused devices:
</span></span></code></pre></td></tr></table>
</div>
</div><p>-&gt; Ja.</p>
<p>Swap abdrehen:</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">~# swapoff /dev/sda1
</span></span><span class="line"><span class="cl">~# swapoff /dev/sdb1
</span></span></code></pre></td></tr></table>
</div>
</div><p>Hat funktioniert:</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span><span class="lnt">5
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">~# free
</span></span><span class="line"><span class="cl"> total used free shared buffers
</span></span><span class="line"><span class="cl"> Mem: <span class="m">61860</span> <span class="m">43828</span> <span class="m">18032</span> <span class="m">0</span> <span class="m">14704</span>
</span></span><span class="line"><span class="cl"> Swap: <span class="m">0</span> <span class="m">0</span> <span class="m">0</span>
</span></span><span class="line"><span class="cl">Total: <span class="m">61860</span> <span class="m">43828</span> <span class="m">18032</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p><strong>Jetzt wirds erst</strong>
Ab hier beginnt der Teil mit den permanenten Veränderungen. Wer Angst bekommen hat, schaltet das NAS jetzt ab, zieht den USB-Stick und alles ist wieder beim alten.</p>
<p>Ich habe zum partitionieren <em>parted</em> verwendet. Man kann auch fdisk verwenden, dann allerdings so starten, da es einen <a href="/3346/crash-von-fdisk-unter-busybox-mit-fehler-segmentation-fault/"
    title="Bug gibt" 
   >
  Bug gibt</a>:</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">~# cat<span class="p">|</span>fdisk -u /dev/sda
</span></span></code></pre></td></tr></table>
</div>
</div><p>Diesen Teil hier machen wir einmal mit sda und dann mit sdb.</p>
<p>Hier wird parted aufgerufen, die Einheit auf &lsquo;Sektoren&rsquo; umgestellt und die aktuelle Partitionstabelle angezeigt:</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span><span class="lnt">12
</span><span class="lnt">13
</span><span class="lnt">14
</span><span class="lnt">15
</span><span class="lnt">16
</span><span class="lnt">17
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">~# parted /dev/sda
</span></span><span class="line"><span class="cl">GNU Parted 1.8.8
</span></span><span class="line"><span class="cl">Using /dev/sda
</span></span><span class="line"><span class="cl">Welcome to GNU Parted! Type <span class="s1">&#39;help&#39;</span> to view a list of commands.
</span></span><span class="line"><span class="cl"><span class="o">(</span>parted<span class="o">)</span> unit s
</span></span><span class="line"><span class="cl"><span class="o">(</span>parted<span class="o">)</span> print
</span></span><span class="line"><span class="cl">Model: WDC WD15EARS-00Z5B1 <span class="o">(</span>scsi<span class="o">)</span>
</span></span><span class="line"><span class="cl">Disk /dev/sda: 2930277168s
</span></span><span class="line"><span class="cl">Sector size <span class="o">(</span>logical/physical<span class="o">)</span>: 512B/512B
</span></span><span class="line"><span class="cl">Partition Table: msdos
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">Number Start End Size Type File system Flags
</span></span><span class="line"><span class="cl"> <span class="m">1</span> 63s 1060289s 1060227s primary linux-swap
</span></span><span class="line"><span class="cl"> <span class="m">4</span> 1060290s 2088449s 1028160s primary ext3
</span></span><span class="line"><span class="cl"> <span class="m">2</span> 2088450s 2927621339s 2925532890s primary ext2
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="o">(</span>parted<span class="o">)</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>Was wir hier brauchen sind die Start- und Endsektoren der Partitionen 1 und 2. Start und Ende von #1 sollten überall gleich sein. Wir verändern folgende Werte:</p>
<blockquote>
<p>#1 Start: 63 -&gt; 64
#1 Ende: 1060289 <em>(bleibt gleich)</em>
#2 Start: 2088450 <em>(+6) -&gt; 2088456 (2088456 ist durch 8 ganzzahlig teilbar)</em>
#2 Ende: 2927621339 <em>(ebenfalls +6) -&gt; 2927621345 (das ist von der verbauten Platte abhängig)</em></p>
</blockquote>
<p>Vermutlich ist der letzte Sektor beliebig, aber ich hatte keine Lust aus zu probieren was passiert, wenn sich die Größe des RAIDs ändert. Also einfach an das vorhandene Ende eben so viele Sektoren anhängen wie beim Start, dann ist man auf der sicheren Seite. Weg mit den ersten beiden Partitionen:</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="o">(</span>parted<span class="o">)</span> rm <span class="m">1</span>
</span></span><span class="line"><span class="cl"><span class="o">(</span>parted<span class="o">)</span> rm <span class="m">2</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>Die vierte verschieben wir nicht, da hier ohnehin nur ein paar Configfiles des NAS rumliegen und hier nicht so viele Zugriffe sind, als dass man die Western Digital Bremse spüren würde. Wir bauen uns eine neue swap Partition genau an der richtigen stelle:</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span><span class="lnt">5
</span><span class="lnt">6
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="o">(</span>parted<span class="o">)</span> mkpart
</span></span><span class="line"><span class="cl">Partition type? primary/extended? primary
</span></span><span class="line"><span class="cl">File system type? <span class="o">[</span>ext2<span class="o">]</span>? linux-swap
</span></span><span class="line"><span class="cl">Start? <span class="m">64</span>
</span></span><span class="line"><span class="cl">End? <span class="m">1060289</span>
</span></span><span class="line"><span class="cl"><span class="o">(</span>parted<span class="o">)</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>Der Startsektor hat sich von 63 auf 64 geändert. Der Endsektor bleibt gleich. Und nun noch die große für die Daten:
<em>(Achtung! wenn man ext3 verwendet, gibt man natürlich ext3 an dieser Stelle an)</em></p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span><span class="lnt">5
</span><span class="lnt">6
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="o">(</span>parted<span class="o">)</span> mkpart
</span></span><span class="line"><span class="cl">Partition type? primary/extended? primary
</span></span><span class="line"><span class="cl">File system type? <span class="o">[</span>ext2<span class="o">]</span>? ext2
</span></span><span class="line"><span class="cl">Start? <span class="m">2088456</span>
</span></span><span class="line"><span class="cl">End? <span class="m">2927621345</span>
</span></span><span class="line"><span class="cl"><span class="o">(</span>parted<span class="o">)</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>Exakt das selben machen wir nun noch einmal mit sdb. Nun drehen wir den swapspace wieder auf:</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">~# mkswap /dev/sda1
</span></span><span class="line"><span class="cl">Setting up swapspace version 1, <span class="nv">size</span> <span class="o">=</span> <span class="m">542831616</span> bytes
</span></span><span class="line"><span class="cl">~# mkswap /dev/sdb1
</span></span><span class="line"><span class="cl">Setting up swapspace version 1, <span class="nv">size</span> <span class="o">=</span> <span class="m">542831616</span> bytes
</span></span><span class="line"><span class="cl">~# swapon /dev/sda1
</span></span><span class="line"><span class="cl">~# swapon /dev/sdb1
</span></span><span class="line"><span class="cl">~# free
</span></span><span class="line"><span class="cl"> total used free shared buffers
</span></span><span class="line"><span class="cl"> Mem: <span class="m">61860</span> <span class="m">44308</span> <span class="m">17552</span> <span class="m">0</span> <span class="m">14680</span>
</span></span><span class="line"><span class="cl"> Swap: <span class="m">1060208</span> <span class="m">0</span> <span class="m">1060208</span>
</span></span><span class="line"><span class="cl">Total: <span class="m">1122068</span> <span class="m">44308</span> <span class="m">1077760</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>Nun ist es an der Zeit ein neues RAID zu erstellen:</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span><span class="lnt">5
</span><span class="lnt">6
</span><span class="lnt">7
</span><span class="lnt">8
</span><span class="lnt">9
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">~# mdadm --create /dev/md0 --level<span class="o">=</span><span class="m">1</span> --raid-devices<span class="o">=</span><span class="m">2</span> --spare-devices<span class="o">=</span><span class="m">0</span> /dev/sd<span class="o">[</span>ab<span class="o">]</span><span class="m">2</span>
</span></span><span class="line"><span class="cl">mdadm: array /dev/md0 started.
</span></span><span class="line"><span class="cl">~# cat /proc/mdstat
</span></span><span class="line"><span class="cl">Personalities : <span class="o">[</span>linear<span class="o">]</span> <span class="o">[</span>raid0<span class="o">]</span> <span class="o">[</span>raid1<span class="o">]</span>
</span></span><span class="line"><span class="cl">md0 : active raid1 sdb2<span class="o">[</span>1<span class="o">]</span> sda2<span class="o">[</span>0<span class="o">]</span>
</span></span><span class="line"><span class="cl"> <span class="m">1462766336</span> blocks <span class="o">[</span>2/2<span class="o">]</span> <span class="o">[</span>UU<span class="o">]</span>
</span></span><span class="line"><span class="cl"> <span class="o">[</span>&gt;....................<span class="o">]</span> <span class="nv">resync</span> <span class="o">=</span> 0.1% <span class="o">(</span>2097280/1462766336<span class="o">)</span> <span class="nv">finish</span><span class="o">=</span>243.7min <span class="nv">speed</span><span class="o">=</span>99870K/sec
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">unused devices:
</span></span></code></pre></td></tr></table>
</div>
</div><p>Nun erstellen wir ein neues Dateisystem darauf. (bei ext3 braucht man noch den Parameter -j dazu). Möchte man das NAS nur zum speichern von großen Dateien (Filme usw.) verwenden, kann man auch noch den Parameter: &ldquo;-T largefile4&rdquo; dazunehmen. Das bewirkt, daß weniger Dateien auf dem NAS gespeichert werden können (nur etwa 200.000 pro Terabyte). Möchte man zb. Backups darauf speichern, läßt man das besser weg. Achtung: dies kann nachträglich nicht mehr geändert werden!</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span><span class="lnt">12
</span><span class="lnt">13
</span><span class="lnt">14
</span><span class="lnt">15
</span><span class="lnt">16
</span><span class="lnt">17
</span><span class="lnt">18
</span><span class="lnt">19
</span><span class="lnt">20
</span><span class="lnt">21
</span><span class="lnt">22
</span><span class="lnt">23
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">~# mke2fs -m <span class="m">0</span> /dev/md0
</span></span><span class="line"><span class="cl">mke2fs 1.41.0 <span class="o">(</span>10-Jul-2008<span class="o">)</span>
</span></span><span class="line"><span class="cl">Filesystem <span class="nv">label</span><span class="o">=</span>
</span></span><span class="line"><span class="cl">OS type: Linux
</span></span><span class="line"><span class="cl">Block <span class="nv">size</span><span class="o">=</span><span class="m">4096</span> <span class="o">(</span><span class="nv">log</span><span class="o">=</span>2<span class="o">)</span>
</span></span><span class="line"><span class="cl">Fragment <span class="nv">size</span><span class="o">=</span><span class="m">4096</span> <span class="o">(</span><span class="nv">log</span><span class="o">=</span>2<span class="o">)</span>
</span></span><span class="line"><span class="cl"><span class="m">357152</span> inodes, <span class="m">365691584</span> blocks
</span></span><span class="line"><span class="cl"><span class="m">0</span> blocks <span class="o">(</span>0.00%<span class="o">)</span> reserved <span class="k">for</span> the super user
</span></span><span class="line"><span class="cl">First data <span class="nv">block</span><span class="o">=</span><span class="m">0</span>
</span></span><span class="line"><span class="cl">Maximum filesystem <span class="nv">blocks</span><span class="o">=</span><span class="m">0</span>
</span></span><span class="line"><span class="cl"><span class="m">11161</span> block groups
</span></span><span class="line"><span class="cl"><span class="m">32768</span> blocks per group, <span class="m">32768</span> fragments per group
</span></span><span class="line"><span class="cl"><span class="m">32</span> inodes per group
</span></span><span class="line"><span class="cl">Superblock backups stored on blocks:
</span></span><span class="line"><span class="cl"> 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
</span></span><span class="line"><span class="cl"> 4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
</span></span><span class="line"><span class="cl"> 102400000, <span class="m">214990848</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">Writing inode tables: <span class="k">done</span>
</span></span><span class="line"><span class="cl">Writing superblocks and filesystem accounting information: <span class="k">done</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">This filesystem will be automatically checked every <span class="m">22</span> mounts or
</span></span><span class="line"><span class="cl"><span class="m">180</span> days, whichever comes first. Use tune2fs -c or -i to override.
</span></span></code></pre></td></tr></table>
</div>
</div><p>Nun habe ich ein wenig gepatzt und vorher nicht nachgesehen, ob diese automatischen Checks aufgedreht waren. Ich habe sie dann abgedreht, weil das nas möglicherweise nicht mehr fertig bootet, wenn es beim booten einen Check machen will.</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">~# tune2fs -c <span class="m">0</span> -i <span class="m">0</span> /dev/md0
</span></span><span class="line"><span class="cl">tune2fs 1.41.0 <span class="o">(</span>10-Jul-2008<span class="o">)</span>
</span></span><span class="line"><span class="cl">Setting maximal mount count to -1
</span></span><span class="line"><span class="cl">Setting interval between checks to <span class="m">0</span> seconds
</span></span></code></pre></td></tr></table>
</div>
</div><p>Man kann das Filesystem natürlich jederzeit manuell prüfen. Eine kleine Bitte: Mag bitte jemand seine Dateisystemeinstellungen von vor der Änderung posten? (ich hab leider vergessen mir das an zu sehen)</p>
<p>Nun warten wir, bis das RAID fertig ist. d.h. 3 bis 4 stunden:</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span><span class="lnt">5
</span><span class="lnt">6
</span><span class="lnt">7
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">~# cat /proc/mdstat
</span></span><span class="line"><span class="cl">Personalities : <span class="o">[</span>linear<span class="o">]</span> <span class="o">[</span>raid0<span class="o">]</span> <span class="o">[</span>raid1<span class="o">]</span>
</span></span><span class="line"><span class="cl">md0 : active raid1 sdb2<span class="o">[</span>1<span class="o">]</span> sda2<span class="o">[</span>0<span class="o">]</span>
</span></span><span class="line"><span class="cl"> <span class="m">1462766336</span> blocks <span class="o">[</span>2/2<span class="o">]</span> <span class="o">[</span>UU<span class="o">]</span>
</span></span><span class="line"><span class="cl"> <span class="o">[=====</span>&gt;...............<span class="o">]</span> <span class="nv">resync</span> <span class="o">=</span> 27.8% <span class="o">(</span>407175232/1462766336<span class="o">)</span> <span class="nv">finish</span><span class="o">=</span>195.5min <span class="nv">speed</span><span class="o">=</span>89949K/sec
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">unused devices:
</span></span></code></pre></td></tr></table>
</div>
</div><p>Jetzt ist es fertig:</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span><span class="lnt">5
</span><span class="lnt">6
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">~# cat /proc/mdstat
</span></span><span class="line"><span class="cl">Personalities : <span class="o">[</span>linear<span class="o">]</span> <span class="o">[</span>raid0<span class="o">]</span> <span class="o">[</span>raid1<span class="o">]</span>
</span></span><span class="line"><span class="cl">md0 : active raid1 sdb2<span class="o">[</span>1<span class="o">]</span> sda2<span class="o">[</span>0<span class="o">]</span>
</span></span><span class="line"><span class="cl"> <span class="m">1462766336</span> blocks <span class="o">[</span>2/2<span class="o">]</span> <span class="o">[</span>UU<span class="o">]</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">unused devices:
</span></span></code></pre></td></tr></table>
</div>
</div><p>Nun kommt der große Moment in dem wir sehen werden ob das nas sein neues untergejubeltes raid akzeptiert:</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span><span class="lnt">12
</span><span class="lnt">13
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">~# raidstop md0
</span></span><span class="line"><span class="cl">mdadm: stopped /dev/md0
</span></span><span class="line"><span class="cl">~# raidstart md0
</span></span><span class="line"><span class="cl">Raid Table Parser version v1.10
</span></span><span class="line"><span class="cl">Assemble the previously created Raid array.
</span></span><span class="line"><span class="cl">/tmp/spare_dsk not exist!!!
</span></span><span class="line"><span class="cl">/tmp/std_raid1 not exist!!!
</span></span><span class="line"><span class="cl">mdadm: /dev/md0 has been started with <span class="m">2</span> drives.
</span></span><span class="line"><span class="cl">Raid Level Parser version v1.01
</span></span><span class="line"><span class="cl">mount: wrong fs type, bad option, bad superblock on /dev/md0,
</span></span><span class="line"><span class="cl"> missing codepage or other error
</span></span><span class="line"><span class="cl"> In some cases useful info is found in syslog - try
</span></span><span class="line"><span class="cl"> dmesg <span class="p">|</span> tail or so
</span></span></code></pre></td></tr></table>
</div>
</div><p>Schaut gut aus. Und schon haben wir ein raid in dem die 4k Blöcke des Dateisystems exakt auf den Sektoren liegen.</p>
<p>Dieses HOWTO basiert auf diesem <link rel=dns-prefetch href=//docs.google.com /> <a href="https://docs.google.com/document/pub?id=1FIcG6ORtV9yqIK-4MLNgNLlQeHOb3Fxpu_OpLbd4Npg&amp;pli=1"
    title="Artikel" 
     target="_blank" rel="nofollow noopener noreferrer" >
  Artikel&nbsp;<svg xmlns="http://www.w3.org/2000/svg" class="icon" aria-hidden="true" focusable="false" viewBox="0 -128 512 640">
    <path d="M384 320c-17.67 0-32 14.33-32 32v96H64V160h96c17.67 0 32-14.32 32-32s-14.33-32-32-32L64 96c-35.35 0-64 28.65-64 64V448c0 35.34 28.65 64 64 64h288c35.35 0 64-28.66 64-64v-96C416 334.3 401.7 320 384 320zM488 0H352c-12.94 0-24.62 7.797-29.56 19.75c-4.969 11.97-2.219 25.72 6.938 34.88L370.8 96L169.4 297.4c-12.5 12.5-12.5 32.75 0 45.25C175.6 348.9 183.8 352 192 352s16.38-3.125 22.62-9.375L416 141.3l41.38 41.38c9.156 9.141 22.88 11.84 34.88 6.938C504.2 184.6 512 172.9 512 160V24C512 10.74 501.3 0 488 0z"/>
  </svg></a></p>
]]></content:encoded>
    </item>
    <item>
      <title>Test und Review des Nokia BH-504 Bluetooth Stereo Headset</title>
      
      
      <link>https://wolf-u.li/test-und-review-des-nokia-bh-504-bluetooth-stereo-headset/</link>
      <pubDate>Sun, 19 Sep 2010 20:56:03 +1900</pubDate>
      <guid>https://wolf-u.li/test-und-review-des-nokia-bh-504-bluetooth-stereo-headset/</guid>
      <description>&lt;p&gt;In diesem Gast-Review möchte ich das Bluetooth-Kopfhörer-Modell &lt;em&gt;BH-505&lt;/em&gt; von Nokia vorstellen. Dieses ist durchaus erschwinglich und liefert dennoch guten Sound, ausreichende Akkulaufzeit und ein angenehmes Design.&lt;/p&gt;
&lt;p&gt;Kopfhörer mit Kabel sind für mich ein Ding aus dem letzten Jahrtausend ;-) Nein, ernsthaft: Gut sehen Kabel nicht aus, praktisch sind sie auch nicht und irgendwann gehen die Kabel immer kaputt. Das war für mich damals der Grund auf Drahtlostechnik umzusteigen, bereut habe ich diesen Schritt bis heute nicht.&lt;/p&gt;</description>
      
         <content:encoded><![CDATA[<p>In diesem Gast-Review möchte ich das Bluetooth-Kopfhörer-Modell <em>BH-505</em> von Nokia vorstellen. Dieses ist durchaus erschwinglich und liefert dennoch guten Sound, ausreichende Akkulaufzeit und ein angenehmes Design.</p>
<p>Kopfhörer mit Kabel sind für mich ein Ding aus dem letzten Jahrtausend ;-) Nein, ernsthaft: Gut sehen Kabel nicht aus, praktisch sind sie auch nicht und irgendwann gehen die Kabel immer kaputt. Das war für mich damals der Grund auf Drahtlostechnik umzusteigen, bereut habe ich diesen Schritt bis heute nicht.</p>
<p>Ein entscheidendes Kriterium bei der Auswahl eines neuen Kopfhörers wird bei der Mehrzahl der Leser neben der Ton- und Sprachqualität sicherlich auch der Preis sein, welcher bei dem Nokia BH-504 derzeit bei ca. 50€ liegt.</p>
<p>Der <strong>Klang ist echt nicht schlecht</strong>: Ein ausgewogenes Spektrum, mit dem es wirklich Spaß macht, zu hören. Einzig der Bass könnte ein klein wenig mächtiger sein, aber schwachbrüstig ist er trotzdem nicht. Gut finde ich auch, dass man die Dinger so laut aufdrehen kann, dass es weh tut, dann sind sie zumindest nicht zu leise ;-)</p>
<p>Die <strong>Ausdauer reicht</strong> für auf jeden Fall für die meisten Anwendungsfälle: Die angegeben acht Stunden sind eine realistische Größe, dann muss man die Hörer wieder mit dem mitgelieferten Nokia-Standart-Ladegerät laden.</p>
<p>Die <strong>Telefoniefunktion</strong> finde ich auch super, besonders beim Laufen. Nur bei lauter Umgebung oder Wind leidet die Qualität dessen, was an anderen Ende ankommt. Außerdem haben die BH-504 einen Knopf zur Sprachwahl, mein Nokia N97 trifft sogar ziemlich häufig den richtigen Kontakt.</p>
<p>Eine <strong>Dämmung der Umgebungsgeräusche</strong> gibt&rsquo;s leider nicht wirklich, seltsamerweise hören aber Umstehende nicht die eigene Musik.</p>
<p>Die <strong>Kompatibilität</strong> ist klasse: Mit Nokia und Sony-Ericsson-Handys hat&rsquo;s immer funktioniert, das iPhone kann leider mit den Knöpfen zum Weiterschalten oder Vorspulen nichts anfangen. Selbst schuld, iPhone-Besitzer, wenigstens bekommst du dann immer die Möglichkeit, es zum Angeben aus der Tasche nehmen zu können ;-) Bei dem Sendegerät muss man auf die Bluetooth-Profile AD2P für Musik, AVCRP zum Vorspulen und Pausieren und HSP/HFP für Telefonie achten.</p>
<p>Das <strong>Design gefällt mir</strong>: Die BH-504 sitzen auf den Ohren, statt sie zum umschließen. Beim Sport schwitzt man darunter daher nicht übermäßig und genießt ihren exzellenten Halt und die praktischen Kontrollelemente. Das Aussehen der Hörer ist sicher nicht schlecht, könnte aber eine Nuance cooler rüberkommen. Der Faltmechanismus ist praktisch. Zerbrechlich sind die Nokia BH-504 aber sicher nicht: Sie wurden schon unzählige Male als Inhalt meiner Umhängetasche unabsichtlich auf den Boden geworfen und halten das schon über ein Jahr durch!</p>
]]></content:encoded>
    </item>
    <item>
      <title>Test und Review des KOSS PortaPro Bügel-Kopfhörer</title>
      
      
      <link>https://wolf-u.li/test-koss-portapro/</link>
      <pubDate>Sun, 19 Sep 2010 16:35:07 +1900</pubDate>
      <guid>https://wolf-u.li/test-koss-portapro/</guid>
      <description>&lt;p&gt;In diesem Gast-Review möchte ich das Kopfhörer-Modell &lt;em&gt;PortaPro&lt;/em&gt; von KOSS vorstellen, das für seinen Preis einen recht guten Sound hat.&lt;/p&gt;
&lt;p&gt;Die KOSS Portapro sind schon ewig auf dem Markt, idealo.de hat sie seit 2001 gelistet. Für den Preis von rund 25€ ist der erste Eindruck vom &lt;strong&gt;Klang&lt;/strong&gt; wirklich umwerfend: Wenn man sie zum ersten Mal aufsetzt, dann hauen einem die Bässe wirklich absolut die Löffel weg!&lt;/p&gt;
&lt;p&gt;Auf Dauer ist leider irgendwann der &lt;strong&gt;Bass einfach too much&lt;/strong&gt;. Es stört mit der Zeit, dass der Sound unausgewogen und zu dumpf ist.&lt;/p&gt;</description>
      
         <content:encoded><![CDATA[<p>In diesem Gast-Review möchte ich das Kopfhörer-Modell <em>PortaPro</em> von KOSS vorstellen, das für seinen Preis einen recht guten Sound hat.</p>
<p>Die KOSS Portapro sind schon ewig auf dem Markt, idealo.de hat sie seit 2001 gelistet. Für den Preis von rund 25€ ist der erste Eindruck vom <strong>Klang</strong> wirklich umwerfend: Wenn man sie zum ersten Mal aufsetzt, dann hauen einem die Bässe wirklich absolut die Löffel weg!</p>
<p>Auf Dauer ist leider irgendwann der <strong>Bass einfach too much</strong>. Es stört mit der Zeit, dass der Sound unausgewogen und zu dumpf ist.</p>
<p>Beim längeren Tragen, etwa beim Laufen, nehme ich mit dem Equalizer extra den Bass heraus, aber irgendwann kommt immer dieser <strong>unangenehme Druck</strong> der Bässe auf die Ohren.</p>
<p>Die fehlende Schalldämmung nach außen stört aber doch irgendwann deutlich: Egal ob im Zug oder im Fitnessstudio, man sollte dort nur ganz leise hören, denn in der Umgebung <strong>hört jeder mit</strong>. Das Problem zweite Problem daran ist aber, dass auch jeder <strong>Lärm von außen</strong> durch kommt, deswegen müsste man aufdrehen. Mein Eindruck war, dass ich in fünf Jahren kein Gehör mehr habe, wenn ich weiter aufdrehe. <strong>Man macht sich mit dem Druck der Bässe echt die Ohren kaputt!</strong></p>
<p>Vom Design her sind die PortaPro total spacig. Ich finde, sie sehen gut aus, aber das liegt wohl immer im Auge des Betrachters.</p>
<p>Die <strong>Faltfunktion ist praktisch</strong>. Damit kann man die PortaPro zu einem sehr winzigen Paket zusammenfalten. Ich hätte mir nur gewünscht, dass die Hörer dem Träger mit dem Faltmechanismus nicht so oft die <strong>Haare ausrupfen</strong> würden.</p>
<p>Alles in allem würde ich mir die PortaPro <strong>nicht wieder kaufen</strong>. Auch wenn man vom Bass erstmal total begeistert ist, merkt man irgendwann, dass das nicht alles ist. Ein ausgeglichenes Spektrum wäre eine feine Sache gewesen und etwas Schalldämmung auch.</p>
<p>Heute bin ich sowieso eher ein Fan von drahtlosen Kopfhörern, weil Kabel verheddern, kaputt gehen und einfach fürchterlich aussehen. Die sind nicht soo viel teurer und ein Bluetooth-Handy hat heutzutage auch so gut wie jeder.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Nachträgliches Aufrüsten auf RAID1 im D-Link DNS-323 bzw. Conceptronic CH3SNAS oder CH3MNAS</title>
      
      
      <link>https://wolf-u.li/nachtraegliches-aufruesten-auf-raid1-im-d-link-dns-323-bzw-conceptronic-ch3snas-oder-ch3mnas/</link>
      <pubDate>Sun, 07 Nov 2010 20:00:34 +0700</pubDate>
      <guid>https://wolf-u.li/nachtraegliches-aufruesten-auf-raid1-im-d-link-dns-323-bzw-conceptronic-ch3snas-oder-ch3mnas/</guid>
      <description>&lt;p&gt;Dieser Artikel wurde von Thomas als &lt;a href=&#34;https://wolf-u.li/3688/suche-gastautoren-fuer-nas-geraete/&#34;
    title=&#34;Gastartikel&#34; 
   &gt;
  Gastartikel&lt;/a&gt; eingereicht!
Da ich bereits sehr viele Daten auf eine externe 2TB-USB-Platte gespielt hatte, wollte ich mir nicht extra noch einmal 2x2TB-Platten kaufen, um das RAID1-System von null an einzurichten. Vielmehr sollte die vorhandene Platte und eine neue Platten zum Einsatz kommen. Standardmäßig ist das nicht vorgesehen, beim erstmaligen Erstellen eines RAID1-Systems werden vom NAS immer beide Platten neu formatiert.&lt;/p&gt;
&lt;h2 id=&#34;benötigte-hard--und-software&#34;&gt;Benötigte Hard- und Software&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;PC mit SSH- und/oder Telnet-client&lt;/li&gt;
&lt;li&gt;fun_plug-Software (Download und Installation siehe &lt;a href=&#34;https://wolf-u.li/nas/&#34;
    title=&#34;hier&#34; 
   &gt;
  hier&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;1 uralte Festplatte, auf der fun_plug übergangsweise installiert werden kann (&amp;ldquo;Hilfsplatte&amp;rdquo;)&lt;/li&gt;
&lt;li&gt;1 alte Platte &amp;ndash;&amp;gt; Platte 1 für RAID1-System&lt;/li&gt;
&lt;li&gt;1 neue Platte &amp;ndash;&amp;gt; Platte 2 für RAID1-System (absolut identisch zur oberen)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;HINWEIS: Diese Anleitung wird auf eigene Gefahr durchgeführt. Dieser Artikel kann sehr leicht zum vollständigen Datenverlust führen! Ich übernehme keinerlei Verantwortung! Bitte versucht das zu umgehen und kauft euch lieber eine Festplatte auf der ihr die Daten zwischenspeichert!&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;</description>
      
         <content:encoded><![CDATA[<p>Dieser Artikel wurde von Thomas als <a href="/3688/suche-gastautoren-fuer-nas-geraete/"
    title="Gastartikel" 
   >
  Gastartikel</a> eingereicht!
Da ich bereits sehr viele Daten auf eine externe 2TB-USB-Platte gespielt hatte, wollte ich mir nicht extra noch einmal 2x2TB-Platten kaufen, um das RAID1-System von null an einzurichten. Vielmehr sollte die vorhandene Platte und eine neue Platten zum Einsatz kommen. Standardmäßig ist das nicht vorgesehen, beim erstmaligen Erstellen eines RAID1-Systems werden vom NAS immer beide Platten neu formatiert.</p>
<h2 id="benötigte-hard--und-software">Benötigte Hard- und Software</h2>
<ul>
<li>PC mit SSH- und/oder Telnet-client</li>
<li>fun_plug-Software (Download und Installation siehe <a href="/nas/"
    title="hier" 
   >
  hier</a>)</li>
<li>1 uralte Festplatte, auf der fun_plug übergangsweise installiert werden kann (&ldquo;Hilfsplatte&rdquo;)</li>
<li>1 alte Platte &ndash;&gt; Platte 1 für RAID1-System</li>
<li>1 neue Platte &ndash;&gt; Platte 2 für RAID1-System (absolut identisch zur oberen)</li>
</ul>
<p><em><strong>HINWEIS: Diese Anleitung wird auf eigene Gefahr durchgeführt. Dieser Artikel kann sehr leicht zum vollständigen Datenverlust führen! Ich übernehme keinerlei Verantwortung! Bitte versucht das zu umgehen und kauft euch lieber eine Festplatte auf der ihr die Daten zwischenspeichert!</strong></em></p>
<p>Im folgenden &ldquo;<del>#&rdquo; bezeichnet Konsoleneingaben, dabei ist jedoch &ldquo;</del>#&rdquo; wegzulassen.</p>
<h2 id="hardware-einbauen">Hardware einbauen</h2>
<ul>
<li>NAS ausschalten</li>
<li>Alte Platte ausbauen</li>
<li>&ldquo;Hilfsplatte&rdquo; für fun_plug einbauen (siehe Problembeschreibung unten wegen umount-Problem mit fun_plug), muss vermutlich im oberen bzw. linken Slot sein, damit fun_plug beim booten erkannt wird</li>
<li>neue, leere Platte in NAS einbauen (muss dann anderer Slot &ldquo;sdb&rdquo; sein)</li>
</ul>
<h2 id="formatierung-und-fun_plug">Formatierung und fun_plug</h2>
<ul>
<li>NAS starten</li>
<li>Neue Platte und &ldquo;Hilfsplatte&rdquo; durch NAS formatieren lassen (s. Manual, getrennte Platten, kein JBOD oder RAID)</li>
<li>Auf Hilfsplatte fun_plug mit ftp aufspielen</li>
</ul>
<h2 id="ergebnis-der-formatierung-betrachtenraid1-array-erstellen-und-fun_plug-kopieren">Ergebnis der Formatierung betrachten,RAID1-Array erstellen und fun_plug kopieren</h2>
<p><code>~# df</code></p>
<p>so ungefähr könnte es aussehen:</p>
<blockquote>
<p>Filesystem 1k-blocks Used Available Use% Mounted on
rootfs 13879 11374 1789 86% /
/dev/root 13879 11374 1789 86% /
/dev/loop0 6784 6784 0 100% /sys/crfs
/dev/sda2 75346560 221464 75125096 0% /mnt/HD_a2 <strong>&ndash;&gt; Hilfsplatte mit fun_plug</strong>
/dev/sda4 497861 10539 487322 2% /mnt/HD_a4 <strong>&ndash;&gt; Teil der 80GB-Platte mit System- und Printserver-Daten</strong>
/dev/sdb2 1921830604 616736652 1207470564 0% /mnt/HD_b2 <strong>&ndash;&gt; neue Platte - Daten</strong>
/dev/sdb4 497861 10537 487324 2% /mnt/HD_b4 <strong>&ndash;&gt; neue Platte - Systemdaten</strong></p>
</blockquote>
<h2 id="alle-laufwerke-der-neuen-platte-umounten">Alle Laufwerke der neuen Platte umounten</h2>
<blockquote>
<p><code>~# umount /mnt/HD_b2 ~# umount /mnt/HD_b4</code></p>
</blockquote>
<p>RAID1-Array erstellen (fehlende Platte wird mit &ldquo;missing&rdquo; gesetzt)</p>
<blockquote>
<p><code>~# mdadm --create /dev/md0 --level=1 --raid-disks=2 missing /dev/sdb2</code></p>
</blockquote>
<p>Mounten und mit &ldquo;df&rdquo; ansehen</p>
<blockquote>
<p><code>~# mount /dev/md0 /mnt/HD_b2</code></p>
</blockquote>
<p>fun_plug auf neue Platte spielen</p>
<blockquote>
<p><code>~# cp -R /mnt/HD_a2/ffp /mnt/HD_b2 ~# cp /mnt/HD_a2/fun_plug /mnt/HD_b2</code></p>
</blockquote>
<h2 id="platten-umbauen-und-daten-auf-neue-platte-spielen">Platten umbauen und Daten auf neue Platte spielen</h2>
<ul>
<li>
<p>Ausschalten</p>
</li>
<li>
<p>Hilfsplatte ausbauen</p>
</li>
<li>
<p>Neue Platte an Stelle der Hilfsplatte einbauen, wegen fun_plug (jetzt sda)</p>
</li>
<li>
<p>Alte Platte mit Daten im zweiten Slot einbauen (sdb) <strong>&ndash;&gt; ACHTUNG: nicht über das Webtool formatieren, es würden alle Daten verloren gehen!</strong></p>
</li>
<li>
<p>Einschalten und Verbindungsaufbau zum NAS</p>
</li>
<li>
<p>Gemountete Platten mit &ldquo;df&rdquo; ansehen, folgende Partitionen sollten unter anderem existieren:</p>
</li>
</ul>
<blockquote>
<p>/dev/sda2 1921830604 616736652 1207470564 0% /mnt/HD_a2 <strong>&ndash;&gt; neue Platte - Daten (Zielplatte)</strong>
/dev/sda4 497861 10537 487324 2% /mnt/HD_a4 <strong>&ndash;&gt; neue Platte - Systemdaten</strong></p>
</blockquote>
<p>&ndash;&gt; zusätzlich einige Partitionen der Quellplatte (als sdb1&hellip;sdbn)</p>
<ul>
<li>Daten kopieren (geht sicher auch mit &ldquo;rsync -aqxP /quelle /ziel&rdquo; (vorher mounten)):</li>
</ul>
<p>Beispiel für alle Verzeichnisse und Dateien ohne Endung:</p>
<blockquote>
<p><code>~# cd /mnt/HD_b2/ ~# cp -aR * /mnt/HD_a2/Part1Verz1</code></p>
</blockquote>
<p>Beispiel für einzelne Verzeichnisse:</p>
<blockquote>
<p><code>~# cd /mnt/HD_b3/ ~# cp -aR Verz1 /mnt/HD_a2/Part2Verz1 ~# cp -aR Verz2 /mnt/HD_a2/Part2Verz2</code></p>
</blockquote>
<p>Beispiel für einzelne Dateien:</p>
<blockquote>
<p><code>~# cd /mnt/HD_b4/ ~# cp -a File1 /mnt/HD_a2/Part2Verz1/</code></p>
</blockquote>
<p><em>Achtung ab hier kann man sehr leicht die Platten verwechseln! Sda ist oben/links und jetzt die Platte mit den Daten, sdb ist unten/rechts und wird gelöscht. Alle benötigten Daten müssen jetzt auf der oberen/linken Platte (sda) sein.</em></p>
<h2 id="alte-platte-als-zweite-raid1-platte-vorbereiten">Alte Platte als zweite RAID1-Platte vorbereiten</h2>
<p>Alte Platte (unten im Beispiel &ldquo;<em>sdb</em>&rdquo;) per fdisk löschen</p>
<blockquote>
<p><code>~# cat|fdisk /dev/sdb d,4,d,3,d,2,d,w</code></p>
</blockquote>
<p>Alte Platte (unten sdb) neu mit fdisk einrichten (die Partitionstabellen der RAID1-Partition müssen absolut identisch sein!)
&ndash;&gt; erste Partition (<em>sdb1</em>) ist SWAP (Typ 82), zweite Partition (<em>sdb2</em>) ist Datenbereich, <em>sdb3</em> nicht benutzt, <em>sdb4</em> ist Systembereich</p>
<blockquote>
<p><code>~# cat|fdisk /dev/sdb n, p, 1, 1, 66, t, 82 n, p, 2, 131,enter n, p, 4,enter(67),enter (130) w</code></p>
</blockquote>
<p>Platte (unten im Beispiel &ldquo;<em>sdb</em>&rdquo;) von Hand formatieren (ext3: mke2fs -j, ext2: &ldquo;-j&rdquo; entfällt)</p>
<blockquote>
<p><code>~# mke2fs -j /dev/sdb2</code></p>
</blockquote>
<p>Das gleiche mit Partition sdb4</p>
<blockquote>
<p><code>~# mke2fs -j /dev/sdb4</code></p>
</blockquote>
<p>Swap aktivieren</p>
<blockquote>
<p><code>~# mkswap /dev/sdb1 ~# swapon /dev/sdb1</code></p>
</blockquote>
<p>Neustart per Knopfdruck (reboot bzw. poweroff habe ich nicht getestet)</p>
<h2 id="aktuellen-raid1-status-ansehen-und-verändern">Aktuellen RAID1-Status ansehen und verändern</h2>
<p>Nach reboot gemountete Platten kontrollieren:</p>
<blockquote>
<p><code>~# df Filesystem 1k-blocks Used Available Use% Mounted on rootfs 13879 11374 1789 86% / /dev/root 13879 11374 1789 86% / /dev/loop0 6784 6784 0 100% /sys/crfs /dev/md0 1921830604 616736680 1207470536 34% /mnt/HD_a2 --&gt; mit etwas Glück bereits erkannt (/dev/md0), kann auch noch als /dev/sda2 sein /dev/sda4 497861 10539 487322 2% /mnt/HD_a4 /dev/sdb2 1921830604 616736680 1207470536 0% /mnt/HD_b2 --&gt; sehr wahrscheinlich noch separat /dev/sdb4 497861 10536 461621 2% /mnt/HD_b4</code></p>
</blockquote>
<p>&hellip;und den RAID-Status ansehen (liefert nur was zurück, wenn /dev/md0 existiert):</p>
<blockquote>
<p><code>~# cat /proc/mdstat Personalities : [linear] [raid0] [raid1] md0 : active raid1 sda2[0] 1952467712 blocks [2/1] [U_] unused devices:</code></p>
</blockquote>
<p>&ndash;&gt; von 2 Platten ist eine vorhanden, steht ein (F) ist diese fehlerhaft, ein (S) steht für spare-disk
&ndash;&gt; steht nur [1/1] da, muss die Anzahl der Platten erhöht werden:</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">mdadm -G /dev/md0 --raid-devices<span class="o">=</span><span class="m">2</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>Andere Platte zum RAID-Verbund dazubringen</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">mdadm --add /dev/md0 /dev/sdb2
</span></span></code></pre></td></tr></table>
</div>
</div><p>Wenn alles passt, beginnt das System sofort mit dem Kopieren der Daten auf die neue Platte:</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">watch cat /proc/mdstat
</span></span></code></pre></td></tr></table>
</div>
</div><div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span><span class="lnt">5
</span><span class="lnt">6
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-plaintext" data-lang="plaintext"><span class="line"><span class="cl">Every 2s: cat /proc/mdstat
</span></span><span class="line"><span class="cl">Personalities : [linear] [raid0] [raid1]
</span></span><span class="line"><span class="cl">md0 : active raid1 sdb2[2] sda2[0]
</span></span><span class="line"><span class="cl">1952467712 blocks [2/1] [U_]
</span></span><span class="line"><span class="cl">[&gt;....................] recovery = 0.8% (16835008/1952467712) finish=322.5min speed=100027K/sec
</span></span><span class="line"><span class="cl">unused devices
</span></span></code></pre></td></tr></table>
</div>
</div><p>Warte bis die Recovery abgeschlossen ist!. Anschließend Neustart per Knopfdruck (reboot bzw. poweroff habe ich nicht getestet)</p>
<h2 id="atuellen-raid1-status-ansehen-und-wenn-nötig-raid1-konfigurationsdateien-kopieren">Atuellen RAID1-Status ansehen und wenn nötig RAID1-Konfigurationsdateien kopieren</h2>
<p>So sieht es aus, wenn alles passt:</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">cat /proc/mdstat
</span></span></code></pre></td></tr></table>
</div>
</div><div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-plaintext" data-lang="plaintext"><span class="line"><span class="cl">Personalities : [linear] [raid0] [raid1]
</span></span><span class="line"><span class="cl">md0 : active raid1 sda2[0] sdb2[1]
</span></span><span class="line"><span class="cl">1952467712 blocks [2/2] [UU]
</span></span><span class="line"><span class="cl">unused devices:
</span></span></code></pre></td></tr></table>
</div>
</div><p>Um nach dem Reboot das RAID-System wieder zur Verfügung zu haben, kann es nötig sein die Konfigurationsdaten zu kopieren. Wurde die obere Platte bereits als /dev/md0 gemountet, ist dieser Schritt evtl. nicht nötig. Die Dateien in den &ldquo;.systemfile&rdquo;-Ordnern kann man sich mal ansehen. Nur kopieren, wenn nötig!
Kopieren der Dateien aus dem &ldquo;/etc/tmp_raid_table&rdquo; - Verzeichnis nach /mnt/HD_a4/.systemfile</p>
<blockquote>
<p><code>~# cp /etc/tmp_raid_table/* /mnt/HD_a4/.systemfile/</code></p>
</blockquote>
<p>Kopieren der Dateien aus dem &ldquo;/etc/tmp_raid_table&rdquo; - Verzeichnis nach /mnt/HD_b4/.systemfile</p>
<blockquote>
<p><code>~# cp /etc/tmp_raid_table/* /mnt/HD_a4/.systemfile/</code></p>
</blockquote>
<p>Ändern von EXT2 auf EXT3 (wenn mit &ldquo;-j&rdquo; formatiert) in web-Datei, sowie Anzahl Disks auf 2!</p>
<h2 id="probleme-und-lösungen">Probleme und Lösungen</h2>
<h3 id="ein-umount-der-partitionen-schlägt-fehl-wenn-fun_plug-läuft">Ein umount der Partitionen schlägt fehl, wenn fun_plug läuft</h3>
<p>Workaround:</p>
<ul>
<li>Hilfsplatte einsetzen und vom Gerät formatieren lassen (z.B. 80GB)</li>
<li>fun_plug auf dieser Platte installieren</li>
<li>fun_plug auf anderer Platte deaktivieren (Datei und ffp-Verzeichnis umbenennen) oder löschen</li>
<li>Ausschalten</li>
<li>Festplatten vertauschen</li>
<li>Einschalten</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>Nutzung des NAS als Remote Installation System (RIS) mittels TFTP</title>
      
      
      <link>https://wolf-u.li/nutzung-des-nas-als-remote-installation-system-ris-mittels-tftp/</link>
      <pubDate>Sun, 27 Mar 2011 18:57:49 +2700</pubDate>
      <guid>https://wolf-u.li/nutzung-des-nas-als-remote-installation-system-ris-mittels-tftp/</guid>
      <description>&lt;p&gt;Dieser Artikel wurde von Andreas als &lt;a href=&#34;https://wolf-u.li/3688/suche-gastautoren-fuer-nas-geraete/&#34;
    title=&#34;Gastartikel&#34; 
   &gt;
  Gastartikel&lt;/a&gt; eingereicht! Danke!
Hallo,&lt;/p&gt;
&lt;p&gt;Ich möchte hier meine Projekte mit meinen &amp;ldquo;Würfeln&amp;rdquo; vorstellen, welche ich nun seit mehr als einem Jahr am Laufen habe.&lt;/p&gt;
&lt;p&gt;Da ich nebenberuflich Kunden mit Ihren IT-Problemen betreue und es dort ab und an vorkommt, dass ich komplette Systeme neu aufsetzen bzw. installieren muss, kommt man sehr oft in die Bedrängnis, mit CDs und DVD’s zu jonglieren.&lt;/p&gt;
&lt;p&gt;Ich habe meist mit folgende Betriebssystemen Kontakt: XP (Home, Pro), SUSE als Server, ab und an ne alte Windows 2K &amp;hellip;.&lt;/p&gt;</description>
      
         <content:encoded><![CDATA[<p>Dieser Artikel wurde von Andreas als <a href="/3688/suche-gastautoren-fuer-nas-geraete/"
    title="Gastartikel" 
   >
  Gastartikel</a> eingereicht! Danke!
Hallo,</p>
<p>Ich möchte hier meine Projekte mit meinen &ldquo;Würfeln&rdquo; vorstellen, welche ich nun seit mehr als einem Jahr am Laufen habe.</p>
<p>Da ich nebenberuflich Kunden mit Ihren IT-Problemen betreue und es dort ab und an vorkommt, dass ich komplette Systeme neu aufsetzen bzw. installieren muss, kommt man sehr oft in die Bedrängnis, mit CDs und DVD’s zu jonglieren.</p>
<p>Ich habe meist mit folgende Betriebssystemen Kontakt: XP (Home, Pro), SUSE als Server, ab und an ne alte Windows 2K &hellip;.</p>
<p>Nun haben Datenträger die Eigenart Beine zu bekommen oder sie verstecken sich sehr gerne (Falsch eingelegt in den Ordner, oder manchmal auch gar nicht &hellip;.. ohne Worte)</p>
<p>Nun hatte ich in meiner hauptberuflichen Laufbahn mal nebenbei (wie bei Administratoren immer so vorausgesetzt) mit einem Projekt zu tun, bei welchem ich mal eben schnell knapp 40 Rechner installieren sollte und oben drauf noch einen Windows weiß nicht was für einen Server.
Das imponierende an diesem Server war, ich hatte innerhalb kürzester Zeit (glaube knapp ne Woche oder so) einen Windows-Server am Laufen und auch heraus bekommen, dass man wohl angeblich damit in der Lage sein soll zig PCs parallel zu installieren. Auch dieses hatte ich innerhalb von wenigen Stunden zum laufen bekommen (INET sei Dank, für all die vielen und schönen Informationen)</p>
<p>Jetzt kommt der Teil, der mir die Schuhe aus zog. Die oben erwähnten 40 Rechner hatte ich innerhalb von einem Tag samt benötigter MS-Software (also Office und Co.) mal so eben schnell installiert und war quasi dem Zeitplan um tagen Voraus. Ich habe nicht einmal für all diese PC’s, nach dem Vorbereiten des Servers, eine CD in die PCs stecken müssen. Diese Funktion im Windows Server nannte sich RIS ( Remote Installation System). Da ich danach nie wieder mit einem Windows-Server zu tun hatte, war ich irgendwie traurig, bei jedem Mal, wenn ich eine CD oder DVD zur Installation benutzen musste.</p>
<p>Nun habe ich Berufsbedingt (Netzwerkadministrator von ca. 600 schicken CISCO Geräten und zig Linux-Firewalls, Mail- und andere Server) weiterhin nicht viel mit Windows am Hut und bin eher aus der Linux Ecke.</p>
<p>Ich habe immer mal versucht über Boot-Images etc. eine Art RIS zurecht zu biegen, es aber nie in der Art und Weise geschafft, wie ich es damals auf dem Windows-Server sah. Es war damals schon egal, welche Hardware drin steckte, welche Netzwerkkarten benötigt wurden, einfach die Treiber hinterher kopieren, den neuen Rechner Booten, XP installieren das war’s. Wie auch immer, es verging ne Menge Zeit. Seit ich nun VDSL habe, habe ich auch einen PC-Basierenden Router am Laufen.</p>
<p>Das hat verschiedene Gründe:</p>
<ol>
<li>brauche ich unbedingt VPN</li>
<li>VPN auf fertigen Routern welche auch noch VDSL beherrschen (also VLAN-Taging von PPPoE-Paketen) kosten schon fast ein Vermögen.</li>
<li>hatte ich noch ein P4-Board von Asrock, ein 19&quot;-Schrank (Jepp, ich habe in meinem Haus eine strukturierte CAT7/CAT5 Verkabelung) und darin leer stehend ein PC-Gehäuse (6HE)</li>
</ol>
<p>Nun schnell den PC zusammen gebastelt, IPCOP drauf und schon hatte ich alles was ich brauchte. In diesem Schrank stehen auch 3 Conceptronic CH3SNAS &ldquo;gepimpt&rdquo; mit einem dicken Kondensator am Einschalter, damit die (von mir lieblich Würfel genannt) NAS, wenn sie über die Zeitschaltuhr eingeschaltet werden automatisch starten. Normalerweise müsste man beim Einschalten der Stromzufuhr jeden Würfel einzeln einschalten &hellip; Daher der Kondensator und die Zeitschaltuhren. Ein &ldquo;Würfel&rdquo; dient als Media-Streamer für meine Tochter, die anderen beiden sind einfach nur Backup-Server für ein entferntes Backup vom Kunden.</p>
<p><strong>Da dieses Backup sehr von den Würfeln abhängt, hier eine kurze Beschreibung</strong>:</p>
<p>Die Funktion sieht aus wie folgt: Da Bänderschreiben zu lange dauert und ab einer bestimmten Größe auch sehr teuer ist, habe ich mit meinen Kunden folgendes Konzept vorgeschlagen:</p>
<ul>
<li>Backup 1. Stufe: Ein NAS steht vor Ort, auf welchem entweder automatisiert (wenn ein Linux-File-Server vorhanden) eine DaSi erfolgt oder manuell auf einer Windows-Kiste angestossen.</li>
<li>Backup 2. Stufe: per VPN-Tunnel durchs Internet hindurch wird ein RSYNC angestoßen, welches nur die veränderten Dateien auf einem bei mir im Serverschrank stehenden &ldquo;Würfel&rdquo; schreibt.</li>
</ul>
<p>Wenn kein Linux-Server vor Ort steht, kommt ein Programm zur Ausführen welches ich mit <link rel=dns-prefetch href=//www.autoitscript.com /> <a href="http://www.autoitscript.com"
    title="AutoIt" 
     target="_blank" rel="nofollow noopener noreferrer" >
  AutoIt&nbsp;<svg xmlns="http://www.w3.org/2000/svg" class="icon" aria-hidden="true" focusable="false" viewBox="0 -128 512 640">
    <path d="M384 320c-17.67 0-32 14.33-32 32v96H64V160h96c17.67 0 32-14.32 32-32s-14.33-32-32-32L64 96c-35.35 0-64 28.65-64 64V448c0 35.34 28.65 64 64 64h288c35.35 0 64-28.66 64-64v-96C416 334.3 401.7 320 384 320zM488 0H352c-12.94 0-24.62 7.797-29.56 19.75c-4.969 11.97-2.219 25.72 6.938 34.88L370.8 96L169.4 297.4c-12.5 12.5-12.5 32.75 0 45.25C175.6 348.9 183.8 352 192 352s16.38-3.125 22.62-9.375L416 141.3l41.38 41.38c9.156 9.141 22.88 11.84 34.88 6.938C504.2 184.6 512 172.9 512 160V24C512 10.74 501.3 0 488 0z"/>
  </svg></a> geschrieben habe. Ich habe dort sehr einfach die Möglichkeit Abläufe zu programmieren. Abhängig von den Ergebnissen, lasse ich mir Emails mit entsprechender Wichtigkeitsstufe schicken. Das Ganze eingepackt in einer schönen und informativen Oberfläche freut den Kunden über die Einsparung von Zeit und Geld und erhöhter Sicherheit. Wenn , als kleines Plus, sich der Server/PC auch noch selber ausschaltet ist die Freude beim Kunden sehr groß.</p>
<p>Unter Linux ist das Ganze weniger optisch aufbereitet am Arbeiten und für den Kunden unsichtbar sowie komplett automatisch. Aber auch hier erhalte ich meine wichtigen Mails mit entweder dem blauen Ausrufezeichen (alles OK) oder dem roten Ausrufezeichen (da ist was schief gelaufen).</p>
<p>Es gibt, in Perl geschrieben, ein Programm, dass nennt sich &ldquo;mime-construct&rdquo; <link rel=dns-prefetch href=//search.cpan.org /> <a href="http://search.cpan.org/~rosch/mime-construct-1.9/mime-construct"
    title="hier" 
     target="_blank" rel="nofollow noopener noreferrer" >
  hier&nbsp;<svg xmlns="http://www.w3.org/2000/svg" class="icon" aria-hidden="true" focusable="false" viewBox="0 -128 512 640">
    <path d="M384 320c-17.67 0-32 14.33-32 32v96H64V160h96c17.67 0 32-14.32 32-32s-14.33-32-32-32L64 96c-35.35 0-64 28.65-64 64V448c0 35.34 28.65 64 64 64h288c35.35 0 64-28.66 64-64v-96C416 334.3 401.7 320 384 320zM488 0H352c-12.94 0-24.62 7.797-29.56 19.75c-4.969 11.97-2.219 25.72 6.938 34.88L370.8 96L169.4 297.4c-12.5 12.5-12.5 32.75 0 45.25C175.6 348.9 183.8 352 192 352s16.38-3.125 22.62-9.375L416 141.3l41.38 41.38c9.156 9.141 22.88 11.84 34.88 6.938C504.2 184.6 512 172.9 512 160V24C512 10.74 501.3 0 488 0z"/>
  </svg></a>. Vorausgesetzt, auf dem ausführenden Server (egal ob Liunx, unser schöner Würfel oder IPCOP/IPFIRE) ist der MTA (Mail Transfer Agent) meist Postfix, sendmail o.ä. schon soweit konfiguriert, dass Mails verschickt werden können, ist dieses Perl-Programm eine kleine Erleichterung, wenn es darum geht HTML-Mails per Script zu generieren und zu versenden. Zu installieren ganz einfach mit dem kleinen Perl-Helfer cpan &hellip;.</p>
<p>Nun hatte ich aus den oben genannten Gründen einige &ldquo;Würfel&rdquo; am Laufen. Alle, wie schon oben beschrieben, mit einem Kondensator gepimpt, zur automatischen Einschaltung zusammen mit dem Einschalten der Stromversorgung per 3,- € Schaltuhr, zum Stromsparen.</p>
<p><strong>Zu meinem Router</strong>:</p>
<p>Zu erst hatte ich eine Zeitlang <link rel=dns-prefetch href=//www.ipcop.org /> <a href="http://www.ipcop.org"
    title="IPCop" 
     target="_blank" rel="nofollow noopener noreferrer" >
  IPCop&nbsp;<svg xmlns="http://www.w3.org/2000/svg" class="icon" aria-hidden="true" focusable="false" viewBox="0 -128 512 640">
    <path d="M384 320c-17.67 0-32 14.33-32 32v96H64V160h96c17.67 0 32-14.32 32-32s-14.33-32-32-32L64 96c-35.35 0-64 28.65-64 64V448c0 35.34 28.65 64 64 64h288c35.35 0 64-28.66 64-64v-96C416 334.3 401.7 320 384 320zM488 0H352c-12.94 0-24.62 7.797-29.56 19.75c-4.969 11.97-2.219 25.72 6.938 34.88L370.8 96L169.4 297.4c-12.5 12.5-12.5 32.75 0 45.25C175.6 348.9 183.8 352 192 352s16.38-3.125 22.62-9.375L416 141.3l41.38 41.38c9.156 9.141 22.88 11.84 34.88 6.938C504.2 184.6 512 172.9 512 160V24C512 10.74 501.3 0 488 0z"/>
  </svg></a> installiert jetzt fahre ich IPFire, da letztere Distri mehr Funktionen zu bieten hatte, ist dies meine aktuelle Distri, welche ich gern benutze, da auch super stabil. IPFire &amp; IPCop haben beide eine sehr komfortable grafische Oberfläche welche per Browser sehr gut zu bedienen ist. Eine Funktion die mir von Anfang an ins Auge stach ist der DHCP-Teil. Im DHCP Server von beiden Systemen hat man nicht nur die Möglichkeit statische IP-Adressen zu vergeben und zu verwalten. Als kleines Plus so zu sagen, kann man hier noch TFTP-Funktionen konfigurieren. (Ich hatte ähnliches mal selber hingebogen mit einem Projekt was sich DIXIE nannte, an welchem ich auch eine Zeitlang aktiv mit programmiert hatte)</p>
<p>Was bedeutet:</p>
<p>Bootet ein PC mit aktivierter Bootfunktion der Netzwerkkarte über das Netzwerk, kann DHCP nicht nur eine IP-Adresse, Netzwerkmaske, Router-Adresse etc. übermitteln, sondern auch noch einen TFTP-Server mit angeben, welchen das bootende Gerät dann nach einer Bootbaren aber per DHCP vorgegebenen Datei befragt.</p>
<p>Wichtig ist, die Geräte müssen in der Lage sein und PXE (Pre-Boot Execution Environment) verstehen. Die neueren Rechner mit LAN-On-Board sowie einzelne Netzwerkkarten von den üblichen Herstellern können dieses in der Regel. Meist ist es nur eine kleine Einstellung im Bios, welches diese Funktion aktiviert (Achtung bei Aktivierung auch an die Boot-Reihenfolge der aktiven eingebauten Geräte im PC denken)</p>
<p>Im Falle von extra eingebauten Netzwerkkarten, bekommt man in der Regel für kurze Zeit während des Bootens eine Nachricht zu sehen, worin steht, wie man die Boot-Einstellungen der Netzwerkkarte erreichen kann. Meist wie beim BIOS-Setup irgend eine abenteuerliche Tasten-Kombination die simultan gedrückt werden muss. Ist die Lan-Boot Funktion per PXE aktiviert, steht einer Remote-Installation per RIS schon fast nichts mehr im Wege.</p>
<p>Nun wird es interessant! Durch Zufall bin ich auf folgende Adresse gestoßen: <link rel=dns-prefetch href=//oss.netfarm.it /> <a href="http://oss.netfarm.it/guides/"
    title="http://oss.netfarm.it/guides/" 
     target="_blank" rel="nofollow noopener noreferrer" >
  http://oss.netfarm.it/guides/&nbsp;<svg xmlns="http://www.w3.org/2000/svg" class="icon" aria-hidden="true" focusable="false" viewBox="0 -128 512 640">
    <path d="M384 320c-17.67 0-32 14.33-32 32v96H64V160h96c17.67 0 32-14.32 32-32s-14.33-32-32-32L64 96c-35.35 0-64 28.65-64 64V448c0 35.34 28.65 64 64 64h288c35.35 0 64-28.66 64-64v-96C416 334.3 401.7 320 384 320zM488 0H352c-12.94 0-24.62 7.797-29.56 19.75c-4.969 11.97-2.219 25.72 6.938 34.88L370.8 96L169.4 297.4c-12.5 12.5-12.5 32.75 0 45.25C175.6 348.9 183.8 352 192 352s16.38-3.125 22.62-9.375L416 141.3l41.38 41.38c9.156 9.141 22.88 11.84 34.88 6.938C504.2 184.6 512 172.9 512 160V24C512 10.74 501.3 0 488 0z"/>
  </svg></a></p>
<p>Dort steht beschrieben, wie man unter Linux einen von mir sehr lang ersehnten RIS-Server zum Laufen bringt. Auf allen Würfeln habe ich selbstverständlich das fun_plug nach der <a href="/nas/tutorials/ffp/"
    title="Anleitung von Uli" 
   >
  Anleitung von Uli</a> am Laufen. Da ich nie im Voraus weiß, was ich später einmal brauchen könnte, installiere ich meist alles, was ich so finden kann, so auch geschehen mit dem fun_plug!</p>
<p><strong>Nun habe ich alles, was ich so brauchen könnte um die RIS-Tools zu kompilieren und zu installieren</strong>. Nach dem ich alles laut den Anleitungen kompiliert, installiert und eingerichtet hatte, kann ich nun per grafischer Oberfläche mittels GFX-PXE-Boot mir quasi aussuchen, was ich auf dem nächsten PC installieren möchte. Ich habe zur Auswahl XP Pro, XP Home, W2K-Pro, Linux diverse Versionen. Wie schon beschrieben, DHCP + grafischer Oberfläche wird mir vom IPCOP / IPFIRE zur Verfügung gestellt.</p>
<p>Folgende Einträge sind dort sehr wichtig:</p>
<ol>
<li>MAC-Adresse vom PC</li>
<li>IP-Adresse vom PC</li>
<li>Ein Häkchen in &ldquo;Aktiviert&rdquo; setzen</li>
<li>Eventuell das Feld Anmerkung ausfüllen bei IPCOP hat man noch ein Feld für den PC-Namen, das wurde bei IPFIRE weggelassen und durch fortlaufende Standardeinträge ersetzt.</li>
<li>next-Server: hier kommt die IP-Adresse vom Würfel eingetragen</li>
<li>Filename: entweder &ldquo;pxelinux.0&rdquo; oder &ldquo;gpxelinux.0&rdquo; je nach belieben, welche Oberfläche einem besser gefällt.</li>
<li>root path: in meinem Falle: /mnt/HD_a2/REMINST</li>
</ol>
<p>Damit wäre der erste Schritt getan. Jetzt muss nur noch der Würfel entsprechend vorbereitet werden. IPCOP und IPFIRE, muss nicht unbedingt als Router eingesetzt werden, wenn man eine kleine stromsparende Intel kompatible Büchse hat, einfach Boot-CD herunter laden und halt nur die grüne Karte aktivieren und als rot irgend was auswählen. Wer sich selber herantraut, kann das Ganze auch auf dem Würfel zum Laufen bringen, nur warne ich davor, so eine passende dhcpd.conf Datei hat es in sich, nachträgliche Änderungen per Editor und ein Schreibfehler&hellip;. man sucht manchmal einige Zeit nach dem kleinen Fehler.</p>
<p>Meinen TFTP-Boot-Kram habe ich das Verzeichnis <code>/mnt/HD_a2/REMINST</code> auf dem Würfel angelegt. Für PXE-Infos und Tar-Balls, Wiki etc besucht mal <link rel=dns-prefetch href=//syslinux.zytor.com /> <a href="http://syslinux.zytor.com/wiki/index.php/The_Syslinux_Project"
    title="diese Seite" 
     target="_blank" rel="nofollow noopener noreferrer" >
  diese Seite&nbsp;<svg xmlns="http://www.w3.org/2000/svg" class="icon" aria-hidden="true" focusable="false" viewBox="0 -128 512 640">
    <path d="M384 320c-17.67 0-32 14.33-32 32v96H64V160h96c17.67 0 32-14.32 32-32s-14.33-32-32-32L64 96c-35.35 0-64 28.65-64 64V448c0 35.34 28.65 64 64 64h288c35.35 0 64-28.66 64-64v-96C416 334.3 401.7 320 384 320zM488 0H352c-12.94 0-24.62 7.797-29.56 19.75c-4.969 11.97-2.219 25.72 6.938 34.88L370.8 96L169.4 297.4c-12.5 12.5-12.5 32.75 0 45.25C175.6 348.9 183.8 352 192 352s16.38-3.125 22.62-9.375L416 141.3l41.38 41.38c9.156 9.141 22.88 11.84 34.88 6.938C504.2 184.6 512 172.9 512 160V24C512 10.74 501.3 0 488 0z"/>
  </svg></a>. Unter dem Verzeichnis <code>/mnt/HD_a2/REMINST</code> sind folgende Dateien:</p>
<ul>
<li><code>pxelinux.0</code> (PXE-Bootdatei, ASCII-Menu-Oberfläche)</li>
<li><code>gpxelinux.0</code> (PXE-Bootdatei, teils grafische Menu-Oberfläche)</li>
</ul>
<p>Dazu das Verzeichnis <em>pxelinux.conf</em> mit der Datei <em>default</em></p>
<p>Der Inhalt könnte wie folgt aussehen (im Falle von gpxelinux.0):</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span><span class="lnt">12
</span><span class="lnt">13
</span><span class="lnt">14
</span><span class="lnt">15
</span><span class="lnt">16
</span><span class="lnt">17
</span><span class="lnt">18
</span><span class="lnt">19
</span><span class="lnt">20
</span><span class="lnt">21
</span><span class="lnt">22
</span><span class="lnt">23
</span><span class="lnt">24
</span><span class="lnt">25
</span><span class="lnt">26
</span><span class="lnt">27
</span><span class="lnt">28
</span><span class="lnt">29
</span><span class="lnt">30
</span><span class="lnt">31
</span><span class="lnt">32
</span><span class="lnt">33
</span><span class="lnt">34
</span><span class="lnt">35
</span><span class="lnt">36
</span><span class="lnt">37
</span><span class="lnt">38
</span><span class="lnt">39
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-plaintext" data-lang="plaintext"><span class="line"><span class="cl">DEFAULT vesamenu.c32
</span></span><span class="line"><span class="cl">PROMPT 0
</span></span><span class="line"><span class="cl"># Menu Configuration
</span></span><span class="line"><span class="cl">MENU WIDTH 80
</span></span><span class="line"><span class="cl">MENU MARGIN 10
</span></span><span class="line"><span class="cl">MENU PASSWORDMARGIN 3
</span></span><span class="line"><span class="cl">MENU ROWS 12
</span></span><span class="line"><span class="cl">MENU TABMSGROW 18
</span></span><span class="line"><span class="cl">MENU CMDLINEROW 18
</span></span><span class="line"><span class="cl">MENU ENDROW 24
</span></span><span class="line"><span class="cl">MENU PASSWORDROW 11
</span></span><span class="line"><span class="cl">MENU TIMEOUTROW 20
</span></span><span class="line"><span class="cl">MENU TITLE -=*[ Mein Remote Boot Menu per PXE ]*=-
</span></span><span class="line"><span class="cl">TIMEOUT 1000
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">LABEL bootlocal
</span></span><span class="line"><span class="cl"> MENU DEFAULT
</span></span><span class="line"><span class="cl"> MENU LABEL von eigener Festplatte booten
</span></span><span class="line"><span class="cl"> LOCALBOOT 0
</span></span><span class="line"><span class="cl">LABEL rescue
</span></span><span class="line"><span class="cl"> MENU LABEL Rescuedisc
</span></span><span class="line"><span class="cl"> KERNEL kernel32
</span></span><span class="line"><span class="cl"> APPEND vga=normal initrd=rootfs.cgz root=/dev/ram0 rw
</span></span><span class="line"><span class="cl">LABEL win2k
</span></span><span class="line"><span class="cl"> MENU LABEL Windows 2000
</span></span><span class="line"><span class="cl"> KERNEL w2k.0
</span></span><span class="line"><span class="cl">LABEL winxp
</span></span><span class="line"><span class="cl"> MENU LABEL Windows XP Professional
</span></span><span class="line"><span class="cl"> KERNEL winxp.0
</span></span><span class="line"><span class="cl">LABEL winhp
</span></span><span class="line"><span class="cl"> MENU LABEL Windows XP Home
</span></span><span class="line"><span class="cl"> KERNEL winxh.0
</span></span><span class="line"><span class="cl">LABEL win2k3
</span></span><span class="line"><span class="cl"> MENU LABEL Windows 2003
</span></span><span class="line"><span class="cl"> KERNEL w2k3.0
</span></span><span class="line"><span class="cl">LABEL suse-11.3-32bit
</span></span><span class="line"><span class="cl"> MENU LABEL Open SuSE 11.3 32Bit
</span></span><span class="line"><span class="cl"> KERNEL suse-11.3-linux
</span></span><span class="line"><span class="cl"> APPEND VGA=ask initrd=suse-11.3-initrd install=ftp://192.168.9.99
</span></span></code></pre></td></tr></table>
</div>
</div><p>Nun unter <code>/mnt/HD_a2/REMINST</code> den RIS-Kram von <link rel=dns-prefetch href=//oss.netfarm.it /> <a href="http://oss.netfarm.it/guides/"
    title="hier" 
     target="_blank" rel="nofollow noopener noreferrer" >
  hier&nbsp;<svg xmlns="http://www.w3.org/2000/svg" class="icon" aria-hidden="true" focusable="false" viewBox="0 -128 512 640">
    <path d="M384 320c-17.67 0-32 14.33-32 32v96H64V160h96c17.67 0 32-14.32 32-32s-14.33-32-32-32L64 96c-35.35 0-64 28.65-64 64V448c0 35.34 28.65 64 64 64h288c35.35 0 64-28.66 64-64v-96C416 334.3 401.7 320 384 320zM488 0H352c-12.94 0-24.62 7.797-29.56 19.75c-4.969 11.97-2.219 25.72 6.938 34.88L370.8 96L169.4 297.4c-12.5 12.5-12.5 32.75 0 45.25C175.6 348.9 183.8 352 192 352s16.38-3.125 22.62-9.375L416 141.3l41.38 41.38c9.156 9.141 22.88 11.84 34.88 6.938C504.2 184.6 512 172.9 512 160V24C512 10.74 501.3 0 488 0z"/>
  </svg></a> kompilieren und nach <em>/mnt/HD_a2/REMINST/binlsrv</em> installieren. Achtung, es wird auch der Python-Interpreter aus dem fun_plug benötigt!</p>
<p>Unter <code>/mnt/HD_a2/REMINST</code> liegen meine Verzeichnisse wie folgt:</p>
<ul>
<li><strong>inf</strong>: hier kommen alle benötigten .inf Dateien von den Netzwerkkarten hinein</li>
<li><strong>sys-files</strong>: hier kommen von den Treibern alle .sys, .cat, .com, .dll etc. Dateien rein</li>
</ul>
<p>Nun das Programm infparser.py aus dem binlsrv-Verzeichniss den Cache nach Anleitung vom Programm aufbauen lassen.</p>
<p>Ich lasse per /ffp/start/tftp den TFTP-Server als auch den binlsrv (die kompilierte binäre Version) auf dem Würfel laufen und habe das Start-Script wie folgt angepasst:</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span><span class="lnt">12
</span><span class="lnt">13
</span><span class="lnt">14
</span><span class="lnt">15
</span><span class="lnt">16
</span><span class="lnt">17
</span><span class="lnt">18
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="cp">#!/ffp/bin/sh
</span></span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># PROVIDE: in.tftpd</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">. /ffp/etc/ffp.subr
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="nv">name</span><span class="o">=</span><span class="s2">&#34;in.tftpd&#34;</span>
</span></span><span class="line"><span class="cl"><span class="nv">command</span><span class="o">=</span><span class="s2">&#34;/ffp/sbin/in.tftpd&#34;</span>
</span></span><span class="line"><span class="cl"><span class="nv">tftpd_flags</span><span class="o">=</span><span class="s2">&#34;-l -s /mnt/HD_a2/REMINST&#34;</span>
</span></span><span class="line"><span class="cl"><span class="nv">in_tftpd_flags</span><span class="o">=</span><span class="s2">&#34;-l -s /mnt/HD_a2/REMINST&#34;</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="nv">tftpd_flags</span><span class="o">=</span><span class="s2">&#34;-l -s /nfsroot&#34;</span>
</span></span><span class="line"><span class="cl"><span class="nv">in_tftpd_flags</span><span class="o">=</span><span class="s2">&#34;-l -s /nfsroot&#34;</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="nb">cd</span> /mnt/HD_a2/REMINST/binlsrv
</span></span><span class="line"><span class="cl">./binlsrv <span class="p">&amp;</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">run_rc_command <span class="s2">&#34;</span><span class="nv">$1</span><span class="s2">&#34;</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>Gestripped ist der Server nur knappe 12Kb groß und frist nicht zuviel RAM und Ressourcen, daher hatte ich mich entschieden, die binäre Variante laufen zu lassen an Stelle der Python basierenden Variante. Na klar hätte ich ein eigenes Script schreiben können, aber die Nervosität, ob so etwas denn wirklich funktionieren könnte, hat mich zu einer noch heute anhaltenden &ldquo;quick and dirty&rdquo; Lösung hinreißen lassen. Wie heißt es so schön: Ein Provisorium hat meist länger Bestand als &hellip;&hellip;.</p>
<p>Dann der Test &hellip;. es funktioniert. Ich kann nun selbst PCs ohne irgendwelche Wechselträger Laufwerke wie CD’s oder DVD’s mit der Installation von XP oder W2K, Linux beglücken. Beim Kunden vor Ort, erspart man sich sehr viel Zeit mit so einer RIS-Umgebung! Zusätzlich kann man .sif Dateien nach seinen Bedürfnissen anpassen.</p>
<p>Um nicht jedes Mal die Windows-Update Dateien aus dem Internet wo möglich noch mit einer &ldquo;Klecker-Leitung&rdquo; herunter zu laden, gibt es die Möglichkeit von der Zeitschrift CT das Programm ctupdate zu installieren. Das Programm kann für alle Windows-Versionen, alle Office-Versionen in jeder Sprache und für jede Plattform (32bit, 64bit) alle benötigten Patche herunterladen und in einem Verzeichnis zur Verfügung stellen. Früher von &lsquo;CT und dem Autor zusammen entwickelt, jetzt vom Autor Torsten Wittrock in Eigenregie weiter entwickelt kann man sich das Paket <link rel=dns-prefetch href=//www.wsusoffline.net /> <a href="http://www.wsusoffline.net/"
    title="hier" 
     target="_blank" rel="nofollow noopener noreferrer" >
  hier&nbsp;<svg xmlns="http://www.w3.org/2000/svg" class="icon" aria-hidden="true" focusable="false" viewBox="0 -128 512 640">
    <path d="M384 320c-17.67 0-32 14.33-32 32v96H64V160h96c17.67 0 32-14.32 32-32s-14.33-32-32-32L64 96c-35.35 0-64 28.65-64 64V448c0 35.34 28.65 64 64 64h288c35.35 0 64-28.66 64-64v-96C416 334.3 401.7 320 384 320zM488 0H352c-12.94 0-24.62 7.797-29.56 19.75c-4.969 11.97-2.219 25.72 6.938 34.88L370.8 96L169.4 297.4c-12.5 12.5-12.5 32.75 0 45.25C175.6 348.9 183.8 352 192 352s16.38-3.125 22.62-9.375L416 141.3l41.38 41.38c9.156 9.141 22.88 11.84 34.88 6.938C504.2 184.6 512 172.9 512 160V24C512 10.74 501.3 0 488 0z"/>
  </svg></a> herunterladen und installieren. Im ausgepackten Archiv unter sh findet man die entsprechenden Scripts für die nächtlichen Downloads.</p>
<p>Etwas ist hier zu beachten: Office 6 wird von der aktuellen Version nicht mehr unterstützt. Man kann sich aber noch die ältere Version (6.2) vom CT bzw. Heise Server besorgen in ein eigenes Verzeichnis installieren und nur den älteren kram einmal herunter laden und dann aufheben, z.B.: für Installationsarbeiten an älteren Office-Versionen.
Da hier keine weiteren Sicherheitsupdates von Microsoft zur Verfügung gestellt werden.</p>
<p>Die aktuelle Version von ctupdate bzw. heute wsusoffline schließt auch aktuelle Windows Versionen mit ein. Bisheriger Nachteil: leider lässt das Programm keine Installationen von einem Netzlaufwerk zu. Sprich man muss sich aus dem Archiv und den herunter geladenen Patches das komplette Verzeichnis &ldquo;client&rdquo; auf den PC Kopieren. Mit einem Giga-Netzwerk dauert es nur einpaar Minuten. Das Programm UpdateInstaller.exe bietet eine grafische Oberfläche wo man automatische Reboots und einiges mehr einstellen kann. Ansonsten stellt das Programm selber fest, welche Patches schon installiert wurde und installiert nur die Benötigten nach.</p>
<p>Es ist schon sehr zeitsparend, als jedes Mal auf den Autoinstaller von Windows zu warten, oder per Web-Interface sich den kram mühsam herunter zu laden. Zu den Patches zählen übrigens auch die Service-Packs &hellip;.. Und das für Windows als auch Office! Einige Programme und so weit ich mich erinnere auch ctupdate bzw. wsusoffline brauchen kleinere Module welche nachinstalliert werden müssen. Diese Module werden meist im Zusammenhang mit den Interpretern Perl oder php benötigt und lassen sich per cpan für perl bzw. pear für php sehr einfach nach installieren. Auch erkennen diese &ldquo;Modul-Verwalter&rdquo; für php oder perl fehlende Abhängigkeiten und teilen einem dies entweder mit oder fragen gleich danach ob diese auch gleich installiert werden sollen.</p>
<p>Die Wiki Seiten der von mir benutzten Programme und Projekte sind alle sehr gut beschrieben. Zwar in Englisch, aber trotz dem sehr gut. Die meisten Projekte bieten für weitere Fragen oder Probleme auch Foren oder Mailinglisten an. Wie schon eingangs beschrieben, habe ich von dem fun_plug alle Pakete installiert und daher nur wenig zu tun gehabt mit Nachinstallationen für alle oben genannten Programme und Projekte.</p>
<p><strong>Alles in Allem</strong>, kann man sagen, dass so ein keiner Würfel, einem &ldquo;Kleinkrauter&rdquo; das Leben doch sehr vereinfachen und im IT-Alltag sehr behilflich sein kann.</p>
<p>Unter dem schwarzen Deckel steckt weit aus mehr als &ldquo;nur&rdquo; ein Datei- und Streaming-Server !</p>
<p>Er, der kleine Schwarze Würfel, kann zu Hause oder auch in einer kleinen Firma die Anschaffung von teurem Equipment ersparen. Ich habe den Kauf bis heute nicht bereut und möchte an dieser Stelle allen Projektteilnehmern, Programmierern und ganz speziell Uli meinen Dank aussprechen ohne Derer es solch tolle Möglichkeiten nie geben würde!</p>
]]></content:encoded>
    </item>
  </channel>
</rss>
