<?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>Fun_plug on Ulis Notizen</title>
    <link>https://wolf-u.li/tag/fun_plug/</link>
    <description>Recent content in Fun_plug on Ulis Notizen</description>
    <generator>Hugo</generator>
    <language>de</language>
    <copyright>Copyright 2006-CURRENTYEAR Uli Wolf - All rights reserved</copyright>
    <lastBuildDate>Fri, 07 Jul 2017 09:23:25 +0700</lastBuildDate>
    <atom:link href="https://wolf-u.li/tag/fun_plug/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Lüftersteuerung für das Conceptronic CH3SNAS</title>
      
      
      <link>https://wolf-u.li/lueftersteuerung-fuer-das-conceptronic-ch3snas/</link>
      <pubDate>Tue, 13 Nov 2007 13:08:24 +1300</pubDate>
      <guid>https://wolf-u.li/lueftersteuerung-fuer-das-conceptronic-ch3snas/</guid>
      <description>&lt;p&gt;Diese Steuerung funktioniert, ist aber eigentlich veraltet, da nun das fanctl existiert. Hierzu gibt es einen entsprechenden &lt;a href=&#34;https://wolf-u.li/1946/lueftersteuerung-mittels-fonz-fanctl-fuer-das-conceptronic-ch3snas-bzw-d-link-dns-323/&#34;
    title=&#34;Beitrag&#34; 
   &gt;
  Beitrag&lt;/a&gt;.
Leider schaltet sich der interne Lüfter des &lt;a href=&#34;https://wolf-u.li/tag/ch3snas/&#34;
    title=&#34;CH3SNAS&#34; 
   &gt;
  CH3SNAS&lt;/a&gt; trotz des Energiemanagements der Festplatten nicht ab und läuft daher stetig leise vor sich hin. Dieses &amp;ldquo;Feature&amp;rdquo; (&amp;ldquo;It&amp;rsquo;s not a Bug, it&amp;rsquo;s a Feature&amp;rdquo;) bringt mehrere Dinge mit sich. Zum einen habe ich dadurch eine stetige Lärmquelle in meinem Zimmer, die Nachts doch ein wenig nerven kann. Zum anderen spart die Abschaltung des Lüfters wieder einige Watt. Desweiteren wird so die Lebensdauer des Lüfters deutlich erhöht.&lt;/p&gt;</description>
      
         <content:encoded><![CDATA[<p>Diese Steuerung funktioniert, ist aber eigentlich veraltet, da nun das fanctl existiert. Hierzu gibt es einen entsprechenden <a href="/1946/lueftersteuerung-mittels-fonz-fanctl-fuer-das-conceptronic-ch3snas-bzw-d-link-dns-323/"
    title="Beitrag" 
   >
  Beitrag</a>.
Leider schaltet sich der interne Lüfter des <a href="/tag/ch3snas/"
    title="CH3SNAS" 
   >
  CH3SNAS</a> trotz des Energiemanagements der Festplatten nicht ab und läuft daher stetig leise vor sich hin. Dieses &ldquo;Feature&rdquo; (&ldquo;It&rsquo;s not a Bug, it&rsquo;s a Feature&rdquo;) bringt mehrere Dinge mit sich. Zum einen habe ich dadurch eine stetige Lärmquelle in meinem Zimmer, die Nachts doch ein wenig nerven kann. Zum anderen spart die Abschaltung des Lüfters wieder einige Watt. Desweiteren wird so die Lebensdauer des Lüfters deutlich erhöht.</p>
<p>Diese Anleitung bedingt, dass das <a href="/759/fun_plug-fuer-das-conceptronic-ch3snas/"
    title="fun_plug (Artikel)" 
   >
  fun_plug (Artikel)</a> korrekt installiert wurde. Zudem weise ich darauf hin, dass ich nicht für eventuelle Schäden, Datenverluste oder andere Probleme haften werden. Das Verwenden dieses Artikels geschieht auf eigene Gefahr!
Bitte beachtet meine <a href="/1648/warnung-vor-firmware-release-candidates-fuer-das-conceptronic-ch3snas/"
    title="Hinweise" 
   >
  Hinweise</a> zu Release Candidates der Firmware 1.04!</p>
<p>Zur Erklärung des Codes der Lüftersteuerung:
Zunächst wird der alte Lüftercontroller gekillt, da dieser sonst dazwischenfunken würde. Darunter werden die Genzwerte konfiguriert. Mein Lüfter schaltet sich ab einer Temperatur von 96 Grad Fahrenheit ein und dreht dann mit 2700rpm. Im Bereich bis 110 Grad Fahrenheit dreht dann der Lüfter im Geschwindigkeitsbereich von 2700rpm bis 3500rpm (Maximal sind 6000rpm <link rel=dns-prefetch href=//dns323.kood.org /> <a href="http://dns323.kood.org/hardware:fan"
    title="möglich" 
     target="_blank" rel="nofollow noopener noreferrer" >
  möglich&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>). Wenn die Festplatten sich ausschalten, wird geprüft ob das NAS bereits unter der Temperatur1 liegt (d.h. hier unter 96°F). Wenn ja, wird die Idle-Drehzahl gesetzt, die 0 ist, womit der Lüfter stehen bleibt. Wenn nein, dann dreht der Lüfter auf RPM1 (hier 2700rpm) weiter, bis das NAS kühl genug ist.
Eine Alternative, die nicht Festplattenabhängig ist, findet sich unter den folgenden drei Skripten.</p>
<p>Details zur <a href="#einbindung#einbindung"
    title="Einbindung und Installation" 
   >
  Einbindung und Installation</a> finden sich unter den Skripten.</p>
<h2 id="code-für-eine-festplatte-ohne-logging">Code für eine Festplatte OHNE LOGGING</h2>
<p>Das Skript wurde auf eine Festplatte (hier &ldquo;HD1&rdquo;, für &ldquo;HD0&rdquo; einfach die Bezeichnungen ändern) ausgerichtet, es werden keine Aktivitäten geloggt:</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><span class="lnt">42
</span><span class="lnt">43
</span><span class="lnt">44
</span><span class="lnt">45
</span><span class="lnt">46
</span><span class="lnt">47
</span><span class="lnt">48
</span><span class="lnt">49
</span><span class="lnt">50
</span><span class="lnt">51
</span><span class="lnt">52
</span><span class="lnt">53
</span><span class="lnt">54
</span><span class="lnt">55
</span><span class="lnt">56
</span><span class="lnt">57
</span><span class="lnt">58
</span><span class="lnt">59
</span><span class="lnt">60
</span><span class="lnt">61
</span><span class="lnt">62
</span><span class="lnt">63
</span><span class="lnt">64
</span><span class="lnt">65
</span><span class="lnt">66
</span><span class="lnt">67
</span><span class="lnt">68
</span><span class="lnt">69
</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">#!/bin/sh
</span></span></span><span class="line"><span class="cl"><span class="nv">PATH</span><span class="o">=</span>/usr/bin:/bin:/usr/sbin:/sbin:/mnt/HD_a2/fun_plug.d/bin/
</span></span><span class="line"><span class="cl"><span class="c1"># Converts Fahrenheit to Celcius</span>
</span></span><span class="line"><span class="cl">f2c<span class="o">()</span> <span class="o">{</span>
</span></span><span class="line"><span class="cl"> /bin/echo <span class="sb">`</span>expr <span class="se">\(</span> <span class="se">\(</span> <span class="nv">$1</span> - <span class="m">32</span> <span class="se">\)</span> <span class="se">\*</span> <span class="m">10</span> + <span class="m">9</span> <span class="se">\)</span> <span class="se">\/</span> 18<span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="o">}</span>
</span></span><span class="line"><span class="cl"><span class="c1"># Converts Celcius to Fahrenheit</span>
</span></span><span class="line"><span class="cl">c2f<span class="o">()</span> <span class="o">{</span>
</span></span><span class="line"><span class="cl"> /bin/echo <span class="sb">`</span>expr <span class="se">\(</span> <span class="nv">$1</span> <span class="se">\*</span> <span class="m">9</span> <span class="se">\)</span> <span class="se">\/</span> <span class="m">5</span> <span class="se">\+</span> 32<span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="o">}</span>
</span></span><span class="line"><span class="cl"><span class="c1"># Kill the old fan controller</span>
</span></span><span class="line"><span class="cl"><span class="nv">PID</span><span class="o">=</span><span class="k">$(</span>/bin/pidof fancontrol<span class="k">)</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> <span class="o">[</span> -n <span class="s2">&#34;</span><span class="nv">$PID</span><span class="s2">&#34;</span> <span class="o">]</span>
</span></span><span class="line"><span class="cl"><span class="k">then</span>
</span></span><span class="line"><span class="cl"> <span class="nb">kill</span> -9 <span class="nv">$PID</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span><span class="line"><span class="cl"><span class="nv">update_interval</span><span class="o">=</span><span class="m">60</span>
</span></span><span class="line"><span class="cl"><span class="c1">#T1 and T2 in fahrenheit - convert if necessary using c2f function</span>
</span></span><span class="line"><span class="cl"><span class="nv">T1</span><span class="o">=</span><span class="m">96</span>
</span></span><span class="line"><span class="cl"><span class="nv">T2</span><span class="o">=</span><span class="m">110</span>
</span></span><span class="line"><span class="cl"><span class="nv">IDLERPM</span><span class="o">=</span><span class="m">0</span>
</span></span><span class="line"><span class="cl"><span class="nv">RPM1</span><span class="o">=</span><span class="m">2700</span>
</span></span><span class="line"><span class="cl"><span class="nv">RPM2</span><span class="o">=</span><span class="m">3500</span>
</span></span><span class="line"><span class="cl"><span class="k">while</span> <span class="o">[</span> <span class="m">1</span> <span class="o">]</span>
</span></span><span class="line"><span class="cl"><span class="k">do</span>
</span></span><span class="line"><span class="cl"> <span class="c1">#Find out current temperature</span>
</span></span><span class="line"><span class="cl"> <span class="nv">T</span><span class="o">=</span><span class="sb">`</span>temperature g 0<span class="sb">`</span>
</span></span><span class="line"><span class="cl"> <span class="nv">T</span><span class="o">=</span><span class="si">${</span><span class="nv">T</span><span class="p">##*=</span><span class="si">}</span>
</span></span><span class="line"><span class="cl"> <span class="nv">C</span><span class="o">=</span><span class="sb">`</span>temperature g <span class="m">0</span> <span class="p">|</span> grep -i -c centigrade <span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="c1"># Convert to Fahrenheit if output is in Celcius</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> <span class="o">[</span> <span class="nv">$C</span> -gt <span class="m">0</span> <span class="o">]</span>
</span></span><span class="line"><span class="cl"><span class="k">then</span>
</span></span><span class="line"><span class="cl"> <span class="nv">C</span><span class="o">=</span><span class="nv">$T</span>
</span></span><span class="line"><span class="cl"> <span class="nv">F</span><span class="o">=</span><span class="k">$(</span>c2f <span class="nv">$C</span><span class="k">)</span>
</span></span><span class="line"><span class="cl"> <span class="nv">T</span><span class="o">=</span><span class="nv">$F</span>
</span></span><span class="line"><span class="cl"><span class="k">else</span>
</span></span><span class="line"><span class="cl"> <span class="nv">F</span><span class="o">=</span><span class="nv">$T</span>
</span></span><span class="line"><span class="cl"> <span class="nv">C</span><span class="o">=</span><span class="k">$(</span>f2c <span class="nv">$F</span><span class="k">)</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span><span class="line"><span class="cl"> <span class="c1">#Search dmesg for hard drive messages</span>
</span></span><span class="line"><span class="cl"> <span class="nv">DRIVE1_dmesg</span><span class="o">=</span><span class="sb">`</span>/bin/dmesg <span class="p">|</span> /bin/grep HD1 <span class="p">|</span> /bin/tail -1<span class="sb">`</span>
</span></span><span class="line"><span class="cl"> <span class="nv">DRIVE1_awake</span><span class="o">=</span><span class="sb">`</span>/bin/dmesg <span class="p">|</span> /bin/grep HD1 <span class="p">|</span> /bin/tail -1 <span class="p">|</span> /bin/grep awake<span class="sb">`</span>
</span></span><span class="line"><span class="cl"> <span class="c1"># Calculate new fanspeed, depending on if drive is awake or not</span>
</span></span><span class="line"><span class="cl"> <span class="k">if</span> <span class="o">[</span> -n <span class="s2">&#34;</span><span class="si">${</span><span class="nv">DRIVE1_dmesg</span><span class="si">}</span><span class="s2">&#34;</span> <span class="o">]</span><span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl"> <span class="c1"># True if dmesg contains status for drive</span>
</span></span><span class="line"><span class="cl"> <span class="k">if</span> <span class="o">[</span> -n <span class="s2">&#34;</span><span class="si">${</span><span class="nv">DRIVE1_awake</span><span class="si">}</span><span class="s2">&#34;</span> <span class="o">]</span><span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl"> <span class="c1"># True if any of the drives are awake, keep fan running</span>
</span></span><span class="line"><span class="cl"> <span class="nv">newRPM</span><span class="o">=</span><span class="sb">`</span>expr <span class="se">\(</span> <span class="se">\(</span> <span class="nv">$T2</span> <span class="se">\&lt;</span> <span class="nv">$F</span> <span class="se">\)</span> <span class="se">\*</span> <span class="nv">$RPM2</span> <span class="se">\)</span> <span class="se">\|</span> <span class="se">\(</span> <span class="se">\(</span> <span class="nv">$RPM1</span> + <span class="se">\(</span> <span class="nv">$RPM2</span> - <span class="nv">$RPM1</span> <span class="se">\)</span> <span class="se">\*</span> <span class="se">\(</span> <span class="nv">$F</span> - <span class="nv">$T1</span> <span class="se">\)</span> <span class="se">\/</span> <span class="se">\(</span> <span class="nv">$T2</span> - <span class="nv">$T1</span> <span class="se">\)</span> <span class="se">\)</span> <span class="se">\&amp;</span> <span class="se">\(</span> <span class="nv">$F</span> <span class="se">\&gt;</span><span class="o">=</span> <span class="nv">$T1</span> <span class="se">\)</span> <span class="se">\)</span><span class="sb">`</span>
</span></span><span class="line"><span class="cl"> <span class="k">else</span>
</span></span><span class="line"><span class="cl"> <span class="c1"># None of the drives is awake, now check if Temperature is above $T1</span>
</span></span><span class="line"><span class="cl"> <span class="k">if</span> <span class="o">[</span> <span class="nv">$T</span> -gt <span class="nv">$T1</span> <span class="o">]</span><span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl"> <span class="c1">#Keep the fan running until the NAS has cooled down</span>
</span></span><span class="line"><span class="cl"> <span class="nv">newRPM</span><span class="o">=</span><span class="nv">$RPM1</span>
</span></span><span class="line"><span class="cl"> <span class="k">else</span>
</span></span><span class="line"><span class="cl"> <span class="c1">#set speed to IDLE speed</span>
</span></span><span class="line"><span class="cl"> <span class="nv">newRPM</span><span class="o">=</span><span class="nv">$IDLERPM</span>
</span></span><span class="line"><span class="cl"> <span class="k">fi</span>
</span></span><span class="line"><span class="cl"> <span class="k">fi</span>
</span></span><span class="line"><span class="cl"> <span class="k">else</span>
</span></span><span class="line"><span class="cl"> <span class="c1"># dmesg does not yet contain the status the drive</span>
</span></span><span class="line"><span class="cl"> <span class="c1"># (it has probably never powered down), keep fan running</span>
</span></span><span class="line"><span class="cl"> <span class="nv">newRPM</span><span class="o">=</span><span class="sb">`</span>expr <span class="se">\(</span> <span class="se">\(</span> <span class="nv">$T2</span> <span class="se">\&lt;</span> <span class="nv">$F</span> <span class="se">\)</span> <span class="se">\*</span> <span class="nv">$RPM2</span> <span class="se">\)</span> <span class="se">\|</span> <span class="se">\(</span> <span class="se">\(</span> <span class="nv">$RPM1</span> + <span class="se">\(</span> <span class="nv">$RPM2</span> - <span class="nv">$RPM1</span> <span class="se">\)</span> <span class="se">\*</span> <span class="se">\(</span> <span class="nv">$F</span> - <span class="nv">$T1</span> <span class="se">\)</span> <span class="se">\/</span> <span class="se">\(</span> <span class="nv">$T2</span> - <span class="nv">$T1</span> <span class="se">\)</span> <span class="se">\)</span> <span class="se">\&amp;</span> <span class="se">\(</span> <span class="nv">$F</span> <span class="se">\&gt;</span><span class="o">=</span> <span class="nv">$T1</span> <span class="se">\)</span> <span class="se">\)</span><span class="sb">`</span>
</span></span><span class="line"><span class="cl"> <span class="k">fi</span>
</span></span><span class="line"><span class="cl"> <span class="c1"># Set the new fan speed</span>
</span></span><span class="line"><span class="cl"> fanspeed w <span class="nv">$newRPM</span>
</span></span><span class="line"><span class="cl"> <span class="c1"># Write some more to logfile</span>
</span></span><span class="line"><span class="cl"> <span class="c1"># Wait for next cycle</span>
</span></span><span class="line"><span class="cl"> /bin/sleep <span class="nv">$update_interval</span>
</span></span><span class="line"><span class="cl"><span class="k">done</span>
</span></span></code></pre></td></tr></table>
</div>
</div><h2 id="code-für-2-festplatten-mit-logging">Code für 2 Festplatten MIT LOGGING</h2>
<p>Das Skript wurde auf auf beide Festplatten ausgerichtet, es werden alle Aktivitäten geloggt und der aktuelle Status hinterlegt:</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><span class="lnt">42
</span><span class="lnt">43
</span><span class="lnt">44
</span><span class="lnt">45
</span><span class="lnt">46
</span><span class="lnt">47
</span><span class="lnt">48
</span><span class="lnt">49
</span><span class="lnt">50
</span><span class="lnt">51
</span><span class="lnt">52
</span><span class="lnt">53
</span><span class="lnt">54
</span><span class="lnt">55
</span><span class="lnt">56
</span><span class="lnt">57
</span><span class="lnt">58
</span><span class="lnt">59
</span><span class="lnt">60
</span><span class="lnt">61
</span><span class="lnt">62
</span><span class="lnt">63
</span><span class="lnt">64
</span><span class="lnt">65
</span><span class="lnt">66
</span><span class="lnt">67
</span><span class="lnt">68
</span><span class="lnt">69
</span><span class="lnt">70
</span><span class="lnt">71
</span><span class="lnt">72
</span><span class="lnt">73
</span><span class="lnt">74
</span><span class="lnt">75
</span><span class="lnt">76
</span><span class="lnt">77
</span><span class="lnt">78
</span><span class="lnt">79
</span><span class="lnt">80
</span><span class="lnt">81
</span><span class="lnt">82
</span><span class="lnt">83
</span><span class="lnt">84
</span><span class="lnt">85
</span><span class="lnt">86
</span><span class="lnt">87
</span><span class="lnt">88
</span><span class="lnt">89
</span><span class="lnt">90
</span><span class="lnt">91
</span><span class="lnt">92
</span><span class="lnt">93
</span><span class="lnt">94
</span><span class="lnt">95
</span><span class="lnt">96
</span><span class="lnt">97
</span><span class="lnt">98
</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">#!/bin/sh
</span></span></span><span class="line"><span class="cl"><span class="nv">PATH</span><span class="o">=</span>/usr/bin:/bin:/usr/sbin:/sbin
</span></span><span class="line"><span class="cl"><span class="c1"># Converts Fahrenheit to Celcius</span>
</span></span><span class="line"><span class="cl">f2c<span class="o">()</span> <span class="o">{</span>
</span></span><span class="line"><span class="cl"> /bin/echo <span class="sb">`</span>expr <span class="se">\(</span> <span class="se">\(</span> <span class="nv">$1</span> - <span class="m">32</span> <span class="se">\)</span> <span class="se">\*</span> <span class="m">10</span> + <span class="m">9</span> <span class="se">\)</span> <span class="se">\/</span> 18<span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="o">}</span>
</span></span><span class="line"><span class="cl"><span class="c1"># Converts Celcius to Fahrenheit</span>
</span></span><span class="line"><span class="cl">c2f<span class="o">()</span> <span class="o">{</span>
</span></span><span class="line"><span class="cl"> /bin/echo <span class="sb">`</span>expr <span class="se">\(</span> <span class="nv">$1</span> <span class="se">\*</span> <span class="m">9</span> <span class="se">\)</span> <span class="se">\/</span> <span class="m">5</span> <span class="se">\+</span> 32<span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="o">}</span>
</span></span><span class="line"><span class="cl"><span class="c1"># Kill the old fan controller</span>
</span></span><span class="line"><span class="cl"><span class="nv">PID</span><span class="o">=</span><span class="k">$(</span>/bin/pidof fancontrol<span class="k">)</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> <span class="o">[</span> -n <span class="s2">&#34;</span><span class="nv">$PID</span><span class="s2">&#34;</span> <span class="o">]</span>
</span></span><span class="line"><span class="cl"> <span class="k">then</span>
</span></span><span class="line"><span class="cl"> <span class="nb">kill</span> -9 <span class="nv">$PID</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span><span class="line"><span class="cl"><span class="nv">update_interval</span><span class="o">=</span><span class="m">60</span>
</span></span><span class="line"><span class="cl"><span class="c1">#T1 and T2 in fahrenheit - convert if necessary using c2f function</span>
</span></span><span class="line"><span class="cl"><span class="nv">T1</span><span class="o">=</span><span class="m">96</span>
</span></span><span class="line"><span class="cl"><span class="nv">T2</span><span class="o">=</span><span class="m">110</span>
</span></span><span class="line"><span class="cl"><span class="nv">IDLERPM</span><span class="o">=</span><span class="m">0</span>
</span></span><span class="line"><span class="cl"><span class="nv">RPM1</span><span class="o">=</span><span class="m">2700</span>
</span></span><span class="line"><span class="cl"><span class="nv">RPM2</span><span class="o">=</span><span class="m">3500</span>
</span></span><span class="line"><span class="cl"><span class="nv">LOGDIR</span><span class="o">=</span>/log
</span></span><span class="line"><span class="cl"><span class="nv">LOGFILE</span><span class="o">=</span><span class="si">${</span><span class="nv">LOGDIR</span><span class="si">}</span>/fan.txt
</span></span><span class="line"><span class="cl"><span class="nv">STATFILE</span><span class="o">=</span><span class="si">${</span><span class="nv">LOGDIR</span><span class="si">}</span>/fanstat.txt
</span></span><span class="line"><span class="cl">mkdir -p <span class="si">${</span><span class="nv">LOGDIR</span><span class="si">}</span>
</span></span><span class="line"><span class="cl"><span class="k">while</span> <span class="o">[</span> <span class="m">1</span> <span class="o">]</span>
</span></span><span class="line"><span class="cl"><span class="k">do</span>
</span></span><span class="line"><span class="cl"> <span class="c1">#Find out current temperature</span>
</span></span><span class="line"><span class="cl"> <span class="nv">T</span><span class="o">=</span><span class="sb">`</span>temperature g 0<span class="sb">`</span>
</span></span><span class="line"><span class="cl"> <span class="nv">T</span><span class="o">=</span><span class="si">${</span><span class="nv">T</span><span class="p">##*=</span><span class="si">}</span>
</span></span><span class="line"><span class="cl"> <span class="nv">C</span><span class="o">=</span><span class="sb">`</span>temperature g <span class="m">0</span> <span class="p">|</span> grep -i -c centigrade <span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="c1"># Convert to Fahrenheit if output is in Celcius</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> <span class="o">[</span> <span class="nv">$C</span> -gt <span class="m">0</span> <span class="o">]</span>
</span></span><span class="line"><span class="cl"><span class="k">then</span>
</span></span><span class="line"><span class="cl"> <span class="nv">C</span><span class="o">=</span><span class="nv">$T</span>
</span></span><span class="line"><span class="cl"> <span class="nv">F</span><span class="o">=</span><span class="k">$(</span>c2f <span class="nv">$C</span><span class="k">)</span>
</span></span><span class="line"><span class="cl"> <span class="nv">T</span><span class="o">=</span><span class="nv">$F</span>
</span></span><span class="line"><span class="cl"><span class="k">else</span>
</span></span><span class="line"><span class="cl"> <span class="nv">F</span><span class="o">=</span><span class="nv">$T</span>
</span></span><span class="line"><span class="cl"> <span class="nv">C</span><span class="o">=</span><span class="k">$(</span>f2c <span class="nv">$F</span><span class="k">)</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span><span class="line"><span class="cl"><span class="c1">#Search dmesg for hard drive messages</span>
</span></span><span class="line"><span class="cl"><span class="nv">DRIVE0_dmesg</span><span class="o">=</span><span class="sb">`</span>/bin/dmesg <span class="p">|</span> /bin/grep HD0 <span class="p">|</span> /bin/tail -1<span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="nv">DRIVE1_dmesg</span><span class="o">=</span><span class="sb">`</span>/bin/dmesg <span class="p">|</span> /bin/grep HD1 <span class="p">|</span> /bin/tail -1<span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="nv">DRIVE0_awake</span><span class="o">=</span><span class="sb">`</span>/bin/dmesg <span class="p">|</span> /bin/grep HD0 <span class="p">|</span> /bin/tail -1 <span class="p">|</span> /bin/grep awake<span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="nv">DRIVE1_awake</span><span class="o">=</span><span class="sb">`</span>/bin/dmesg <span class="p">|</span> /bin/grep HD1 <span class="p">|</span> /bin/tail -1 <span class="p">|</span> /bin/grep awake<span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="c1"># Write some info to logfile</span>
</span></span><span class="line"><span class="cl">/bin/echo <span class="s2">&#34;###############################################################&#34;</span>&gt; <span class="nv">$LOGFILE</span>
</span></span><span class="line"><span class="cl">/bin/echo <span class="sb">`</span>date<span class="sb">`</span>&gt;&gt; <span class="nv">$LOGFILE</span>
</span></span><span class="line"><span class="cl">/bin/echo <span class="s2">&#34;Temp in Fahrenheit: </span><span class="nv">$F</span><span class="s2">&#34;</span> &gt;&gt; <span class="nv">$LOGFILE</span>
</span></span><span class="line"><span class="cl">/bin/echo <span class="s2">&#34;Temp in Celcius: </span><span class="nv">$C</span><span class="s2">&#34;</span> &gt;&gt; <span class="nv">$LOGFILE</span>
</span></span><span class="line"><span class="cl"><span class="c1"># Calculate new fanspeed, depending on if drives are awake or not</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> <span class="o">[</span> -n <span class="s2">&#34;</span><span class="si">${</span><span class="nv">DRIVE0_dmesg</span><span class="si">}</span><span class="s2">&#34;</span> <span class="o">]</span> <span class="o">&amp;&amp;</span> <span class="o">[</span> -n <span class="s2">&#34;</span><span class="si">${</span><span class="nv">DRIVE1_dmesg</span><span class="si">}</span><span class="s2">&#34;</span> <span class="o">]</span><span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl"><span class="c1"># True if dmesg contains status for both drives</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> <span class="o">[</span> -n <span class="s2">&#34;</span><span class="si">${</span><span class="nv">DRIVE0_awake</span><span class="si">}</span><span class="s2">&#34;</span> <span class="o">]</span> <span class="o">||</span> <span class="o">[</span> -n <span class="s2">&#34;</span><span class="si">${</span><span class="nv">DRIVE1_awake</span><span class="si">}</span><span class="s2">&#34;</span> <span class="o">]</span><span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl"><span class="c1"># True if any of the drives are awake, keep fan running</span>
</span></span><span class="line"><span class="cl"><span class="nv">newRPM</span><span class="o">=</span><span class="sb">`</span>expr <span class="se">\(</span> <span class="se">\(</span> <span class="nv">$T2</span> <span class="se">\&lt;</span> <span class="nv">$F</span> <span class="se">\)</span> <span class="se">\*</span> <span class="nv">$RPM2</span> <span class="se">\)</span> <span class="se">\|</span> <span class="se">\(</span> <span class="se">\(</span> <span class="nv">$RPM1</span> + <span class="se">\(</span> <span class="nv">$RPM2</span> - <span class="nv">$RPM1</span> <span class="se">\)</span> <span class="se">\*</span> <span class="se">\(</span> <span class="nv">$F</span> - <span class="nv">$T1</span> <span class="se">\)</span> <span class="se">\/</span> <span class="se">\(</span> <span class="nv">$T2</span> - <span class="nv">$T1</span> <span class="se">\)</span> <span class="se">\)</span> <span class="se">\&amp;</span> <span class="se">\(</span> <span class="nv">$F</span> <span class="se">\&gt;</span><span class="o">=</span> <span class="nv">$T1</span> <span class="se">\)</span> <span class="se">\)</span><span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> <span class="o">[</span> -n <span class="s2">&#34;</span><span class="si">${</span><span class="nv">DRIVE0_awake</span><span class="si">}</span><span class="s2">&#34;</span> <span class="o">]</span><span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl"><span class="c1"># True if the first drive is awake</span>
</span></span><span class="line"><span class="cl">/bin/echo <span class="s2">&#34;The first drive is awake&#34;</span>&gt;&gt; <span class="nv">$LOGFILE</span>
</span></span><span class="line"><span class="cl"><span class="k">else</span>
</span></span><span class="line"><span class="cl">/bin/echo <span class="s2">&#34;The first drive is hibernating&#34;</span>&gt;&gt; <span class="nv">$LOGFILE</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> <span class="o">[</span> -n <span class="s2">&#34;</span><span class="si">${</span><span class="nv">DRIVE1_awake</span><span class="si">}</span><span class="s2">&#34;</span> <span class="o">]</span><span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl"><span class="c1"># True if the second drive is awake</span>
</span></span><span class="line"><span class="cl">/bin/echo <span class="s2">&#34;The second drive is awake&#34;</span>&gt;&gt; <span class="nv">$LOGFILE</span>
</span></span><span class="line"><span class="cl"><span class="k">else</span>
</span></span><span class="line"><span class="cl">/bin/echo <span class="s2">&#34;The second drive is hibernating&#34;</span>&gt;&gt; <span class="nv">$LOGFILE</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span><span class="line"><span class="cl"><span class="k">else</span>
</span></span><span class="line"><span class="cl"> <span class="c1"># None of the drives is awake, now check if Temperature is above $T1</span>
</span></span><span class="line"><span class="cl"> <span class="k">if</span> <span class="o">[</span> <span class="nv">$T</span> -gt <span class="nv">$T1</span> <span class="o">]</span><span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl"> <span class="c1">#Keep the fan running until the NAS has cooled down</span>
</span></span><span class="line"><span class="cl"> <span class="nv">newRPM</span><span class="o">=</span><span class="nv">$RPM1</span>
</span></span><span class="line"><span class="cl"> /bin/echo <span class="s2">&#34;Both drives are hibernating. Temperature still to high to switch fan off&#34;</span>&gt;&gt; <span class="nv">$LOGFILE</span>
</span></span><span class="line"><span class="cl"> <span class="k">else</span>
</span></span><span class="line"><span class="cl"> <span class="c1">#set speed to IDLE speed</span>
</span></span><span class="line"><span class="cl"> <span class="nv">newRPM</span><span class="o">=</span><span class="nv">$IDLERPM</span>
</span></span><span class="line"><span class="cl"> /bin/echo <span class="s2">&#34;Both drives are hibernating. Setting IDLE speed for fan&#34;</span>&gt;&gt; <span class="nv">$LOGFILE</span>
</span></span><span class="line"><span class="cl"> <span class="k">fi</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span><span class="line"><span class="cl"><span class="k">else</span>
</span></span><span class="line"><span class="cl"><span class="c1"># dmesg does not yet contain the status for both drives</span>
</span></span><span class="line"><span class="cl"><span class="c1"># (at least one of the drives has never been powered down), keep fan running</span>
</span></span><span class="line"><span class="cl"><span class="nv">newRPM</span><span class="o">=</span><span class="sb">`</span>expr <span class="se">\(</span> <span class="se">\(</span> <span class="nv">$T2</span> <span class="se">\&lt;</span> <span class="nv">$F</span> <span class="se">\)</span> <span class="se">\*</span> <span class="nv">$RPM2</span> <span class="se">\)</span> <span class="se">\|</span> <span class="se">\(</span> <span class="se">\(</span> <span class="nv">$RPM1</span> + <span class="se">\(</span> <span class="nv">$RPM2</span> - <span class="nv">$RPM1</span> <span class="se">\)</span> <span class="se">\*</span> <span class="se">\(</span> <span class="nv">$F</span> - <span class="nv">$T1</span> <span class="se">\)</span> <span class="se">\/</span> <span class="se">\(</span> <span class="nv">$T2</span> - <span class="nv">$T1</span> <span class="se">\)</span> <span class="se">\)</span> <span class="se">\&amp;</span> <span class="se">\(</span> <span class="nv">$F</span> <span class="se">\&gt;</span><span class="o">=</span> <span class="nv">$T1</span> <span class="se">\)</span> <span class="se">\)</span><span class="sb">`</span>
</span></span><span class="line"><span class="cl">/bin/echo <span class="s2">&#34;Could not determine status for both drives, one of them is probably awake&#34;</span>&gt;&gt; <span class="nv">$LOGFILE</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span><span class="line"><span class="cl">/bin/echo <span class="sb">`</span>date<span class="sb">`</span> <span class="nv">$C</span> <span class="nv">$F</span> <span class="sb">`</span>fanspeed g<span class="sb">`</span> <span class="nv">$newRPM</span>&gt;&gt; <span class="nv">$STATFILE</span>
</span></span><span class="line"><span class="cl"><span class="c1"># Set the new fan speed</span>
</span></span><span class="line"><span class="cl">fanspeed w <span class="nv">$newRPM</span>
</span></span><span class="line"><span class="cl"><span class="c1"># Write some more to logfile</span>
</span></span><span class="line"><span class="cl">/bin/echo <span class="s2">&#34;Fanspeed: &#34;</span> <span class="nv">$newRPM</span> <span class="s2">&#34;rpm&#34;</span>&gt;&gt; <span class="nv">$LOGFILE</span>
</span></span><span class="line"><span class="cl">/bin/echo <span class="s2">&#34;###############################################################&#34;</span>&gt;&gt; <span class="nv">$LOGFILE</span>
</span></span><span class="line"><span class="cl"><span class="c1"># Wait for next cycle</span>
</span></span><span class="line"><span class="cl">/bin/sleep <span class="nv">$update_interval</span>
</span></span><span class="line"><span class="cl"><span class="k">done</span>
</span></span></code></pre></td></tr></table>
</div>
</div><h2 id="code-für-2-festplatten-ohne-logging">Code für 2 Festplatten OHNE LOGGING</h2>
<p>Das Skript wurde auf auf beide Festplatten ausgerichtet, es werden keine Aktivitäten geloggt</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><span class="lnt">42
</span><span class="lnt">43
</span><span class="lnt">44
</span><span class="lnt">45
</span><span class="lnt">46
</span><span class="lnt">47
</span><span class="lnt">48
</span><span class="lnt">49
</span><span class="lnt">50
</span><span class="lnt">51
</span><span class="lnt">52
</span><span class="lnt">53
</span><span class="lnt">54
</span><span class="lnt">55
</span><span class="lnt">56
</span><span class="lnt">57
</span><span class="lnt">58
</span><span class="lnt">59
</span><span class="lnt">60
</span><span class="lnt">61
</span><span class="lnt">62
</span><span class="lnt">63
</span><span class="lnt">64
</span><span class="lnt">65
</span><span class="lnt">66
</span><span class="lnt">67
</span><span class="lnt">68
</span><span class="lnt">69
</span><span class="lnt">70
</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">#!/bin/sh
</span></span></span><span class="line"><span class="cl"><span class="nv">PATH</span><span class="o">=</span>/usr/bin:/bin:/usr/sbin:/sbin
</span></span><span class="line"><span class="cl"><span class="c1"># Converts Fahrenheit to Celcius</span>
</span></span><span class="line"><span class="cl">f2c<span class="o">()</span> <span class="o">{</span>
</span></span><span class="line"><span class="cl"> /bin/echo <span class="sb">`</span>expr <span class="se">\(</span> <span class="se">\(</span> <span class="nv">$1</span> - <span class="m">32</span> <span class="se">\)</span> <span class="se">\*</span> <span class="m">10</span> + <span class="m">9</span> <span class="se">\)</span> <span class="se">\/</span> 18<span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="o">}</span>
</span></span><span class="line"><span class="cl"><span class="c1"># Converts Celcius to Fahrenheit</span>
</span></span><span class="line"><span class="cl">c2f<span class="o">()</span> <span class="o">{</span>
</span></span><span class="line"><span class="cl"> /bin/echo <span class="sb">`</span>expr <span class="se">\(</span> <span class="nv">$1</span> <span class="se">\*</span> <span class="m">9</span> <span class="se">\)</span> <span class="se">\/</span> <span class="m">5</span> <span class="se">\+</span> 32<span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="o">}</span>
</span></span><span class="line"><span class="cl"><span class="c1"># Kill the old fan controller</span>
</span></span><span class="line"><span class="cl"><span class="nv">PID</span><span class="o">=</span><span class="k">$(</span>/bin/pidof fancontrol<span class="k">)</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> <span class="o">[</span> -n <span class="s2">&#34;</span><span class="nv">$PID</span><span class="s2">&#34;</span> <span class="o">]</span>
</span></span><span class="line"><span class="cl"> <span class="k">then</span>
</span></span><span class="line"><span class="cl"> <span class="nb">kill</span> -9 <span class="nv">$PID</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span><span class="line"><span class="cl"><span class="nv">update_interval</span><span class="o">=</span><span class="m">60</span>
</span></span><span class="line"><span class="cl"><span class="c1">#T1 and T2 in fahrenheit - convert if necessary using c2f function</span>
</span></span><span class="line"><span class="cl"><span class="nv">T1</span><span class="o">=</span><span class="m">96</span>
</span></span><span class="line"><span class="cl"><span class="nv">T2</span><span class="o">=</span><span class="m">110</span>
</span></span><span class="line"><span class="cl"><span class="nv">IDLERPM</span><span class="o">=</span><span class="m">0</span>
</span></span><span class="line"><span class="cl"><span class="nv">RPM1</span><span class="o">=</span><span class="m">2700</span>
</span></span><span class="line"><span class="cl"><span class="nv">RPM2</span><span class="o">=</span><span class="m">3500</span>
</span></span><span class="line"><span class="cl"><span class="k">while</span> <span class="o">[</span> <span class="m">1</span> <span class="o">]</span>
</span></span><span class="line"><span class="cl"><span class="k">do</span>
</span></span><span class="line"><span class="cl"> <span class="c1">#Find out current temperature</span>
</span></span><span class="line"><span class="cl"> <span class="nv">T</span><span class="o">=</span><span class="sb">`</span>temperature g 0<span class="sb">`</span>
</span></span><span class="line"><span class="cl"> <span class="nv">T</span><span class="o">=</span><span class="si">${</span><span class="nv">T</span><span class="p">##*=</span><span class="si">}</span>
</span></span><span class="line"><span class="cl"> <span class="nv">C</span><span class="o">=</span><span class="sb">`</span>temperature g <span class="m">0</span> <span class="p">|</span> grep -i -c centigrade <span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="c1"># Convert to Fahrenheit if output is in Celcius</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> <span class="o">[</span> <span class="nv">$C</span> -gt <span class="m">0</span> <span class="o">]</span>
</span></span><span class="line"><span class="cl"><span class="k">then</span>
</span></span><span class="line"><span class="cl"> <span class="nv">C</span><span class="o">=</span><span class="nv">$T</span>
</span></span><span class="line"><span class="cl"> <span class="nv">F</span><span class="o">=</span><span class="k">$(</span>c2f <span class="nv">$C</span><span class="k">)</span>
</span></span><span class="line"><span class="cl"> <span class="nv">T</span><span class="o">=</span><span class="nv">$F</span>
</span></span><span class="line"><span class="cl"><span class="k">else</span>
</span></span><span class="line"><span class="cl"> <span class="nv">F</span><span class="o">=</span><span class="nv">$T</span>
</span></span><span class="line"><span class="cl"> <span class="nv">C</span><span class="o">=</span><span class="k">$(</span>f2c <span class="nv">$F</span><span class="k">)</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span><span class="line"><span class="cl"><span class="c1">#Search dmesg for hard drive messages</span>
</span></span><span class="line"><span class="cl"><span class="nv">DRIVE0_dmesg</span><span class="o">=</span><span class="sb">`</span>/bin/dmesg <span class="p">|</span> /bin/grep HD0 <span class="p">|</span> /bin/tail -1<span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="nv">DRIVE1_dmesg</span><span class="o">=</span><span class="sb">`</span>/bin/dmesg <span class="p">|</span> /bin/grep HD1 <span class="p">|</span> /bin/tail -1<span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="nv">DRIVE0_awake</span><span class="o">=</span><span class="sb">`</span>/bin/dmesg <span class="p">|</span> /bin/grep HD0 <span class="p">|</span> /bin/tail -1 <span class="p">|</span> /bin/grep awake<span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="nv">DRIVE1_awake</span><span class="o">=</span><span class="sb">`</span>/bin/dmesg <span class="p">|</span> /bin/grep HD1 <span class="p">|</span> /bin/tail -1 <span class="p">|</span> /bin/grep awake<span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="c1"># Calculate new fanspeed, depending on if drives are awake or not</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> <span class="o">[</span> -n <span class="s2">&#34;</span><span class="si">${</span><span class="nv">DRIVE0_dmesg</span><span class="si">}</span><span class="s2">&#34;</span> <span class="o">]</span> <span class="o">&amp;&amp;</span> <span class="o">[</span> -n <span class="s2">&#34;</span><span class="si">${</span><span class="nv">DRIVE1_dmesg</span><span class="si">}</span><span class="s2">&#34;</span> <span class="o">]</span><span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl"><span class="c1"># True if dmesg contains status for both drives</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> <span class="o">[</span> -n <span class="s2">&#34;</span><span class="si">${</span><span class="nv">DRIVE0_awake</span><span class="si">}</span><span class="s2">&#34;</span> <span class="o">]</span> <span class="o">||</span> <span class="o">[</span> -n <span class="s2">&#34;</span><span class="si">${</span><span class="nv">DRIVE1_awake</span><span class="si">}</span><span class="s2">&#34;</span> <span class="o">]</span><span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl"><span class="c1"># True if any of the drives are awake, keep fan running</span>
</span></span><span class="line"><span class="cl"><span class="nv">newRPM</span><span class="o">=</span><span class="sb">`</span>expr <span class="se">\(</span> <span class="se">\(</span> <span class="nv">$T2</span> <span class="se">\&lt;</span> <span class="nv">$F</span> <span class="se">\)</span> <span class="se">\*</span> <span class="nv">$RPM2</span> <span class="se">\)</span> <span class="se">\|</span> <span class="se">\(</span> <span class="se">\(</span> <span class="nv">$RPM1</span> + <span class="se">\(</span> <span class="nv">$RPM2</span> - <span class="nv">$RPM1</span> <span class="se">\)</span> <span class="se">\*</span> <span class="se">\(</span> <span class="nv">$F</span> - <span class="nv">$T1</span> <span class="se">\)</span> <span class="se">\/</span> <span class="se">\(</span> <span class="nv">$T2</span> - <span class="nv">$T1</span> <span class="se">\)</span> <span class="se">\)</span> <span class="se">\&amp;</span> <span class="se">\(</span> <span class="nv">$F</span> <span class="se">\&gt;</span><span class="o">=</span> <span class="nv">$T1</span> <span class="se">\)</span> <span class="se">\)</span><span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="k">else</span>
</span></span><span class="line"><span class="cl"> <span class="c1"># None of the drives is awake, now check if Temperature is above $T1</span>
</span></span><span class="line"><span class="cl"> <span class="k">if</span> <span class="o">[</span> <span class="nv">$T</span> -gt <span class="nv">$T1</span> <span class="o">]</span><span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl"> <span class="c1">#Keep the fan running until the NAS has cooled down</span>
</span></span><span class="line"><span class="cl"> <span class="nv">newRPM</span><span class="o">=</span><span class="nv">$RPM1</span>
</span></span><span class="line"><span class="cl"> <span class="k">else</span>
</span></span><span class="line"><span class="cl"> <span class="c1">#set speed to IDLE speed</span>
</span></span><span class="line"><span class="cl"> <span class="nv">newRPM</span><span class="o">=</span><span class="nv">$IDLERPM</span>
</span></span><span class="line"><span class="cl"> <span class="k">fi</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span><span class="line"><span class="cl"><span class="k">else</span>
</span></span><span class="line"><span class="cl"><span class="c1"># dmesg does not yet contain the status for both drives</span>
</span></span><span class="line"><span class="cl"><span class="c1"># (at least one of the drives has never been powered down), keep fan running</span>
</span></span><span class="line"><span class="cl"><span class="nv">newRPM</span><span class="o">=</span><span class="sb">`</span>expr <span class="se">\(</span> <span class="se">\(</span> <span class="nv">$T2</span> <span class="se">\&lt;</span> <span class="nv">$F</span> <span class="se">\)</span> <span class="se">\*</span> <span class="nv">$RPM2</span> <span class="se">\)</span> <span class="se">\|</span> <span class="se">\(</span> <span class="se">\(</span> <span class="nv">$RPM1</span> + <span class="se">\(</span> <span class="nv">$RPM2</span> - <span class="nv">$RPM1</span> <span class="se">\)</span> <span class="se">\*</span> <span class="se">\(</span> <span class="nv">$F</span> - <span class="nv">$T1</span> <span class="se">\)</span> <span class="se">\/</span> <span class="se">\(</span> <span class="nv">$T2</span> - <span class="nv">$T1</span> <span class="se">\)</span> <span class="se">\)</span> <span class="se">\&amp;</span> <span class="se">\(</span> <span class="nv">$F</span> <span class="se">\&gt;</span><span class="o">=</span> <span class="nv">$T1</span> <span class="se">\)</span> <span class="se">\)</span><span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span><span class="line"><span class="cl"><span class="c1"># Set the new fan speed</span>
</span></span><span class="line"><span class="cl">fanspeed w <span class="nv">$newRPM</span>
</span></span><span class="line"><span class="cl"><span class="c1"># Wait for next cycle</span>
</span></span><span class="line"><span class="cl">/bin/sleep <span class="nv">$update_interval</span>
</span></span><span class="line"><span class="cl"><span class="k">done</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>Leider funktionieren die Lüftersteuerungen bei einem RAID-System wohl nicht, da es keine Meldungen über die Abschaltung der Festplatten gibt (Ich fahre leider kein RAID, daher kann ich das noch nicht beurteilen). Ich habe daher eine zusätzliche Lüftersteuerung entwickelt, die den Lüfter unterhalb einer bestimmten Systemtemperatur abschaltet. Diese habe ich momentan auf 30°C festgesetzt. Darüber hinaus dreht der Lüfter mit 2700rpm bis 3500rpm (je nach Temperatur).</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><span class="lnt">42
</span><span class="lnt">43
</span><span class="lnt">44
</span><span class="lnt">45
</span><span class="lnt">46
</span><span class="lnt">47
</span><span class="lnt">48
</span><span class="lnt">49
</span><span class="lnt">50
</span><span class="lnt">51
</span><span class="lnt">52
</span><span class="lnt">53
</span><span class="lnt">54
</span><span class="lnt">55
</span><span class="lnt">56
</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">#!/bin/sh
</span></span></span><span class="line"><span class="cl"><span class="nv">PATH</span><span class="o">=</span>/usr/bin:/bin:/usr/sbin:/sbin
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Converts Fahrenheit to Celcius</span>
</span></span><span class="line"><span class="cl">f2c<span class="o">()</span> <span class="o">{</span>
</span></span><span class="line"><span class="cl"> /bin/echo <span class="k">$((</span> <span class="o">((</span><span class="nv">$1</span> <span class="o">-</span> <span class="m">32</span><span class="o">)</span> <span class="o">*</span> <span class="m">10</span> <span class="o">+</span> <span class="m">9</span><span class="o">)</span> <span class="o">/</span> <span class="m">18</span> <span class="k">))</span>
</span></span><span class="line"><span class="cl"><span class="o">}</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Converts Celcius to Fahrenheit</span>
</span></span><span class="line"><span class="cl">c2f<span class="o">()</span> <span class="o">{</span>
</span></span><span class="line"><span class="cl"> /bin/echo <span class="k">$((</span> <span class="o">(</span><span class="nv">$1</span> <span class="o">*</span> <span class="m">9</span><span class="o">)</span> <span class="o">/</span> <span class="m">5</span> <span class="o">+</span> <span class="m">32</span> <span class="k">))</span>
</span></span><span class="line"><span class="cl"><span class="o">}</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Kill the old fan controller</span>
</span></span><span class="line"><span class="cl"><span class="nv">PID</span><span class="o">=</span><span class="k">$(</span>/bin/pidof fancontrol<span class="k">)</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> <span class="o">[</span> -n <span class="s2">&#34;</span><span class="nv">$PID</span><span class="s2">&#34;</span> <span class="o">]</span>
</span></span><span class="line"><span class="cl"> <span class="k">then</span>
</span></span><span class="line"><span class="cl"> <span class="nb">kill</span> -9 <span class="nv">$PID</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Checking interval in seconds</span>
</span></span><span class="line"><span class="cl"><span class="nv">update_interval</span><span class="o">=</span><span class="m">60</span>
</span></span><span class="line"><span class="cl"><span class="c1"># T1 and T2 in fahrenheit - convert if necessary using c2f function</span>
</span></span><span class="line"><span class="cl"><span class="c1"># Example: &#34;T1=$(c2f 30)&#34; will convert 30°C to Fahrenheit</span>
</span></span><span class="line"><span class="cl"><span class="nv">T1</span><span class="o">=</span><span class="m">86</span>
</span></span><span class="line"><span class="cl"><span class="nv">T2</span><span class="o">=</span><span class="m">110</span>
</span></span><span class="line"><span class="cl"><span class="c1"># Idle-RPM. If you want the Fan to switch of, set this to zero</span>
</span></span><span class="line"><span class="cl"><span class="nv">IDLERPM</span><span class="o">=</span><span class="m">0</span>
</span></span><span class="line"><span class="cl"><span class="c1"># Linearly interpolate the fan-speed between RPM1 and RPM2</span>
</span></span><span class="line"><span class="cl"><span class="nv">RPM1</span><span class="o">=</span><span class="m">2700</span>
</span></span><span class="line"><span class="cl"><span class="nv">RPM2</span><span class="o">=</span><span class="m">3500</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Now loop, check status every $update_interval seconds</span>
</span></span><span class="line"><span class="cl"><span class="k">while</span> <span class="o">[</span> <span class="m">1</span> <span class="o">]</span>
</span></span><span class="line"><span class="cl"><span class="k">do</span>
</span></span><span class="line"><span class="cl"> <span class="c1"># Find out current temperature</span>
</span></span><span class="line"><span class="cl"> <span class="nv">T</span><span class="o">=</span><span class="sb">`</span>temperature g 0<span class="sb">`</span>
</span></span><span class="line"><span class="cl"> <span class="nv">T</span><span class="o">=</span><span class="si">${</span><span class="nv">T</span><span class="p">##*=</span><span class="si">}</span>
</span></span><span class="line"><span class="cl"> <span class="nv">C</span><span class="o">=</span><span class="sb">`</span>temperature g <span class="m">0</span> <span class="p">|</span> grep -i -c centigrade <span class="sb">`</span>
</span></span><span class="line"><span class="cl"> <span class="c1"># Convert to Fahrenheit if output is in Celcius</span>
</span></span><span class="line"><span class="cl"> <span class="k">if</span> <span class="o">[</span> <span class="nv">$C</span> -gt <span class="m">0</span> <span class="o">]</span>
</span></span><span class="line"><span class="cl"> <span class="k">then</span>
</span></span><span class="line"><span class="cl"> <span class="nv">T</span><span class="o">=</span><span class="k">$(</span>c2f <span class="nv">$T</span><span class="k">)</span>
</span></span><span class="line"><span class="cl"> <span class="k">fi</span>
</span></span><span class="line"><span class="cl"> <span class="c1"># Check if Temperature is above $T1</span>
</span></span><span class="line"><span class="cl"> <span class="k">if</span> <span class="o">[</span> <span class="nv">$T</span> -gt <span class="nv">$T1</span> <span class="o">]</span><span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl"> <span class="c1"># Keep the fan running</span>
</span></span><span class="line"><span class="cl"> <span class="nv">newRPM</span><span class="o">=</span><span class="k">$((</span> <span class="o">(</span><span class="nv">$RPM1</span> <span class="o">+</span> <span class="o">(</span><span class="nv">$RPM2</span> <span class="o">-</span> <span class="nv">$RPM1</span><span class="o">)</span> <span class="o">*</span> <span class="o">(</span><span class="nv">$T</span> <span class="o">-</span> <span class="nv">$T1</span><span class="o">)</span> <span class="o">/</span> <span class="o">(</span><span class="nv">$T2</span> <span class="o">-</span> <span class="nv">$T1</span><span class="k">))</span> <span class="o">))</span>
</span></span><span class="line"><span class="cl"> <span class="k">else</span>
</span></span><span class="line"><span class="cl"> <span class="c1"># Temp below T1 -&gt; set fan to IDLE-Speed</span>
</span></span><span class="line"><span class="cl"> <span class="nv">newRPM</span><span class="o">=</span><span class="nv">$IDLERPM</span>
</span></span><span class="line"><span class="cl"> <span class="k">fi</span>
</span></span><span class="line"><span class="cl"> fanspeed w <span class="nv">$newRPM</span>
</span></span><span class="line"><span class="cl"> <span class="c1"># wait for next cycle</span>
</span></span><span class="line"><span class="cl"> sleep <span class="nv">$update_interval</span>
</span></span><span class="line"><span class="cl"><span class="k">done</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>Das Script wid nicht im Ordner start abgelegt, sondern muss extra gestartet werden. Wenn das Skript einfach nur im Ordner start liegt, klappt die Steuerung nicht!</p>
<p>Die Installation kann stark vereinfachen, indem man das Skript direkt auf das NAS herunterlädt. Zunächst muss man sich einloggen, anschließend muss man je nach Festplattenanzahl den gewünschten Befehl eingeben:</p>
<ul>
<li>Code für eine Festplatte ohne Logging:
<code>wget http://wolf-u.li/u/167 -O /ffp/lueftersteuerung.sh</code></li>
<li>Code für zwei Festplatten mit Logging:
<code>wget http://wolf-u.li/u/169 -O /ffp/lueftersteuerung.sh</code></li>
<li>Code für zwei Festplatten ohne Logging:
<code>wget http://wolf-u.li/u/168 -O /ffp/lueftersteuerung.sh</code></li>
<li>Code für Temperaturabhängige Steuerung ohne Logging:
<code>wget http://wolf-u.li/u/170 -O /ffp/lueftersteuerung.sh</code></li>
</ul>
<p>Anschließend muss immer noch folgendes ausgeführt werden, sofern noch keine Lüftersteuerung installiert war. Kommt beispielsweise nur eine Festplatte hinzu oder wurden die untenstehenden Befehle bereits in das fun_plug eingefügt, sollten diese Befehle nicht mehr ausgeführt 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></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="nb">echo</span> <span class="s2">&#34;cp /ffp/lueftersteuerung.sh /sbin&#34;</span> &gt;&gt; /mnt/HD_a2/fun_plug
</span></span><span class="line"><span class="cl"><span class="nb">echo</span> <span class="s2">&#34;/sbin/lueftersteuerung.sh &gt;/dev/null 2&gt;/dev/null /dev/null 2&gt;/dev/null&#34;</span> &gt;&gt; /mnt/HD_a2/fun_plug
</span></span></code></pre></td></tr></table>
</div>
</div><p><strong>Wahlweise</strong> kann man übrigens auch den &ldquo;old-school&rdquo;-Weg gehen und es manuell ablegen:</p>
<p>Im folgenden Beispiel wird das Skript als lueftersteuerung.sh abgespeichert und über das fun_plug gestartet, daher wird folgendes am Ende des fun_plugs eingefügt:</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">cp /pfad/zur/lueftersteuerung.sh /sbin
</span></span><span class="line"><span class="cl">/sbin/lueftersteuerung.sh &gt;/dev/null 2&gt;/dev/null /dev/null 2&gt;/dev/null
</span></span></code></pre></td></tr></table>
</div>
</div><p>Bitte /pfad/zur/ auf den korrekten Pfad anpassen.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Webserver lighttpd mit php5.2 auf dem Conceptronic CH3SNAS installieren</title>
      
      
      <link>https://wolf-u.li/webserver-lighttpd-mit-php52-auf-dem-conceptronic-ch3snas-installieren/</link>
      <pubDate>Tue, 13 Nov 2007 14:05:11 +1300</pubDate>
      <guid>https://wolf-u.li/webserver-lighttpd-mit-php52-auf-dem-conceptronic-ch3snas-installieren/</guid>
      <description>&lt;p&gt;Diese Anleitung bezieht sich auf &lt;a href=&#34;https://wolf-u.li/tag/fun_plug/&#34;
    title=&#34;fun_plug&#34; 
   &gt;
  fun_plug&lt;/a&gt;&amp;rsquo;s der Versionen 0.3 und 0.4.&lt;/p&gt;
&lt;p&gt;Die Anleitung für 0.5 befindet sich &lt;a href=&#34;https://wolf-u.li/1425/php-und-mysql-auf-dem-conceptronic-ch3snas-bzw-d-link-dns-323-installieren/&#34;
    title=&#34;hier&#34; 
   &gt;
  hier&lt;/a&gt;.
Als Fortsetzung meiner Artikelreihe zum &lt;a href=&#34;https://wolf-u.li/tag/ch3snas/&#34;
    title=&#34;CH3SNAS&#34; 
   &gt;
  CH3SNAS&lt;/a&gt; wird hier die Möglichkeit, einen Webserver mit PHP-Unterstützung zu installieren, beschrieben.
Mit Hilfe des &lt;a href=&#34;https://wolf-u.li/759/fun_plug-fuer-das-conceptronic-ch3snas/&#34;
    title=&#34;&amp;ldquo;fun_plugs&amp;rdquo; (Artikel)&#34; 
   &gt;
  &amp;ldquo;fun_plugs&amp;rdquo; (Artikel)&lt;/a&gt; kann der Webserver lighttpd mit PHP5.2 installiert werden, um zum Beispiel PHP-Bildergallerien oder CMS-Systeme zu betreiben. Dank des niedrigen Hauptspeicherverbrauchs werden die 64MB Ram des CH3SNAS nicht überstrapaziert. Übermäßige Leistung sollte man trotzdem nicht erwarten ;)&lt;/p&gt;</description>
      
         <content:encoded><![CDATA[<p>Diese Anleitung bezieht sich auf <a href="/tag/fun_plug/"
    title="fun_plug" 
   >
  fun_plug</a>&rsquo;s der Versionen 0.3 und 0.4.</p>
<p>Die Anleitung für 0.5 befindet sich <a href="/1425/php-und-mysql-auf-dem-conceptronic-ch3snas-bzw-d-link-dns-323-installieren/"
    title="hier" 
   >
  hier</a>.
Als Fortsetzung meiner Artikelreihe zum <a href="/tag/ch3snas/"
    title="CH3SNAS" 
   >
  CH3SNAS</a> wird hier die Möglichkeit, einen Webserver mit PHP-Unterstützung zu installieren, beschrieben.
Mit Hilfe des <a href="/759/fun_plug-fuer-das-conceptronic-ch3snas/"
    title="&ldquo;fun_plugs&rdquo; (Artikel)" 
   >
  &ldquo;fun_plugs&rdquo; (Artikel)</a> kann der Webserver lighttpd mit PHP5.2 installiert werden, um zum Beispiel PHP-Bildergallerien oder CMS-Systeme zu betreiben. Dank des niedrigen Hauptspeicherverbrauchs werden die 64MB Ram des CH3SNAS nicht überstrapaziert. Übermäßige Leistung sollte man trotzdem nicht erwarten ;)</p>
<p>Die derzeitigen Softwareversionen sind lighttpd 1.4.17 und PHP 5.2.4, welche in den Paketen <link rel=dns-prefetch href=//www.inreto.de /> <a href="http://www.inreto.de/dns323/fun-plug/0.3/lighttpd-1.4.17.tgz"
    title="lighttpd-1.4.17.tgz" 
     target="_blank" rel="nofollow noopener noreferrer" >
  lighttpd-1.4.17.tgz&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> und <link rel=dns-prefetch href=//www.inreto.de /> <a href="http://www.inreto.de/dns323/fun-plug/0.3/php-5.2.4.tgz"
    title="php-5.2.4.tgz" 
     target="_blank" rel="nofollow noopener noreferrer" >
  php-5.2.4.tgz&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> im <link rel=dns-prefetch href=//www.inreto.de /> <a href="http://www.inreto.de/dns323/fun-plug/0.3/"
    title="Repository von fonz" 
     target="_blank" rel="nofollow noopener noreferrer" >
  Repository von fonz&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> zu finden sind.</p>
<p>Nach dem Herunterladen legt man die Dateien auf das NAS und installiert diese, wie schon in der &ldquo;fun_plug&rdquo;-Anleitung beschrieben wurde, mittels <code>funpkg.sh /pfad/zum/paket/name.tgz</code>, also z.B. <code>funpkg.sh /mnt/HD_a2/lighttpd-1.4.17.tgz</code> bzw. <code>funpkg.sh /mnt/HD_a2/php-5.2.4.tgz</code>.</p>
<p>Anschließend kann php bzw lighttpd konfiguriert werden. Hierzu geht man in <code>/mnt/HD_a2/fun_plug.d/etc/</code> und bennent die Datei <code>lighttpd.conf-with-php-sample</code> in <code>lighttpd.conf</code> um. Nun kann man die Datei editieren (evtl muss hierzu der Editor joe aus dem Repository von fonz installiert werden) und die Einstellungen anpassen.</p>
<p>Zuletzt muss die Starterdatei von lighttpd im &ldquo;start&rdquo;-Verzeichnis noch ausführbar gemacht werden (chmod a+x lighttpd.sh), damit der lighttpd beim Start des NAS mitgeladen wird.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Backup der gesamten FFP-Installation</title>
      
      
      <link>https://wolf-u.li/backup-der-gesamten-ffp-installation/</link>
      <pubDate>Fri, 04 Oct 2013 20:13:43 +0400</pubDate>
      <guid>https://wolf-u.li/backup-der-gesamten-ffp-installation/</guid>
      <description>&lt;p&gt;Dieser Artikel wurde von Simon 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;h2 id=&#34;wozu-backups&#34;&gt;Wozu Backups?&lt;/h2&gt;
&lt;p&gt;Ich habe mir schon häufig gewünscht, ich könnte eine Sicherungskopie meines &lt;em&gt;FFP-Ordners&lt;/em&gt; zurückspielen. Vorgestern z.B. habe ich ausversehen den gesamten ownCloud Kalender samt Sicherungskopie gelöscht. Meistens hatte ich mich aber versehentlich aus dem NAS ausgesperrt. Einmal ist mir ein &lt;em&gt;chmod&lt;/em&gt;-Befehl missglückt und hat den gesamten FFP-Ordner lesbar gemacht. In der Folge verweigert SSH den Dienst, weil die öffentlichen Schlüssel nicht lesbar sein dürfen. Aber es geht auch trivialer: Ein simpler &lt;em&gt;Upgrade&lt;/em&gt;-Befehl hat einmal eine inkompatible Version von openSSL installiert. Auch daraufhin kam ich nicht mehr mit SSH auf die Box.&lt;/p&gt;</description>
      
         <content:encoded><![CDATA[<p>Dieser Artikel wurde von Simon als <a href="/3688/suche-gastautoren-fuer-nas-geraete/"
    title="Gastartikel" 
   >
  Gastartikel</a> eingereicht!</p>
<h2 id="wozu-backups">Wozu Backups?</h2>
<p>Ich habe mir schon häufig gewünscht, ich könnte eine Sicherungskopie meines <em>FFP-Ordners</em> zurückspielen. Vorgestern z.B. habe ich ausversehen den gesamten ownCloud Kalender samt Sicherungskopie gelöscht. Meistens hatte ich mich aber versehentlich aus dem NAS ausgesperrt. Einmal ist mir ein <em>chmod</em>-Befehl missglückt und hat den gesamten FFP-Ordner lesbar gemacht. In der Folge verweigert SSH den Dienst, weil die öffentlichen Schlüssel nicht lesbar sein dürfen. Aber es geht auch trivialer: Ein simpler <em>Upgrade</em>-Befehl hat einmal eine inkompatible Version von openSSL installiert. Auch daraufhin kam ich nicht mehr mit SSH auf die Box.</p>
<p>Um mir aus der Patsche zu helfen habe ich in Ulis <strong>fun_plug</strong> Script herumgeschrieben, das ja bei jedem Start ausgeführt wird.</p>
<p><em>Ihr erinnert euch? Das haben wir zur <a href="/4523/hdd-installation-des-fun_plug-auf-nas-geraeten/"
    title="Installation von FFP" 
   >
  Installation von FFP</a> gebraucht.</em>
Darin habe ich gesehen, dass das Script im Falle einer Ersteinrichtung von FFP die damals heruntergeladene <em>tgz</em>-Datei entpackt.</p>
<p>So kam mir die Idee, meinen fertig konfigurierten FFP-Ordner in eben solch eine tgz-Datei zu stecken. Dann könnte man ihn von dem Installationsscript ganz einfach wiederherstellen lassen.</p>
<h2 id="zusammenfassung-dessen-was-das-script-tut">Zusammenfassung dessen, was das Script tut</h2>
<ul>
<li>Es kopiert den <em>FFP</em>-Ordner wöchentlich (automatisch, zeitgesteuert) in eine tgz-Datei (das ist kurz gesagt eine Linux Zip-Datei).</li>
</ul>
<p>Dabei wird <strong>alles</strong> gesichert, das irgendwie mit FFP zu tun hat:</p>
<p>Alle installierten Pakete, <em>pyLoad, twonky, mySQL Datenbanken, ownCloud (mit allen Dateien)</em> usw.</p>
<ul>
<li>Von diesen FFP-Sicherungsdateien behalten wir die drei aktuellsten. (Sie können einige hundert MB groß sein).</li>
<li>Ist FFP einmal zerschossen oder die Platte gecrasht, kann es sehr leicht wiederhergestellt werden (siehe unten).</li>
</ul>
<h2 id="zur-struktur-von-ffp">Zur Struktur von FFP</h2>
<p>Das FunPlug liegt <em><strong>komplett</strong></em> im Ordner &ldquo;ffp&rdquo;. Es besteht aus diesem Ordner und dem Script namens <em><strong>fun_plug</strong></em>.
Beides liegt auf der ersten Festplatte. Das FunPlug wird nicht <em>in</em> die Firmware des NAS installiert, sondern eher wie ein Rucksack obendrauf geschnallt. Das bedeutet, dass es komplett deinstalliert ist, sobald ihr die Festplatte herauszieht oder der Ordner &ldquo;ffp&rdquo; gelöscht
wird. Für uns heißt das: Wenn wir das FunPlug auf seinen Ursprungszustand wiederherstellen wollen, müssen wir das alte FunPlug löschen und unsere Backup-TGZ Datei installieren lassen. Diese beiden Aufgaben werden von zwei Scripten übernommen und sind eigentlich ganz einfach zu initiieren (siehe unten). Aber zunächst installieren wir das Script in&rsquo;s FunPlug und legen ein Backup an:</p>
<h2 id="download-und-installation">Download und Installation</h2>
<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">mkdir /ffp/opt/ffp-backup <span class="o">&amp;&amp;</span> <span class="nb">cd</span> /ffp/opt/ffp-backup
</span></span><span class="line"><span class="cl">wget http://wolf-u.li/u/481 -O ffp-backup.tgz
</span></span><span class="line"><span class="cl">tar xfj ffp-backup.tgz <span class="o">&amp;&amp;</span> rm *.tgz
</span></span><span class="line"><span class="cl">mv add-cron-ffp-backup.sh /ffp/start <span class="o">&amp;&amp;</span> chmod a+x /ffp/start/add-cron-ffp-backup.sh
</span></span></code></pre></td></tr></table>
</div>
</div><p>Das eigentliche Script ist nun unter /ffp/ffp-backup/ffp-backup.sh gespeichert. Das &ldquo;add-cron-ffp-backup.sh&rdquo; Script wird bei jedem Start ausgeführt. Es sorgt dafür, dass der Cronjob auch nach einem Neustart des NAS wieder neu festgeschrieben wird (dabei gehen sie nämlich eigentlich verloren, wenn wir nichts dagegen tun).</p>
<p>Dieser <strong>Cronjob</strong> sagt dem NAS, dass es das Script regelmäßig ausführen soll. Es ist so eingestellt, dass das Backup jeden <em><strong>Sonntagmorgen um 04:00 Uhr</strong></em> startet.</p>
<h2 id="manueller-start--speicherort--log">Manueller Start / Speicherort / Log</h2>
<p>Nun müsst ihr nichts mehr tun. Das Backup wird wöchentlich angestoßen. Wer gerne jetzt loslegen will, kann das Backup manuell starten:</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">sh /ffp/ffp-backup/ffp-backup.sh
</span></span></code></pre></td></tr></table>
</div>
</div><p>Die Zeitdauer des Durchlaufs hängt von der Größe des FFP-Ordners ab. Zwischen wenigen Minuten und einigen Stunden ist alles möglich,
je nachdem wie viele Pakete ihr installiert- und wie viele Daten ihr in der Owncloud habt.</p>
<p>Ihr seht keinen Fortschritt. Interessierte können mit einem beliebingen Texteditor die LogDatei &ldquo;Volume_1/backup/ffp-backup/backup.txt&rdquo; öffnen.
Darin sieht man, welche Daten gerade in die Datei gepackt werden.
Das Backup ist auf der ersten Festplatte in einem neu angelegten Ordner &ldquo;Volume_1/backup/ffp-backup&rdquo; gespeichert.</p>
<p>Nach drei Durchläufen (respektive drei Wochen) findet ihr darin folgende Dateien:</p>
<ul>
<li>fun_plug.tgz <em>(aktuellste Version)</em></li>
<li>fun_plug_before.tgz</li>
<li>fun_plug_oldest.tgz</li>
</ul>
<p>Desweiteren ist in diesem Ordner eine Logdatei gespeichert, in der ihr die Ausgabe des letzten Backupdurchlaufes nachverfolgen könnt.</p>
<p><em><strong>Achtung!</strong></em></p>
<p>Wenn ihr kein RAID1 nutzt, empfiehlt es sich natürlich, eure TGZ-Sicherungen nochmal auf einer anderen Platte zu speichert, damit ihr auch gegen einen Plattencrash geschützt seid.</p>
<h2 id="wiederherstellung-von-ffp">Wiederherstellung von FFP</h2>
<p>Im Idealfall wollt ihr das FFP auf eine frisch formatierte Festplatte wiederherstellen. Hierzu müsst ihr einfach die Datei &ldquo;fun_plug&rdquo; aus der oben verlinkten Anleitung <a href="/4523/hdd-installation-des-fun_plug-auf-nas-geraeten/"
    title="(okay, für Scrollfaule hier nochmal der Link :)" 
   >
  (okay, für Scrollfaule hier nochmal der Link :)</a> zum Installieren des FFP herunterladen, nur dass ihr natürlich <em>eure</em> &ldquo;<strong>fun_plug.tgz</strong>&rdquo; Datei aus dem Backupordner mit dem &ldquo;fun_plug&rdquo; Script auf das jungfräuliche NAS kopiert und neu startet.</p>
<h3 id="das-war"><em>Das war&rsquo;s!</em></h3>
<p>Alle weiteren Schritte entfallen (Telnet / SSH einrichten). Nach einem Neustart
wird euere Sicherung entpackt (das kann eine Weile dauern) und das FunPlug steht mit exakt demselben Funktionsumfang zur Verfügung wie
zum Backup Zeitpunkt.</p>
<hr>
<p>Weniger ideal ist der Fall, wenn ihr euch aus dem FunPlug ausgesperrt habt. Dann ist der Ordner &ldquo;ffp&rdquo; ja noch vorhanden und das FunPlug läuft noch. <strong>Wir müssen es also erst löschen!</strong>
Befolgt dazu diese <a href="/1657/fun_plug-deinstallieren-bzw-entfernen-vom-conceptronic-ch3snas-bzw-d-link-dns-323/"
    title="Anleitung zum Deinstallieren des Fun_Plug" 
   >
  Anleitung zum Deinstallieren des Fun_Plug</a>. Ihr müsst nur die fun_plug Datei ersetzen und neu starten - dann ist das gesamte FFP von der Platte gefegt. Es bleibt nur die Logdatei übrig, die ihr auch löschen könnt.</p>
<p>Daraufhin könnt ihr den eben beschriebenen Idealfall nutzen: Die Platte ist vom alten FFP bereinigt. Ihr kopiert einfach das Installations-&ldquo;fun_plug&rdquo; Script und euer Backup auf die erste Festplatte und startet neu. Da das evtl. sehr große Archiv erst entpackt werden muss, kann das Wiederherstellen eine Zeit lang dauern. Schaut einfach in &ldquo;ffp.log&rdquo; nach. Solange da steht &ldquo;Installing tarball&rdquo; müsst ihr noch warten.</p>
<p>So, viel Erfolg beim (jetzt sicheren) Herumspielen im FFP.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Synchronisation eines Ordners von einem NAS zu einem zweiten NAS mittels rsync und fun_plug</title>
      
      
      <link>https://wolf-u.li/synchronisation-eines-ordners-von-einem-nas-zu-einem-zweiten-nas-mittels-rsync-und-fun_plug/</link>
      <pubDate>Mon, 10 Oct 2011 13:00:47 +1000</pubDate>
      <guid>https://wolf-u.li/synchronisation-eines-ordners-von-einem-nas-zu-einem-zweiten-nas-mittels-rsync-und-fun_plug/</guid>
      <description>&lt;p&gt;Von einigen Webseitenbesuchern, die mittlerweile mehrere NAS betreiben, habe ich die Anfrage bekommen, ein Tutorial zu schreiben, wie man einen Ordner auf einem NAS auf ein zweites NAS synchronisieren kann. Natürlich funktioniert das auch zu beliebigen anderen Rechnern, ich beschreibe es hier aber absichtlich nur für das fun_plug (welches natürlich auf beiden NAS installiert sein muss).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Achtung&lt;/strong&gt;: Ich beschreibe eine Variante ohne Verschlüsselung der Datenübertragung. Sollte dies gewünscht sein, so verweise ich auf die Suchmaschine deiner Wahl. Diese sollte dich mit dem Stichwort &amp;ldquo;rsync ssh&amp;rdquo; zu einem weiterführenden Artikel bringen.&lt;/p&gt;</description>
      
         <content:encoded><![CDATA[<p>Von einigen Webseitenbesuchern, die mittlerweile mehrere NAS betreiben, habe ich die Anfrage bekommen, ein Tutorial zu schreiben, wie man einen Ordner auf einem NAS auf ein zweites NAS synchronisieren kann. Natürlich funktioniert das auch zu beliebigen anderen Rechnern, ich beschreibe es hier aber absichtlich nur für das fun_plug (welches natürlich auf beiden NAS installiert sein muss).</p>
<p><strong>Achtung</strong>: Ich beschreibe eine Variante ohne Verschlüsselung der Datenübertragung. Sollte dies gewünscht sein, so verweise ich auf die Suchmaschine deiner Wahl. Diese sollte dich mit dem Stichwort &ldquo;rsync ssh&rdquo; zu einem weiterführenden Artikel bringen.</p>
<p><strong>Achtung</strong>: Bestehende Konfigurationen einen rsync-Servers werden unter Umständen überschrieben, Nutzer werden gebeten, das folgende Tutorial selbstständig in die Konfiguration zu integrieren.</p>
<p>Los gehts mit der Vorstellung des Szenarios: NAS <em><strong>A</strong>lice</em> enthält einen Ordner namens <em>Foo</em>, welcher regelmäßig auf das NAS <em><strong>B</strong>ob</em> in den Ordner <em>Bar</em> gespiegelt werden soll. Änderungen in Foo werden auf Bob kopiert, Änderungen an Bar werden verworfen bzw. auf den Stand von Alice zurückgesetzt.</p>
<p>Kommen wir zur Konfiguration. Der zu spiegelnde Ordner auf Alice liegt in meinem Falle in <code>/mnt/HD/HD_a2/Foo</code>, dies wird sich sehr wahrscheinlich zu eurer Konfiguration unterscheiden! Bitte selbstständig anpassen! Zunächst müssen verschiedene Dateien zur Konfiguration des rsync-Servers angelegt werden (siehe Sektion &ldquo;Download&rdquo;). Dieser wird auf dem NAS Alice gestartet und stellt dann nach Authentifikation das konfigurierte Verzeichnis für einen rsync-Client (in diesem Fall das NAS Bob) bereit.</p>
<h3 id="download-der-erforderlichen-dateien">Download der erforderlichen Dateien</h3>
<p>Auf Alice führt man die folgenden Schritte aus:</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="nb">cd</span> /ffp/etc/
</span></span><span class="line"><span class="cl">mkdir -p /ffp/var/run/
</span></span><span class="line"><span class="cl">wget http://wolf-u.li/u/370 -O rsyncd.conf
</span></span><span class="line"><span class="cl">wget http://wolf-u.li/u/371 -O rsyncdmotd
</span></span><span class="line"><span class="cl">wget http://wolf-u.li/u/372 -O rsyncdsecretsfile
</span></span><span class="line"><span class="cl">chmod <span class="m">600</span> rsyncdsecretsfile
</span></span></code></pre></td></tr></table>
</div>
</div><p>Und auf Bob führt man die folgenden Kommandos aus:</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></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 -p /ffp/var/opt/uwmirrorfolderrsync/
</span></span><span class="line"><span class="cl"><span class="nb">cd</span> /ffp/var/opt/uwmirrorfolderrsync/
</span></span><span class="line"><span class="cl">wget http://wolf-u.li/u/375 -O uwmirrorfolderrsync.sh
</span></span><span class="line"><span class="cl">wget http://wolf-u.li/u/374 -O uwmirrorfolderrsyncpass
</span></span><span class="line"><span class="cl">chmod <span class="m">600</span> uwmirrorfolderrsyncpass
</span></span><span class="line"><span class="cl">chmod a+x uwmirrorfolderrsync.sh
</span></span><span class="line"><span class="cl"><span class="nb">cd</span> /ffp/start/
</span></span><span class="line"><span class="cl">wget http://wolf-u.li/u/376 -O uwmirrorfolderservice.sh
</span></span></code></pre></td></tr></table>
</div>
</div><p>Nun sind die erforderlichen Konfigurationsdateien auf beiden NAS heruntergeladen.</p>
<h3 id="passwort">Passwort</h3>
<p>Jetzt geht man auf Alice und editiert die Datei <code>/ffp/etc/rsyncdsecretsfile</code>. Dort muss man statt <code>YOURPASSWORDHERE</code> ein Passwort einfügen, welches Bob zur Authentifizierung an Alice verwenden wird. Dementsprechend rate ich ein ca. 20-Stelliges oder noch längeres Kennwort zu verwenden, das tut an der Stelle keinem weh. Dieses Passwort muss nun auf Bob in der Datei <code>/ffp/var/opt/uwmirrorfolderrsync/uwmirrorfolderrsyncpass</code> statt <code>YOURSERVERPASS</code> eingetragen werden (ohne zusätzliche Zeichen!</p>
<h3 id="ordner">Ordner</h3>
<p>Der zu kopierende Ordner muss nun auf Alice konfiguriert werden. Dieser ist derzeit auf &ldquo;<code>/mnt/HD/HD_a2/Foo</code>&rdquo; festgelegt, was in der Datei <code>/ffp/etc/rsyncd.conf</code> abgeändert werden muss. Der Zielordner auf Bob wird in <code>/ffp/var/opt/uwmirrorfolderrsync/uwmirrorfolderrsync.sh</code> in der Variable <code>BACKUPDIR</code> abgeändert, welcher momentan auf <code>/mnt/HD/HD_a2/Bar</code> konfiguriert ist.</p>
<h3 id="testlauf">Testlauf</h3>
<p>Auf Alice muss nun der Rsync-Server gestartet 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">sh /ffp/start/rsyncd.sh start
</span></span></code></pre></td></tr></table>
</div>
</div><p>Auf Bob kann man nun einen ersten Testlauf machen:</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">/ffp/var/opt/uwmirrorfolderrsync/uwmirrorfolderrsync.sh
</span></span></code></pre></td></tr></table>
</div>
</div><p>Normalerweise sollte nun der erste Lauf problemlos durchlaufen, eventuelle Fehler sollten klar erkennbar sein.</p>
<h3 id="praktischer-betrieb">Praktischer Betrieb</h3>
<p>Hat der Testlauf geklappt, wird auf Alice der Rsync-Server dauerhaft eingeschalten und auf Bob ein Cron-Job eingerichtet, der täglich um 03:00 Uhr und um 15:00 Uhr (lokaler Systemzeit) den Abgleich startet.</p>
<p>Alice:</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">chmod a+x /ffp/start/rsyncd.sh
</span></span></code></pre></td></tr></table>
</div>
</div><p>Bob:</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">chmod a+x /ffp/start/uwmirrorfolderservice.sh
</span></span><span class="line"><span class="cl">/ffp/start/uwmirrorfolderservice.sh start
</span></span></code></pre></td></tr></table>
</div>
</div><p>Das war. Bei Fragen oder Anmerkungen einfach einen Kommentar hinterlassen. Ich freue mich aber auch über ein Danke :)</p>
]]></content:encoded>
    </item>
    <item>
      <title>HDD-Installation des fun_plug 0.7 auf NAS-Geräten</title>
      
      
      <link>https://wolf-u.li/hdd-installation-des-fun_plug-auf-nas-geraeten/</link>
      <pubDate>Tue, 21 Feb 2012 21:37:24 +2100</pubDate>
      <guid>https://wolf-u.li/hdd-installation-des-fun_plug-auf-nas-geraeten/</guid>
      <description>&lt;p&gt;Diese Anleitung installiert die aktuelle Version 0.7 des Fonz fun_plug auf fun_plug-kompatiblen NAS-Geräten. Wenn du nicht weißt, was das fun_plug eigentlich ist, dann gehe bitte auf &lt;a href=&#34;https://wolf-u.li/3935/was-ist-das-fun_plug/&#34;
    title=&#34;diese Seite&#34; 
   &gt;
  diese Seite&lt;/a&gt; und lese den Artikel dort zuerst durch. Die Anleitung wurde für alle NAS, welche &lt;a href=&#34;https://wolf-u.li/nas/geraete/&#34;
    title=&#34;hier&#34; 
   &gt;
  hier&lt;/a&gt; beschrieben sind, getestet, kann jedoch auch für andere funktionieren. Bitte beachte, dass du den korrekten Gerätetyp (EABI/OABI) auswählst, dieser ist &lt;a href=&#34;https://wolf-u.li/nas/geraete/&#34;
    title=&#34;hier&#34; 
   &gt;
  hier&lt;/a&gt; auf den verlinkten Beschreibungsseiten der NAS unter dem Punkt &amp;ldquo;Application binary interface&amp;rdquo; zu finden.&lt;/p&gt;</description>
      
         <content:encoded><![CDATA[<p>Diese Anleitung installiert die aktuelle Version 0.7 des Fonz fun_plug auf fun_plug-kompatiblen NAS-Geräten. Wenn du nicht weißt, was das fun_plug eigentlich ist, dann gehe bitte auf <a href="/3935/was-ist-das-fun_plug/"
    title="diese Seite" 
   >
  diese Seite</a> und lese den Artikel dort zuerst durch. Die Anleitung wurde für alle NAS, welche <a href="/nas/geraete/"
    title="hier" 
   >
  hier</a> beschrieben sind, getestet, kann jedoch auch für andere funktionieren. Bitte beachte, dass du den korrekten Gerätetyp (EABI/OABI) auswählst, dieser ist <a href="/nas/geraete/"
    title="hier" 
   >
  hier</a> auf den verlinkten Beschreibungsseiten der NAS unter dem Punkt &ldquo;Application binary interface&rdquo; zu finden.</p>
<p>Inhalt des Artikels:</p>
<ul>
<li>Haftungsausschluss</li>
<li>Vorbereitungen</li>
<li>Download</li>
<li>Installation des fun_plug</li>
<li>Initiale Konfiguration des fun_plug</li>
<li>Aktivierung von SSH</li>
</ul>
<h2 id="haftungsauschluss">Haftungsauschluss</h2>
<p>Ich stelle nachfolgend meine persönlichen Erfahrungen beim Einsatz dieses fun_plugs sowie eine eingedeutsche Installationsanweisung bereit. Zudem weise ich darauf hin, dass ich nicht für eventuelle Schäden, Datenverluste oder andere Probleme haften werde. Das Verwenden dieses Artikels geschieht auf eigene Gefahr!</p>
<h2 id="vorbereitungen">Vorbereitungen</h2>
<p>Das NAS muss über eine gültige Netzwerkkonfiguration mit Gateway &amp; DNS-Server verfügen. Wird die IP-Adresse automatisch bezogen, ist das im Regelfall korrekt eingestellt. Wenn im Laufe des Tutorials bei dir der Fehler &ldquo;wget:bad address <code>wolf-u.li</code>&rdquo; (oder ähnliche / andere Domains) auftaucht, so stimmt die Konfiguration nicht (<a href="/4377/wgetbad-address-wolf-u-li/"
    title="siehe Artikel" 
   >
  siehe Artikel</a> zu diesem Problem).</p>
<p>Bei neueren NAS wie den Baureihen DNS-320/DNS-320L/DNS-325/DNS-345 muss der interne &ldquo;Remote Backup&rdquo; Dienst abgeschalten sein, da die Aktivierung dessen dazu führt, dass das Passwort des root-Nutzers nach jedem Reboot nicht mehr funktioniert. Teilweise werden die Funktionalitäten über <a href="/4333/synchronisation-eines-ordners-von-einem-nas-zu-einem-zweiten-nas-mittels-rsync-und-fun_plug/"
    title="dieses Tutorial" 
   >
  dieses Tutorial</a> wiederhergestellt.</p>
<h2 id="download">Download</h2>
<p>Nun geht es an den Download des fun_plug, bitte lade die folgenden beiden Dateien herunter:</p>
<ul>
<li><a href="/u/433"
    title="fun_plug" 
   >
  fun_plug</a></li>
<li>fun_plug.tgz
<ul>
<li><link rel=dns-prefetch href=//inreto.de /> <a href="http://inreto.de/dns323/fun-plug/0.7/arm/fun_plug.tgz"
    title="Version &ldquo;ARM&rdquo; für EABI-Geräte" 
     target="_blank" rel="nofollow noopener noreferrer" >
  Version &ldquo;ARM&rdquo; für EABI-Geräte&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> (wie z.B. das DNS-320/325/345 und CH3MNAS) (<link rel=dns-prefetch href=//funplug.wolf-u.li /> <a href="http://funplug.wolf-u.li/mirrors/s/0.7/arm/fun_plug.tgz"
    title="Mirror" 
     target="_blank" rel="nofollow noopener noreferrer" >
  Mirror&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>)</li>
<li><link rel=dns-prefetch href=//ffp.inreto.de /> <a href="http://ffp.inreto.de/ffp/0.7/oabi/fun_plug.tgz"
    title="Version &ldquo;OABI&rdquo; für OABI-Geräte" 
     target="_blank" rel="nofollow noopener noreferrer" >
  Version &ldquo;OABI&rdquo; für OABI-Geräte&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> (wie z.B. das DNS-323 und CH3SNAS) (<link rel=dns-prefetch href=//funplug.wolf-u.li /> <a href="http://funplug.wolf-u.li/mirrors/s/0.7/oabi/fun_plug.tgz"
    title="Mirror" 
     target="_blank" rel="nofollow noopener noreferrer" >
  Mirror&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>)</li>
</ul>
</li>
</ul>
<h2 id="installation-des-fun_plug">Installation des fun_plug</h2>
<p><img src="/upload/2012/02/4523-installation-fun_plug-01.webp" alt="Installation des fun_plug" loading="lazy" title="Installation des fun_plug"></p>
<p>Die Installation ist relativ einfach. Kopiere die beiden, soeben heruntergeladenen Dateien auf das Share &ldquo;Volume_1&rdquo; deines NAS und starte neu. Nach dem Neustart sollte der Ordner mindestens diesen Ordner und diese beiden Dateien enthalten (Auf Windows 7 sieht dies wie nebenstehend aus):</p>
<ul>
<li>Ordner: ffp</li>
<li>Datei: fun_plug</li>
<li>Datei: ffp.log</li>
</ul>
<p>Sollte dem nicht so sein, so versuche die beiden heruntergeladenen Dateien statt auf &ldquo;Volume_1&rdquo; auf &ldquo;Volume_2&rdquo; zu legen und einmal neu zu starten. Wenn dies auch nicht hilft, hast du dich vielleicht bei der Wahl OABI/EABI vertan? Bevor dein Ordnerinhalt nicht so aussieht wie oben brauchst du nicht weiterzulesen!</p>
<h2 id="initiale-konfiguration-des-fun_plug">Initiale Konfiguration des fun_plug</h2>
<p>Nach dem Neustart musst du per Telnet auf das NAS. Hierzu gibt es das Programm &ldquo;putty.exe&rdquo;, welches du <link rel=dns-prefetch href=//www.chiark.greenend.org.uk /> <a href="http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html"
    title="hier herunterladen" 
     target="_blank" rel="nofollow noopener noreferrer" >
  hier herunterladen&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> kannst. Im Feld Hostname muss eingetragen werden, wie du das NAS erreichst, also z.B. heisst mein NAS &ldquo;DNS-345&rdquo;. Zudem muss als Verbindungsmethode &ldquo;Telnet&rdquo; ausgewählt werden. Per Klick auf &ldquo;Open&rdquo; öffnet sich dann die Konsole.</p>
<p><img src="/upload/2012/02/4523-installation-fun_plug-02.webp" alt="Einrichtung von PuttY" loading="lazy" title="Einrichtung von PuttY"></p>
<p>Sollte dann bei dir kein Inhalt im Fenster wie bespielsweise wie folgt erscheinen, so musst du &ldquo;5784468&rdquo; eingeben.</p>
<p><img src="/upload/2012/02/4523-installation-fun_plug-03.webp" alt="Prompt während der Installation des ffp" loading="lazy" title="Prompt während der Installation des ffp"></p>
<p>Nun müssen einige Settings für den User root getätigt werden. Zunächst wird die Shell geändert und dann das Home-verzeichnis verschoben. Anschließend wird /etc/shadow mittels &ldquo;pwconv&rdquo; erstellt.</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">usermod -s /ffp/bin/sh root
</span></span><span class="line"><span class="cl">mkdir -p /ffp/home/root/
</span></span><span class="line"><span class="cl">sed -ie <span class="s1">&#39;s#:/home/root:#:/ffp/home/root:#g&#39;</span> /etc/passwd
</span></span><span class="line"><span class="cl">pwconv
</span></span></code></pre></td></tr></table>
</div>
</div><p>Dies kann dann beispielsweise wie folgt aussehen:</p>
<p><img src="/upload/2012/02/4523-installation-fun_plug-04.webp" alt="Settings des User root" loading="lazy" title="Settings des User root"></p>
<p>Hinweise:</p>
<ul>
<li>Falls bei &ldquo;usermod&rdquo; folgende Meldung erscheint: &ldquo;usermod: no changes&rdquo;, so kann man einfach fortfahren. In diesem Fall ist die Shell bereits auf den gewünschten Wert eingestellt</li>
<li>Falls bei &ldquo;pwconv&rdquo; folgende Meldung erscheint: &ldquo;pwconv: failed to change the mode of /etc/passwd- to 0600&rdquo; kann man dies ignorieren und einfach fortfahren.</li>
</ul>
<p>Nun wird das Passwort geändert und der Login getestet:</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">passwd
</span></span><span class="line"><span class="cl">login
</span></span></code></pre></td></tr></table>
</div>
</div><p>Dies kann dann beispielsweise wie folgt aussehen:</p>
<p><img src="/upload/2012/02/4523-installation-fun_plug-05.webp" alt="Änderung des Passworts des User root" loading="lazy" title="Änderung des Passworts des User root"></p>
<p>Nun müssen die Änderungen noch gespeichert werden. Hierzu muss man zunächst eine Datei herunterladen, die die Konfigurationsdaten für Passwörter, Gruppen und Samba (passwd, group, shadow, smbpasswd) persistent speichert. Anschließend wird diese ausgeführt:</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">wget http://wolf-u.li/u/172/ -O /ffp/sbin/store-passwd.sh
</span></span><span class="line"><span class="cl">store-passwd.sh
</span></span></code></pre></td></tr></table>
</div>
</div><p>Dies kann dann beispielsweise wie folgt aussehen:</p>
<p><img src="/upload/2012/02/4523-installation-fun_plug-06.webp" alt="Download der store-passwd.sh" loading="lazy" title="Download der store-passwd.sh"></p>
<h2 id="aktivierung-von-ssh">Aktivierung von SSH</h2>
<p>Nun wird der SSH-Server aktiviert, da das soeben verwendete Telnet bereits als sehr unsicher (v.a. aufgrund des unverschlüsselten Verkehrs) bekannt ist:</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">chmod a+x /ffp/start/sshd.sh
</span></span><span class="line"><span class="cl">sh /ffp/start/sshd.sh start
</span></span></code></pre></td></tr></table>
</div>
</div><p>Das wird nun während der generierung des Public/Private-Schlüsselpaares einige komische Zeichen auswerfen und je nach Prozessorgeschwindigkeit des verwendeten NAS einen Moment benötigen. Wenn abgeschlossen, dann bitte eine zusätzliche Session mit Putty starten, jedoch diesmal &ldquo;SSH&rdquo; als Verbindungsmethode auswählen.</p>
<blockquote>
<p>Username: root
Passwort: Wie oben vergeben</p>
</blockquote>
<p>Dies kann dann beispielsweise wie folgt aussehen:</p>
<p><img src="/upload/2012/02/4523-installation-fun_plug-07.webp" alt="Initiale Verbindung mit SSH" loading="lazy" title="Initiale Verbindung mit SSH"></p>
<p>Wenn der login funktioniert hat, kann man die Telnet-Session im anderen Fenster beenden (&ldquo;exit&rdquo;) und den Start des Telnet-Servers unterbinden:</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">chmod -x /ffp/start/telnetd.sh
</span></span></code></pre></td></tr></table>
</div>
</div><h2 id="paketquellen">Paketquellen</h2>
<p>Jetzt werden noch die Quellen für Pakete (&ldquo;Repositories&rdquo; oder &ldquo;Sites&rdquo;) eingerichtet:</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">wget http://wolf-u.li/u/441 -O /ffp/bin/uwsiteloader.sh
</span></span><span class="line"><span class="cl">chmod a+x /ffp/bin/uwsiteloader.sh
</span></span><span class="line"><span class="cl">uwsiteloader.sh
</span></span></code></pre></td></tr></table>
</div>
</div><p>Nach der Eingabe der letzten Zeile kommt ein Menü in der Konsole hoch:
<img src="/upload/2012/02/4523-uwsiteloader-1.webp" alt="uwsiteloader - 1" loading="lazy">
Drücke &ldquo;Enter&rdquo;
<img src="/upload/2012/02/4523-uwsiteloader-2.webp" alt="uwsiteloader - 2" loading="lazy">
Drücke &ldquo;Enter&rdquo;. Jetzt kommt ein Auswahlbildschirm hoch, der beispielsweise so aussieht:
<img src="/upload/2012/03/4569-sites-uli.webp" alt="4569-sites-uli" loading="lazy"></p>
<p>Um einen Eintrag auszuwählen, musst du mit ihn mit den Pfeiltasten markieren und die Leertaste drücke, um ihn zu aktivieren. Aktiv ist er dann, wenn vorne <code>[*]</code> steht. Wähle hier mindestens &ldquo;fonz&rdquo; und &ldquo;Uli&rdquo; aus! Missachtest du dies, so funktionieren die weiteren Tutorials auf dieser Webseite nicht. Wähle zum Schluss &ldquo;OK&rdquo; und drücke &ldquo;Enter&rdquo;.</p>
<p><img src="/upload/2012/02/4523-uwsiteloader-4.webp" alt="uwsiteloader - 4" loading="lazy"></p>
<p>Drücke &ldquo;Enter&rdquo;</p>
<p><img src="/upload/2012/02/4523-uwsiteloader-5.webp" alt="uwsiteloader - 5" loading="lazy"></p>
<p>Drücke &ldquo;Enter&rdquo;. Dies führt ein Update der Sites durch, um die aktuellen Pakete sehen zu können. Dies führt noch keine Installationen durch!</p>
<p>Jetzt muss noch ein Paket installiert werden, bevor du deinen nächsten Reboot durchführst:</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">slacker -UaA uli:uwchmod
</span></span></code></pre></td></tr></table>
</div>
</div><p>Die Beschreibung dessen, was dieses Paket macht, findest du <a href="/4760/uwchmod-fix-fuer-das-firmwareproblem-von-d-link-geraeten/"
    title="hier" 
   >
  hier</a>.</p>
<p>Das wars. Für die Installation weiterer Pakete verweise ich auf <a href="/4531/installation-zusaetzlicher-pakete-auf-dem-fonz-fun_plug-0-7/"
    title="diesen Artikel" 
   >
  diesen Artikel</a>. Weitere Tutorials sind <a href="/nas/tutorials/ffp/"
    title="hier" 
   >
  hier</a> zu finden.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Ankündigung von Uli&#39;s Funplug 0.7 Repository</title>
      
      
      <link>https://wolf-u.li/ankuendigung-von-ulis-funplug-0-7-repository/</link>
      <pubDate>Sat, 31 Mar 2012 12:25:51 +3100</pubDate>
      <guid>https://wolf-u.li/ankuendigung-von-ulis-funplug-0-7-repository/</guid>
      <description>&lt;p&gt;Seit ffp 0.7 gibt es nun die Möglichkeit, dass man über das Zusatzprogramm slacker verschiedene &amp;ldquo;sites&amp;rdquo; einbinden kann, welche Pakete bereitstellen. Nachdem ffp0.7 nun schon einige Zeit verfügbar ist, habe ich mich entschlossen meine Pakete auf ffp0.7 neu zu kompilieren.&lt;/p&gt;
&lt;h2 id=&#34;wie-kann-man-das-repository-einbinden&#34;&gt;Wie kann man das Repository einbinden?&lt;/h2&gt;
&lt;h3 id=&#34;automatisch&#34;&gt;Automatisch&lt;/h3&gt;
&lt;p&gt;Das repository kann per &lt;a href=&#34;https://wolf-u.li/4554/uwsiteloader-tool-zum-download-der-sites-definitionen-fuer-pakete-des-fun_plug-0-7/&#34;
    title=&#34;uwsiteloader&#34; 
   &gt;
  uwsiteloader&lt;/a&gt; schnell eingebunden werden:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;wget http://wolf-u.li/u/441 -O /ffp/bin/uwsiteloader.sh
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;chmod a+x /ffp/bin/uwsiteloader.sh
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uwsiteloader.sh
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Im Menü muss nun &amp;ldquo;Uli&amp;rdquo; ausgewählt werden:
&lt;a href=&#34;https://wolf-u.li/upload/2012/03/4569-sites-uli.webp&#34;
    title=&#34;&#34; 
   &gt;
  &lt;img src=&#34;https://wolf-u.li/upload/2012/03/4569-sites-uli.webp&#34; alt=&#34;Ulis repository im uwsiteloader&#34; loading=&#34;lazy&#34; title=&#34;Ulis repository im uwsiteloader&#34;&gt;&lt;/a&gt;&lt;/p&gt;</description>
      
         <content:encoded><![CDATA[<p>Seit ffp 0.7 gibt es nun die Möglichkeit, dass man über das Zusatzprogramm slacker verschiedene &ldquo;sites&rdquo; einbinden kann, welche Pakete bereitstellen. Nachdem ffp0.7 nun schon einige Zeit verfügbar ist, habe ich mich entschlossen meine Pakete auf ffp0.7 neu zu kompilieren.</p>
<h2 id="wie-kann-man-das-repository-einbinden">Wie kann man das Repository einbinden?</h2>
<h3 id="automatisch">Automatisch</h3>
<p>Das repository kann per <a href="/4554/uwsiteloader-tool-zum-download-der-sites-definitionen-fuer-pakete-des-fun_plug-0-7/"
    title="uwsiteloader" 
   >
  uwsiteloader</a> schnell eingebunden 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></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">wget http://wolf-u.li/u/441 -O /ffp/bin/uwsiteloader.sh
</span></span><span class="line"><span class="cl">chmod a+x /ffp/bin/uwsiteloader.sh
</span></span><span class="line"><span class="cl">uwsiteloader.sh
</span></span></code></pre></td></tr></table>
</div>
</div><p>Im Menü muss nun &ldquo;Uli&rdquo; ausgewählt werden:
<a href="/upload/2012/03/4569-sites-uli.webp"
    title="" 
   >
  <img src="/upload/2012/03/4569-sites-uli.webp" alt="Ulis repository im uwsiteloader" loading="lazy" title="Ulis repository im uwsiteloader"></a></p>
<h3 id="manuelle-einbindung">Manuelle Einbindung</h3>
<table>
  <thead>
      <tr>
          <th>Inhaber</th>
          <th>Variante</th>
          <th>Sitename</th>
          <th>URL</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Uli</td>
          <td>arm</td>
          <td>uli</td>
          <td>rsync://funplug.wolf-u.li/funplug/0.7/arm/packages</td>
      </tr>
  </tbody>
</table>
]]></content:encoded>
    </item>
    <item>
      <title>Installation von Owncloud auf NAS Geräten mit FFP 0.7</title>
      
      
      <link>https://wolf-u.li/installation-von-owncloud-auf-nas-geraeten-mit-ffp-0-7/</link>
      <pubDate>Mon, 05 Nov 2012 10:24:49 +0500</pubDate>
      <guid>https://wolf-u.li/installation-von-owncloud-auf-nas-geraeten-mit-ffp-0-7/</guid>
      <description>&lt;p&gt;Für die Installation von owncloud sind nach der &lt;a href=&#34;https://wolf-u.li/4695/konfiguration-von-mysql-und-lighttpd-mit-php-unter-ffp-0-7/&#34;
    title=&#34;Ausführung der Installation von MySQL, lighttpd und PHP&#34; 
   &gt;
  Ausführung der Installation von MySQL, lighttpd und PHP&lt;/a&gt; nur noch wenige Schritte notwendig. Zunächst wird das Installationspaket heruntergeladen:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; /srv/www/pages/
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;wget --no-check-certificate https://download.owncloud.org/community/owncloud-latest.tar.bz2
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tar xjf owncloud-latest.tar.bz2 &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; rm owncloud-latest.tar.bz2
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;chown -R root:root /srv/www/pages/owncloud
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir /srv/www/pages/owncloud/data
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;chmod -R &lt;span class=&#34;m&#34;&gt;700&lt;/span&gt; /srv/www/pages/owncloud/data
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Nun muss die Datenbank für owncloud angelegt werden. Dazu wird zunächst MySQL geöffnet, das Passwort hast du im Installationstutorial festgelegt:&lt;/p&gt;</description>
      
         <content:encoded><![CDATA[<p>Für die Installation von owncloud sind nach der <a href="/4695/konfiguration-von-mysql-und-lighttpd-mit-php-unter-ffp-0-7/"
    title="Ausführung der Installation von MySQL, lighttpd und PHP" 
   >
  Ausführung der Installation von MySQL, lighttpd und PHP</a> nur noch wenige Schritte notwendig. Zunächst wird das Installationspaket heruntergeladen:</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="nb">cd</span> /srv/www/pages/
</span></span><span class="line"><span class="cl">wget --no-check-certificate https://download.owncloud.org/community/owncloud-latest.tar.bz2
</span></span><span class="line"><span class="cl">tar xjf owncloud-latest.tar.bz2 <span class="o">&amp;&amp;</span> rm owncloud-latest.tar.bz2
</span></span><span class="line"><span class="cl">chown -R root:root /srv/www/pages/owncloud
</span></span><span class="line"><span class="cl">mkdir /srv/www/pages/owncloud/data
</span></span><span class="line"><span class="cl">chmod -R <span class="m">700</span> /srv/www/pages/owncloud/data
</span></span></code></pre></td></tr></table>
</div>
</div><p>Nun muss die Datenbank für owncloud angelegt werden. Dazu wird zunächst MySQL geöffnet, das Passwort hast du im Installationstutorial festgelegt:</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">mysql -p
</span></span></code></pre></td></tr></table>
</div>
</div><p>Dann führe die folgenden Befehle aus. Ersetze bitte <strong>YOURSECRETPASSWORD</strong> durch dein eigenes:</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">CREATE DATABASE owncl0ud CHARACTER SET utf8<span class="p">;</span>
</span></span><span class="line"><span class="cl">GRANT ALL ON owncl0ud.* TO <span class="s1">&#39;owncl0ud&#39;</span>@<span class="s1">&#39;localhost&#39;</span> IDENTIFIED BY <span class="s1">&#39;YOURSECRETPASSWORD&#39;</span> WITH GRANT OPTION<span class="p">;</span>
</span></span><span class="line"><span class="cl">FLUSH PRIVILEGES<span class="p">;</span>
</span></span><span class="line"><span class="cl">exit<span class="p">;</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p><a href="/upload/2012/10/4701-owncloud-01.webp"
    title="" 
   >
  <img src="/upload/2012/10/4701-owncloud-01.webp" alt="Installation von owncloud" loading="lazy" title="Installation von owncloud"></a>Dann gehe auf die adresse deines NAS mit dem zusatz /owncloud/, also z.b. <link rel=dns-prefetch href=//nas /> <a href="http://nas/owncloud/"
    title="http://nas/owncloud/" 
     target="_blank" rel="nofollow noopener noreferrer" >
  http://nas/owncloud/&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> oder <link rel=dns-prefetch href=//192.168.133.7 /> <a href="http://192.168.133.7/owncloud"
    title="http://192.168.133.7/owncloud" 
     target="_blank" rel="nofollow noopener noreferrer" >
  http://192.168.133.7/owncloud&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>. Dort wird dir wie im Bild links ein Konfigurationsmenü angezeigt werden, die Warnung bezüglich des ungeschützten &ldquo;data&rdquo;-Verzeichnis kannst du ignorieren. Trage nun folgende Daten ein:</p>
<ul>
<li>Administrator-Konto:
<ul>
<li>Nutzername: Dein Nutzername</li>
<li>Passwort: Dein Passwort</li>
</ul>
</li>
<li>Datenverzeichnis:
<ul>
<li>Verzeichnis: <code>/srv/www/pages/owncloud/data</code></li>
</ul>
</li>
<li>Datenbank einrichten:
<ul>
<li>Datenbank: <code>owncl0ud</code></li>
<li>Username: <code>owncl0ud</code></li>
<li>Passwort: <code>YOURSECRETPASSWORD</code> (Passwort von oben)</li>
</ul>
</li>
</ul>
<p>Klicke dann auf &ldquo;Installation abschließen&rdquo;. Nach einigen Sekunden wird sich die Oberfläche wie folgt präsentieren:
<a href="/upload/2012/10/4701-owncloud-02.webp"
    title="" 
   >
  <img src="/upload/2012/10/4701-owncloud-02.webp" alt="Owncloud nach der Installation" loading="lazy" title="Owncloud nach der Installation"></a></p>
<p>Um große Dateien hochladen zu können, solltest du in der Datei /ffp/etc/php.ini einige Werte abändern:</p>
<ul>
<li>upload_tmp_dir: <code>/srv/www/tmp/</code></li>
<li>upload_max_filesize: <code>513M</code></li>
<li>post_max_size: <code>513M</code></li>
<li>memory_limit: <code>512M</code></li>
</ul>
<p>Das wars ;) Nun kannst du die <link rel=dns-prefetch href=//owncloud.org /> <a href="http://owncloud.org/sync-clients/"
    title="Sync-Clients einbinden" 
     target="_blank" rel="nofollow noopener noreferrer" >
  Sync-Clients einbinden&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 D-Link DNS-320 - Auspacken und erste Bilder -  Teil 2</title>
      
      
      <link>https://wolf-u.li/test-und-review-des-d-link-dns-320-auspacken-und-erste-bilder-teil-2/</link>
      <pubDate>Sat, 18 Dec 2010 15:30:59 +1800</pubDate>
      <guid>https://wolf-u.li/test-und-review-des-d-link-dns-320-auspacken-und-erste-bilder-teil-2/</guid>
      <description>&lt;p&gt;Wie bereits im &lt;a href=&#34;https://wolf-u.li/3767/test-und-review-des-d-link-dns-320-technische-daten-teil-1/&#34;
    title=&#34;vorhergehenden Beitrag&#34; 
   &gt;
  vorhergehenden Beitrag&lt;/a&gt; beschrieben habe, habe ich ein neues NAS, das &lt;link rel=dns-prefetch href=//www.amazon.de /&gt; &lt;a href=&#34;http://www.amazon.de/dp/B004AIWOXY?tag=lebendeswolfuli-21&#34;
    title=&#34;D-Link DNS-320&#34; 
     target=&#34;_blank&#34; rel=&#34;nofollow noopener noreferrer&#34; &gt;
  D-Link DNS-320&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; bei mir stehen, welches ich gerade ausgepackt habe:&lt;/p&gt;</description>
      
         <content:encoded><![CDATA[<p>Wie bereits im <a href="/3767/test-und-review-des-d-link-dns-320-technische-daten-teil-1/"
    title="vorhergehenden Beitrag" 
   >
  vorhergehenden Beitrag</a> beschrieben habe, habe ich ein neues NAS, das <link rel=dns-prefetch href=//www.amazon.de /> <a href="http://www.amazon.de/dp/B004AIWOXY?tag=lebendeswolfuli-21"
    title="D-Link DNS-320" 
     target="_blank" rel="nofollow noopener noreferrer" >
  D-Link DNS-320&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> bei mir stehen, welches ich gerade ausgepackt habe:</p>
<p><img src="/upload/2010/12/3765-D-Link-DNS-320-01.webp" alt="D-Link DNS-320" loading="lazy" title="D-Link DNS-320">
<img src="/upload/2010/12/3765-D-Link-DNS-320-02.webp" alt="D-Link DNS-320" loading="lazy" title="DNS-320 02">
Nach dem Auspacken des NAS habe ich es gleich mal mit Festplatten befüllt. Dazu muss der Deckel abgenommen werden, die Festplatten werden von oben in das NAS geschoben. Die Festplatten klemmen, wenn &ldquo;unten&rdquo; angekommen, wirklich gut und wackeln nicht im Gehäuse, was unnötige Vibrationen ausschließt.</p>
<p><img src="/upload/2010/12/3765-D-Link-DNS-320-03.webp" alt="D-Link DNS-320" loading="lazy" title="DNS-320 03">
<img src="/upload/2010/12/3765-D-Link-DNS-320-04.webp" alt="D-Link DNS-320" loading="lazy" title="DNS-320 04">
<img src="/upload/2010/12/3765-D-Link-DNS-320-05.webp" alt="D-Link DNS-320" loading="lazy" title="DNS-320 05"></p>
<p>Ein nettes Detail ist mir beim &ldquo;Einfüllen&rdquo; aufgefallen, die Festplattenschächte sind beschriftet, sodass es erkennbar ist, welche Festplatte man in welchen Schacht gesteckt hat. Wer übrigens den USB-Port sucht, der wird an der Front des NAS fündig. Hinter einer Klappe versteckt sich dieser zusammen mit dem USB-Copy-Knopf. Letzterer Erlaubt das Kopieren des USB-Stick auf das NAS. Möchte man den USB-Stick wieder abziehen, so muss man den Knopf 5 Sekunden gedrückt halten (das System führt dann den umount durch).</p>
<p><img src="/upload/2010/12/3765-D-Link-DNS-320-06.webp" alt="D-Link DNS-320" loading="lazy" title="DNS-320 06">
<img src="/upload/2010/12/3765-D-Link-DNS-320-07.webp" alt="D-Link DNS-320" loading="lazy" title="DNS-320 07"></p>
<p><a href="/3779/installation-des-fonz-fun_plug-0-5-auf-dem-d-link-dns-320-sharecenter-pulse/"
    title="Weiter zur Installation des fun_plug 0.5" 
   >
  Weiter zur Installation des fun_plug 0.5</a></p>
]]></content:encoded>
    </item>
    <item>
      <title>Test und Review des D-Link DNS-320 - Technische Daten - Teil 1</title>
      
      
      <link>https://wolf-u.li/test-und-review-des-d-link-dns-320-technische-daten-teil-1/</link>
      <pubDate>Sat, 18 Dec 2010 15:28:41 +1800</pubDate>
      <guid>https://wolf-u.li/test-und-review-des-d-link-dns-320-technische-daten-teil-1/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://wolf-u.li/upload/2010/12/3765-D-Link-DNS-320-01.webp&#34; alt=&#34;D-Link DNS-320&#34; loading=&#34;lazy&#34; title=&#34;D-Link DNS-320&#34;&gt;&lt;/p&gt;
&lt;p&gt;Vor einigen Tagen hat sich ein neues NAS bei mir eingefunden, das &lt;link rel=dns-prefetch href=//www.amazon.de /&gt; &lt;a href=&#34;http://www.amazon.de/dp/B004AIWOXY?tag=lebendeswolfuli-21&#34;
    title=&#34;D-Link DNS-320&#34; 
     target=&#34;_blank&#34; rel=&#34;nofollow noopener noreferrer&#34; &gt;
  D-Link DNS-320&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;. Im folgenden Beitrag zeige ich kurz die technischen Daten, in einem &lt;a href=&#34;https://wolf-u.li/3765/test-und-review-des-d-link-dns-320-auspacken-und-erste-bilder-teil-2/&#34;
    title=&#34;weiteren Beitrag&#34; 
   &gt;
  weiteren Beitrag&lt;/a&gt; gehe ich auf das Auspacken des Geräts ein.&lt;/p&gt;</description>
      
         <content:encoded><![CDATA[<p><img src="/upload/2010/12/3765-D-Link-DNS-320-01.webp" alt="D-Link DNS-320" loading="lazy" title="D-Link DNS-320"></p>
<p>Vor einigen Tagen hat sich ein neues NAS bei mir eingefunden, das <link rel=dns-prefetch href=//www.amazon.de /> <a href="http://www.amazon.de/dp/B004AIWOXY?tag=lebendeswolfuli-21"
    title="D-Link DNS-320" 
     target="_blank" rel="nofollow noopener noreferrer" >
  D-Link DNS-320&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>. Im folgenden Beitrag zeige ich kurz die technischen Daten, in einem <a href="/3765/test-und-review-des-d-link-dns-320-auspacken-und-erste-bilder-teil-2/"
    title="weiteren Beitrag" 
   >
  weiteren Beitrag</a> gehe ich auf das Auspacken des Geräts ein.</p>
<p>Es fasst intern zwei 3,5&quot; SATA-Festplatten mit derzeit maximal 2TB/Festplatte und kann diese in den üblichen Konfigurationen (Single/JBOD/RAID0/RAID1) konfigurieren. Neu ist, dass EXT3 standardmäßig als Dateisystem verwendet wird, was die Datensicherheit im Falle einer abrupten Beendung des Systems deutlich verbessert. Interessant ist auch die Option der &ldquo;RAID-Migration&rdquo;, was die Migration von NON-RAID auf RAID1 ermöglicht. Sehr interessant, werde ich ausprobieren. Zusätzlich wurde Scandisk und S.M.A.R.T. mit in die Firmware integriert, die Tests lassen sich sogar regelmäßig ausführen (mit Ergebnis per Mail).</p>
<p>Die mitgelieferte Firmware ist sowieso recht umfangreich. Neben dem üblichen Samba-Server, welche die Konfiguration von 64 Usern, 10 Gruppen, 64 Freigaben und 64 gleichzeitigen Verbindungen erlaubt, sind auch weitere Server an Board:</p>
<ul>
<li>NFS-Server</li>
<li>AFP-Server</li>
<li>FTP-Server (inklusive SSL/TLS und FXP-Unterstüzung)</li>
<li>UPNP-Server</li>
<li>iTunes-Server</li>
<li>Web-Server</li>
<li>MySQL-Server</li>
</ul>
<p>Zudem ist wieder ein Bittorrent-Client an Board. Auch der Downloader, welcher nun ordentliches Scheduling und viele Sonderoptionen bietet, ist wieder mit eingebaut.</p>
<p>Zum Thema Stromverbrauch gibt D-Link für den Schlafmodus eine Aufnahme von 8,2Watt, für den normalen Betrieb eine Aufnahme von 15,7Watt an. Hierzu kommen dann noch die Daten der Festplatten, da muss man wohl noch einige Watt (je nach Platten) drauf rechnen. Versorgt wird das NAS über ein kleines externes Netzteil, welches bei 12V stolze 4A ausgibt.</p>
<p>Betrieben werden sollte das NAS bei 0-40°C mit 5-90% Luftfreuchtigkeit, die Lagerung ist bei -20-70°C erlaubt. Das ist wichtig für alle die das NAS auf dem Dachboden oder im Keller stehen haben :)</p>
<p>Die ARM-CPU ist mit 800Mhz ein Renner, dem dann 128MB Ram zur Seite stehen. Details aus <link rel=dns-prefetch href=//nas-tweaks.net /> <a href="https://nas-tweaks.net/108/output-of-proccpuinfo-on-the-d-link-dns-320/"
    title="/proc/cpuinfo" 
     target="_blank" rel="nofollow noopener noreferrer" >
  /proc/cpuinfo&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>, der <link rel=dns-prefetch href=//nas-tweaks.net /> <a href="https://nas-tweaks.net/115/output-of-procmeminfo-on-the-d-link-dns-320/"
    title="/proc/meminfo" 
     target="_blank" rel="nofollow noopener noreferrer" >
  /proc/meminfo&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> und der <link rel=dns-prefetch href=//nas-tweaks.net /> <a href="https://nas-tweaks.net/116/output-of-dmesg-on-the-d-link-dns-320/"
    title="dmesg" 
     target="_blank" rel="nofollow noopener noreferrer" >
  dmesg&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>-Ausgabe gibts bei meiner englischsprachigen Seite NAS-Tweaks.net.</p>
<p><a href="/3765/test-und-review-des-d-link-dns-320-auspacken-und-erste-bilder-teil-2/"
    title="Weiter zu den Bildern" 
   >
  Weiter zu den Bildern</a></p>
]]></content:encoded>
    </item>
    <item>
      <title>fun_plug auf dem D-Link DNS-343</title>
      
      
      <link>https://wolf-u.li/fun_plug-auf-dem-d-link-dns-343/</link>
      <pubDate>Sat, 02 May 2009 08:39:39 +0200</pubDate>
      <guid>https://wolf-u.li/fun_plug-auf-dem-d-link-dns-343/</guid>
      <description>&lt;p&gt;Wie sich im &lt;link rel=dns-prefetch href=//forum.nas-tweaks.net /&gt; &lt;a href=&#34;http://forum.nas-tweaks.net/&#34;
    title=&#34;Forum&#34; 
     target=&#34;_blank&#34; rel=&#34;nofollow noopener noreferrer&#34; &gt;
  Forum&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; meiner englischsprachigen Seite &lt;link rel=dns-prefetch href=//nas-tweaks.net /&gt; &lt;a href=&#34;https://nas-tweaks.net/&#34;
    title=&#34;NAS-Tweaks.net&#34; 
     target=&#34;_blank&#34; rel=&#34;nofollow noopener noreferrer&#34; &gt;
  NAS-Tweaks.net&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; zum Thema fun_plug &lt;link rel=dns-prefetch href=//forum.nas-tweaks.net /&gt; &lt;a href=&#34;http://forum.nas-tweaks.net/modifications-and-addons/ssh-%28access-denied%29-and-telnet-andgtlogin-%28incorrect-login%29-after-reboot/&#34;
    title=&#34;ergeben hat&#34; 
     target=&#34;_blank&#34; rel=&#34;nofollow noopener noreferrer&#34; &gt;
  ergeben hat&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;, ist nun die Installation von fun_plug 0.5 auf dem D-Link DNS-343 ohne &amp;ldquo;segmentation fault&amp;rdquo; möglich. Wie Fonz herausgefunden hatte, lag es möglicherweise an der einem Firmwareproblem, welches in der Version 1.03 behoben ist.&lt;/p&gt;</description>
      
         <content:encoded><![CDATA[<p>Wie sich im <link rel=dns-prefetch href=//forum.nas-tweaks.net /> <a href="http://forum.nas-tweaks.net/"
    title="Forum" 
     target="_blank" rel="nofollow noopener noreferrer" >
  Forum&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> meiner englischsprachigen Seite <link rel=dns-prefetch href=//nas-tweaks.net /> <a href="https://nas-tweaks.net/"
    title="NAS-Tweaks.net" 
     target="_blank" rel="nofollow noopener noreferrer" >
  NAS-Tweaks.net&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> zum Thema fun_plug <link rel=dns-prefetch href=//forum.nas-tweaks.net /> <a href="http://forum.nas-tweaks.net/modifications-and-addons/ssh-%28access-denied%29-and-telnet-andgtlogin-%28incorrect-login%29-after-reboot/"
    title="ergeben hat" 
     target="_blank" rel="nofollow noopener noreferrer" >
  ergeben hat&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>, ist nun die Installation von fun_plug 0.5 auf dem D-Link DNS-343 ohne &ldquo;segmentation fault&rdquo; möglich. Wie Fonz herausgefunden hatte, lag es möglicherweise an der einem Firmwareproblem, welches in der Version 1.03 behoben ist.</p>
<p>Anschließend kann die <a href="/1426/fun_plug-05-auf-dem-conceptronic-ch3snas-bzw-d-link-dns-323-installieren/"
    title="reguläre Installation" 
   >
  reguläre Installation</a> des fun_plug durchgeführt werden. Allerdings muss statt der mitgelieferten store-passwd.sh eine <a href="/u/121"
    title="modifizierte store-passwd.sh" 
   >
  modifizierte store-passwd.sh</a> verwendet werden, da sonst die Passwörter nicht korrekt abgelegt werden. Diese stammt ebenfalls von Fonz aus <link rel=dns-prefetch href=//forum.nas-tweaks.net /> <a href="http://forum.nas-tweaks.net/modifications-and-addons/ssh-%28access-denied%29-and-telnet-andgtlogin-%28incorrect-login%29-after-reboot/msg170/#msg170#msg170"
    title="diesem Beitrag" 
     target="_blank" rel="nofollow noopener noreferrer" >
  diesem Beitrag&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>
<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">wget http://wolf-u.li/u/121 -O /ffp/sbin/store-passwd.sh
</span></span><span class="line"><span class="cl">store-passwd.sh
</span></span></code></pre></td></tr></table>
</div>
</div>]]></content:encoded>
    </item>
    <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>Firmware 1.05 für das Conceptronic CH3SNAS ist erschienen</title>
      
      
      <link>https://wolf-u.li/firmware-105-fuer-das-conceptronic-ch3snas-ist-erschienen/</link>
      <pubDate>Fri, 02 Jan 2009 12:44:45 +0200</pubDate>
      <guid>https://wolf-u.li/firmware-105-fuer-das-conceptronic-ch3snas-ist-erschienen/</guid>
      <description>&lt;p&gt;Heute ist die Firmware 1.05 für das &lt;a href=&#34;https://wolf-u.li/tag/conceptronic/&#34;
    title=&#34;Conceptronic&#34; 
   &gt;
  Conceptronic&lt;/a&gt; &lt;a href=&#34;https://wolf-u.li/tag/ch3snas/&#34;
    title=&#34;CH3SNAS&#34; 
   &gt;
  CH3SNAS&lt;/a&gt; erschienen. Es ist eine Final-Version und bringt &lt;link rel=dns-prefetch href=//www.aroundmyroom.com /&gt; &lt;a href=&#34;http://www.aroundmyroom.com/2009/01/02/ch3snas-105-firmware/&#34;
    title=&#34;laut Dennis&#34; 
     target=&#34;_blank&#34; rel=&#34;nofollow noopener noreferrer&#34; &gt;
  laut Dennis&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; und den RELEASE-Notes folgende Features mit:&lt;/p&gt;</description>
      
         <content:encoded><![CDATA[<p>Heute ist die Firmware 1.05 für das <a href="/tag/conceptronic/"
    title="Conceptronic" 
   >
  Conceptronic</a> <a href="/tag/ch3snas/"
    title="CH3SNAS" 
   >
  CH3SNAS</a> erschienen. Es ist eine Final-Version und bringt <link rel=dns-prefetch href=//www.aroundmyroom.com /> <a href="http://www.aroundmyroom.com/2009/01/02/ch3snas-105-firmware/"
    title="laut Dennis" 
     target="_blank" rel="nofollow noopener noreferrer" >
  laut Dennis&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> und den RELEASE-Notes folgende Features mit:</p>
<ol>
<li>FTP Server unterstützt Koreanische und Türkische Zeichensätze</li>
<li>Festplattengröße bis 1,5 TB nun unterstützt</li>
<li>Fanscript aktualisiert</li>
<li>RAID Migration: Normal zu RAID 1</li>
<li>Zeit-Drift-Fehler behoben: Wenn Sommer/Winterzeit aktiviert war, wurde die Zeit nach jedem Reboot um eine Stunde nach vorne gestellt</li>
<li>Unterstützung für <code>.info</code>-Domains bei den Email-Alarmen</li>
<li>Unterstützung für komplexere Passwörter aus der den folgenden fünf Buchstaben: @ : / \ %</li>
<li>Erste HDD konnte nicht &ldquo;schlafen&rdquo; gehen</li>
<li>Auto-Refresh-Timer entfernt, nutzt jetzt Inotify für UPnP AV und iTunes Server Auto-Refresh.</li>
</ol>
<p>Zum <link rel=dns-prefetch href=//download.conceptronic.net /> <a href="http://download.conceptronic.net/Firmware/C05-321_CH3SNAS_Firmware_Update_v1.05.zip"
    title="Download" 
     target="_blank" rel="nofollow noopener noreferrer" >
  Download&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>Wie immer der Updatevorgang:</p>
<ul>
<li>Telnet aktivieren (<code>chmod a+x /ffp/start/telnetd.sh</code>)</li>
<li>Datei fun_plug umbenennen, sodass das fun_plug deaktiviert wird</li>
<li>Firmware-Update aufspielen</li>
<li>Auf Werkseinstellungen zurücksetzen</li>
<li>fun_plug zurück umstellen</li>
<li>Per Telnet einloggen und Root-Passwort neu setzen</li>
<li>store-passwd.sh zum aktualisieren des internen Passwortspeichers aufrufen</li>
<li>Fehler hier berichten!</li>
</ul>
<p>Eine Sache noch für 1,5TB-HDD&rsquo;s: Bitte sicherstellen, dass diese Festplatten komplett leer (Ohne Partitionen) sind, bevor man diese einsetzt!</p>
<p>Danke an <link rel=dns-prefetch href=//www.aroundmyroom.com /> <a href="http://www.aroundmyroom.com/2009/01/02/ch3snas-105-firmware/"
    title="Dennis" 
     target="_blank" rel="nofollow noopener noreferrer" >
  Dennis&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ür die Benachrichtigung!</p>
<p><strong>Update:</strong></p>
<ul>
<li>Bisher entdeckte Fehler:
<ul>
<li>Geschwindigkeit des Netzwerks wird immer als 0 angezeigt</li>
<li>Uptime ist viel zu hoch (14247 Tage)</li>
</ul>
</li>
<li>Uname -a: <code>Linux ULINAS 2.6.12.6-arm1 #30 Tue Dec 30 18:14:59 CST 2008 armv5tejl unknown</code></li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>Fun_plug 0.5 auf dem Conceptronic CH3SNAS bzw. D-Link DNS-323 auf der Festplatte installieren</title>
      
      
      <link>https://wolf-u.li/fun_plug-05-auf-dem-conceptronic-ch3snas-bzw-d-link-dns-323-installieren/</link>
      <pubDate>Sat, 05 Jul 2008 18:11:30 +0500</pubDate>
      <guid>https://wolf-u.li/fun_plug-05-auf-dem-conceptronic-ch3snas-bzw-d-link-dns-323-installieren/</guid>
      <description>&lt;p&gt;&lt;strong&gt;Dieses Tutorial bezieht sich auf fun_plug 0.5, welches veraltet ist und daher nicht mehr genutzt werden sollte! Dieses Tutorial ist daher ebenfalls veraltet! Bitte sehe &lt;a href=&#34;https://wolf-u.li/nas/tutorials/ffp/&#34;
    title=&#34;hier&#34; 
   &gt;
  hier&lt;/a&gt; nach den aktuellen Tutorials!&lt;/strong&gt;
Diese Anleitung wurde auf den folgenden NAS getestet: Conceptronic CH3SNAS, D-Link DNS-323, D-Link DNS-313
Tutorials zu anderen Geräten sind &lt;a href=&#34;https://wolf-u.li/nas/tutorials/ffp/0-5-installation/&#34;
    title=&#34;hier&#34; 
   &gt;
  hier&lt;/a&gt; zu finden.
Auf dem Conceptronic CH3SNAS läuft ein kleines Linux, welches sich mittels einer Datei namens fun_plug erweitern lässt. Diese Datei wird bei jeden Start des NAS wieder aufgerufen und kann so zusätzliche Aufgaben erfüllen. Beispielsweise kann man so Dateien kopieren und Programme wie Webserver, SSH-Server und Rsync (für Backups) aufrufen.&lt;/p&gt;</description>
      
         <content:encoded><![CDATA[<p><strong>Dieses Tutorial bezieht sich auf fun_plug 0.5, welches veraltet ist und daher nicht mehr genutzt werden sollte! Dieses Tutorial ist daher ebenfalls veraltet! Bitte sehe <a href="/nas/tutorials/ffp/"
    title="hier" 
   >
  hier</a> nach den aktuellen Tutorials!</strong>
Diese Anleitung wurde auf den folgenden NAS getestet: Conceptronic CH3SNAS, D-Link DNS-323, D-Link DNS-313
Tutorials zu anderen Geräten sind <a href="/nas/tutorials/ffp/0-5-installation/"
    title="hier" 
   >
  hier</a> zu finden.
Auf dem Conceptronic CH3SNAS läuft ein kleines Linux, welches sich mittels einer Datei namens fun_plug erweitern lässt. Diese Datei wird bei jeden Start des NAS wieder aufgerufen und kann so zusätzliche Aufgaben erfüllen. Beispielsweise kann man so Dateien kopieren und Programme wie Webserver, SSH-Server und Rsync (für Backups) aufrufen.</p>
<p>&ldquo;fonz&rdquo;, ein findiger Entwickler aus Berlin hat nun das fun_plug der Version 0.5 im <link rel=dns-prefetch href=//forum.dsmg600.info /> <a href="http://forum.dsmg600.info/f3-DNS323-General-Discussion.html"
    title="DNS-323-Forum" 
     target="_blank" rel="nofollow noopener noreferrer" >
  DNS-323-Forum&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> veröffentlicht.</p>
<p><strong>Ich stelle nachfolgend meine persönlichen Erfahrungen beim Einsatz dieses fun_plugs sowie eine eingedeutsche Installationsanweisung bereit. Zudem weise ich darauf hin, dass ich nicht für eventuelle Schäden, Datenverluste oder andere Probleme haften werde. Das Verwenden dieses Artikels geschieht auf eigene Gefahr!</strong>
Zunächst muss sichergestellt sein, dass das NAS über eine gültige Netzwerkkonfiguration (&quot;<em>Setup</em>&quot; -&gt; &ldquo;<em>LAN</em>&rdquo;) mit Gateway &amp; DNS-Server verfügt. Wird die IP-Adresse automatisch bezogen, ist das im Regelfall korrekt eingestellt.
Nun muss man das fun_plug heruntergeladen wurden. Dieses ist über das <link rel=dns-prefetch href=//www.inreto.de /> <a href="http://www.inreto.de/dns323/fun-plug/0.5/"
    title="Repository" 
     target="_blank" rel="nofollow noopener noreferrer" >
  Repository&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> zu beziehen. Für die Installation werden zwei Dateien benötigt: <link rel=dns-prefetch href=//www.inreto.de /> <a href="http://www.inreto.de/dns323/fun-plug/0.5/fun_plug"
    title="fun_plug" 
     target="_blank" rel="nofollow noopener noreferrer" >
  fun_plug&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> und <link rel=dns-prefetch href=//www.inreto.de /> <a href="http://www.inreto.de/dns323/fun-plug/0.5/fun_plug.tgz"
    title="fun_plug.tgz" 
     target="_blank" rel="nofollow noopener noreferrer" >
  fun_plug.tgz&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>.
Ich raten zum Lesen der <link rel=dns-prefetch href=//www.inreto.de /> <a href="http://www.inreto.de/dns323/fun-plug/0.5/README.txt"
    title="README" 
     target="_blank" rel="nofollow noopener noreferrer" >
  README&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> mit einer ausführlichen Installationsanweisung.</p>
<p>Los gehts mit dem kopieren der beiden Dateien <em>fun_plug</em> und <em>fun_plug.tgz</em> auf das Volume_1 des NAS.</p>
<p><img src="/upload/2008/07/1426-login-as-root.webp" alt="Login as Root" loading="lazy" title="1426-login-as-root"></p>
<p>Nach dem Reboot ist automatisch telnet aktiviert. Zunächst sollte man sich nun mit einem geeigneten Telnet-Programm (unter Linux einfach nur &ldquo;ssh&rdquo; mit korrektem Port, unter Windows verwende ich <link rel=dns-prefetch href=//www.chiark.greenend.org.uk /> <a href="http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html"
    title="Putty" 
     target="_blank" rel="nofollow noopener noreferrer" >
  Putty&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> mit der Protokolleinstellung &ldquo;telnet&rdquo;) auf dem NAS einloggen. Bitte für den folgenden Schritt einfach mal das Bild links ansehen.</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-plaintext" data-lang="plaintext"><span class="line"><span class="cl">/ #
</span></span></code></pre></td></tr></table>
</div>
</div><p>Wenn das obige erscheint, ist man eingeloggt und kann fortfahren.</p>
<p>Als eine der ersten Aktionen wird nun /etc/shadow mittels pwconv erstellt. Das Passwort wird anschließend mittels &ldquo;passwd&rdquo; geändert:</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">pwconv
</span></span><span class="line"><span class="cl">passwd
</span></span></code></pre></td></tr></table>
</div>
</div><p>Wenn das neue Passwort zweimal eingegeben wurde, muss man den root-User noch aktivieren und dessen Home-Verzeichnis umlegen:</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">usermod -s /ffp/bin/sh root
</span></span><span class="line"><span class="cl">mkdir -p /ffp/home/root/
</span></span><span class="line"><span class="cl">usermod -d /ffp/home/root/ root
</span></span></code></pre></td></tr></table>
</div>
</div><p>Nun kann man den Login nun direkt testen. Hierzu gibt man im Anschluss:</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">login
</span></span></code></pre></td></tr></table>
</div>
</div><p>ein. Wenns nicht klappt, einfach die Prozedur ab &ldquo;passwd&rdquo; wiederholen.</p>
<p>Wenn alles geklappt hat, dann muss das Passwort in den internen Flash-Speicher gespeichert 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">store-passwd.sh
</span></span></code></pre></td></tr></table>
</div>
</div><p>Nun wird der SSH-Server aktiviert, da telnet bereits als sehr unsicher (v.a. aufgrund des unverschlüsselten Verkehrs) bekannt ist:</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">chmod a+x /ffp/start/sshd.sh
</span></span><span class="line"><span class="cl">sh /ffp/start/sshd.sh start
</span></span></code></pre></td></tr></table>
</div>
</div><p><strong>Nun den Telnet-Client nicht schließen!</strong> Öffne gleichzeitig einen SSH-Client und versuche eine Verbindung zum NAS. Diese wird erfolgreich sein.</p>
<p>Nun kann der Telnet-Server deaktiviert 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">chmod -x /ffp/start/telnetd.sh
</span></span></code></pre></td></tr></table>
</div>
</div><p>Auf der Festplatte (Bei mir unter &ldquo;<code>/mnt/HD_a2/</code>&rdquo;) ist ein Verzeichnis namens &ldquo;ffp&rdquo; angelegt worden. Darin befindet sich ein Unterverzeichnis &ldquo;start&rdquo;, in dem verschiedene Startdateien für diverse Dienste liegen. Typischerweise weisen davon nur wenige das Attribut <em>X</em>, also <em>Executable</em>. Nur diese werden auch beim Start des fun_plug ausgeführt. Ein paar Zeilen weiter oben habe ich &ldquo;<code>chmod +x sshd.sh</code>&rdquo; angeordnet. Diese Anweisung markiert eine Datei als ausführbar. Alle Dateien im <em>Start</em>-Ordner, die als executable markiert sind, werden vom fun_plug aufgerufen.</p>
<p>Weitere Software kann man nun einfach installieren:</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">mkdir -p /ffp/pkg/
</span></span><span class="line"><span class="cl"><span class="nb">cd</span> /ffp/pkg/
</span></span><span class="line"><span class="cl">wget http://wolf-u.li/u/173/ -O /ffp/pkg/updater.sh
</span></span><span class="line"><span class="cl">chmod a+x /ffp/pkg/updater.sh
</span></span><span class="line"><span class="cl">sh /ffp/pkg/updater.sh
</span></span></code></pre></td></tr></table>
</div>
</div><p>Mit diesen Befehlen habe ich einen Ordner namens &ldquo;<em>pkg</em>&rdquo; im Ordner &ldquo;<em>ffp</em>&rdquo; erstellt. Zusätzlich wurde nun der Ordner &ldquo;<em>packages</em>&rdquo; angelegt, der alle kompilierten Pakete von fonz enthält.</p>
<p>Nun kann man Pakete installieren. Entweder man installiert nun einzelne Pakete (Achtung abhängigkeiten beachten!):</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">funpkg -i paketname.tgz
</span></span></code></pre></td></tr></table>
</div>
</div><p>Oder einfach alle installieren, damit sind dann alle Abhängigkeiten gelöst (Empfohlen!):</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="nb">cd</span> /mnt/HD_a2/ffp/pkg/packages/
</span></span><span class="line"><span class="cl">funpkg -i *.tgz
</span></span></code></pre></td></tr></table>
</div>
</div><p>Ein Wort noch zur Paketverwaltung, das Programm funpkg bedient man wie folgt:</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">Copyright <span class="o">(</span>c<span class="o">)</span> <span class="m">2008</span> Tobias Poschwatta
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">Install: funpkg -i
</span></span><span class="line"><span class="cl">Reinstall: funpkg -I
</span></span><span class="line"><span class="cl">Upgrade: funpkg -u
</span></span><span class="line"><span class="cl">Remove: funpkg -r
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">Other options:
</span></span><span class="line"><span class="cl"> -D  System root directory <span class="o">(</span>default: /<span class="o">)</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>Bei Fragen einfach melden.</p>
]]></content:encoded>
    </item>
    <item>
      <title>NTP-Zeitabgleich mit dem fun_plug 0.5 auf dem Conceptronic CH3SNAS bzw. D-Link DNS-323</title>
      
      
      <link>https://wolf-u.li/ntp-zeitabgleich-mit-dem-fun_plug-05-auf-dem-conceptronic-ch3snas-bzw-d-link-dns-323/</link>
      <pubDate>Sun, 06 Jul 2008 15:26:37 +0600</pubDate>
      <guid>https://wolf-u.li/ntp-zeitabgleich-mit-dem-fun_plug-05-auf-dem-conceptronic-ch3snas-bzw-d-link-dns-323/</guid>
      <description>&lt;p&gt;&lt;strong&gt;Dieses Tutorial bezieht sich auf fun_plug 0.5, welches veraltet ist und daher nicht mehr genutzt werden sollte! Dieses Tutorial ist daher ebenfalls veraltet! Bitte sehe &lt;a href=&#34;https://wolf-u.li/nas/tutorials/ffp/&#34;
    title=&#34;hier&#34; 
   &gt;
  hier&lt;/a&gt; nach den aktuellen Tutorials!&lt;/strong&gt;
Das neue fun_plug 0.5 von fonz bringt viele Neuerungen, unter anderem auch eine neue Zeitsyncronisierung. Das alte Tutorial würde zwar weiter funktionieren, jedoch geht es nun deutlich leichter.&lt;/p&gt;
&lt;p&gt;Zunächst muss das &lt;a href=&#34;https://wolf-u.li/1426/fun_plug-05-auf-dem-conceptronic-ch3snas-bzw-d-link-dns-323-installieren/&#34;
    title=&#34;fun_plug 0.5 installiert werden&#34; 
   &gt;
  fun_plug 0.5 installiert werden&lt;/a&gt;. Nun loggt man sich auf den NAS ein und aktiviert den automatischen Zeitabgleich für die deutsche Zeitzone indem man zunächst die Datei fun_plug.local kopiert und die folgenden Zeilen dann einfügt:&lt;/p&gt;</description>
      
         <content:encoded><![CDATA[<p><strong>Dieses Tutorial bezieht sich auf fun_plug 0.5, welches veraltet ist und daher nicht mehr genutzt werden sollte! Dieses Tutorial ist daher ebenfalls veraltet! Bitte sehe <a href="/nas/tutorials/ffp/"
    title="hier" 
   >
  hier</a> nach den aktuellen Tutorials!</strong>
Das neue fun_plug 0.5 von fonz bringt viele Neuerungen, unter anderem auch eine neue Zeitsyncronisierung. Das alte Tutorial würde zwar weiter funktionieren, jedoch geht es nun deutlich leichter.</p>
<p>Zunächst muss das <a href="/1426/fun_plug-05-auf-dem-conceptronic-ch3snas-bzw-d-link-dns-323-installieren/"
    title="fun_plug 0.5 installiert werden" 
   >
  fun_plug 0.5 installiert werden</a>. Nun loggt man sich auf den NAS ein und aktiviert den automatischen Zeitabgleich für die deutsche Zeitzone indem man zunächst die Datei fun_plug.local kopiert und die folgenden Zeilen dann einfügt:</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">cp /ffp/etc/examples/fun_plug.local /ffp/etc/fun_plug.local
</span></span></code></pre></td></tr></table>
</div>
</div><p>Anschließend muss man (beispielsweise mit dem Editor &ldquo;<a href="/1665/editor-nano-fuer-das-fun_plug-05-auf-dem-conceptronic-ch3snas-bzw-d-link-dns-323/"
    title="nano" 
   >
  nano</a>&rdquo;) die benötigten Eintragungen machen. Evtl sind die ersten Zeilen auch schon bereits vorhanden.</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="c1"># This removes firmware cronjobs that interfere with ntpd.</span>
</span></span><span class="line"><span class="cl">crontab -l <span class="p">|</span> grep -vw <span class="s1">&#39;/usr/sbin/daylight&#39;</span> <span class="p">|</span> grep -vw <span class="s1">&#39;stime&#39;</span> <span class="p">|</span> grep -vw <span class="s1">&#39;/usr/sbin/rtc&#39;</span> <span class="p">|</span> crontab -
</span></span><span class="line"><span class="cl"><span class="c1">#Now start the ntp every hour</span>
</span></span><span class="line"><span class="cl"><span class="nb">echo</span> <span class="s2">&#34;1 * * * * /usr/sbin/sntp -r -P no de.pool.ntp.org&#34;</span> &gt;&gt; /var/spool/cron/crontabs/root
</span></span><span class="line"><span class="cl"><span class="c1"># force a cronjob update</span>
</span></span><span class="line"><span class="cl"><span class="nb">echo</span> <span class="s2">&#34;root&#34;</span> &gt;&gt; /var/spool/cron/crontabs/cron.update
</span></span></code></pre></td></tr></table>
</div>
</div><p><em>Hinweis: Mit einem Klick auf &ldquo;Plain Text&rdquo; lässt sichs besser kopieren.</em></p>
<p>Um die Zeitzone zu ändern muss man in der <code>/ffp/etc/fun_plug.local</code> den richtigen String eintragen, momentan ist dort &ldquo;<code>CET-1CEST-2,M3.5.0/02:00:00,M10.5.0/03:00:00</code>&rdquo; unter <em>timezone</em> eingetragen. Alle String sind <link rel=dns-prefetch href=//nas-tweaks.net /> <a href="https://nas-tweaks.net/77/fixing-the-ntp-time-synchronization-with-fonz-funplug-0-5-for-ch3snas-ch3mnas-dns-323-and-many-more/#Appendix:_Example_Timezone_Strings#Appendix:_Example_Timezone_Strings"
    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> einzusehen.</p>
]]></content:encoded>
    </item>
    <item>
      <title>ProFTPd (mit SSL/TLS) auf dem Conceptronic CH3SNAS bzw. D-Link DNS-323</title>
      
      
      <link>https://wolf-u.li/proftpd-mit-ssltls-auf-dem-conceptronic-ch3snas-bzw-d-link-dns-323/</link>
      <pubDate>Thu, 25 Dec 2008 22:43:27 +2500</pubDate>
      <guid>https://wolf-u.li/proftpd-mit-ssltls-auf-dem-conceptronic-ch3snas-bzw-d-link-dns-323/</guid>
      <description>&lt;p&gt;Ich bin gebeten worden, doch bitte ein Tutorial bezüglich eines Ersatz-FTP-Servers mit SSL-Verschlüsselung zu verfassen. Diesem Wunsch komme ich gerne nach und zeige nun im folgenden, wie man ProFTPd einrichtet. Trotzdessen würde ich gerne drauf hinweisen, dass die internen FTP-Server des CH3SNAS und DNS-323 bereits AUTH TLS (FTPES) zur Verschlüsselung des Loginvorgangs unterstützen! Jedoch ist während dem Transfer im Datenstrom KEINE Verschlüsselung an, nur der Kontrollkanal wird verschlüsselt!
Ein Wort der Warnung noch: Leider bietet die CPU des NAS in Verbindung mit ProFTPd nur eine Geschwindigkeit von etwa 1,5MB/s.
&lt;strong&gt;fun_plug 0.5 ist veraltet und sollte nicht mehr genutzt werden! Dieses Tutorial ist daher ebenfalls veraltet! Bitte sehe &lt;a href=&#34;https://wolf-u.li/nas/tutorials/ffp/&#34;
    title=&#34;hier&#34; 
   &gt;
  hier&lt;/a&gt; nach den aktuellen Tutorials!&lt;/strong&gt;&lt;/p&gt;</description>
      
         <content:encoded><![CDATA[<p>Ich bin gebeten worden, doch bitte ein Tutorial bezüglich eines Ersatz-FTP-Servers mit SSL-Verschlüsselung zu verfassen. Diesem Wunsch komme ich gerne nach und zeige nun im folgenden, wie man ProFTPd einrichtet. Trotzdessen würde ich gerne drauf hinweisen, dass die internen FTP-Server des CH3SNAS und DNS-323 bereits AUTH TLS (FTPES) zur Verschlüsselung des Loginvorgangs unterstützen! Jedoch ist während dem Transfer im Datenstrom KEINE Verschlüsselung an, nur der Kontrollkanal wird verschlüsselt!
Ein Wort der Warnung noch: Leider bietet die CPU des NAS in Verbindung mit ProFTPd nur eine Geschwindigkeit von etwa 1,5MB/s.
<strong>fun_plug 0.5 ist veraltet und sollte nicht mehr genutzt werden! Dieses Tutorial ist daher ebenfalls veraltet! Bitte sehe <a href="/nas/tutorials/ffp/"
    title="hier" 
   >
  hier</a> nach den aktuellen Tutorials!</strong></p>
<p>Das Tutorial setzt voraus, dass <a href="/1426/fun_plug-05-auf-dem-conceptronic-ch3snas-bzw-d-link-dns-323-installieren/"
    title="fun_plug" 
   >
  fun_plug</a> installiert wurde und mein Repository entsprechend der <a href="/2146/ulis-paket-repository-fuer-das-conceptronic-ch3snas-bzw-d-link-dns-323/"
    title="Anweisungen" 
   >
  Anweisungen</a> synchronisiert und aktualisiert wurde.
Die Installation gestaltet sich dann extrem einfach:</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">funpkg -i /ffp/pkg/additional/net-ftp/proftpd-*.tgz
</span></span></code></pre></td></tr></table>
</div>
</div><p>Die Datei <code>/ffp/etc/proftpd.conf</code> muss noch erstellt 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">cp /ffp/etc/examples/proftpd.conf /ffp/etc/
</span></span></code></pre></td></tr></table>
</div>
</div><p>Jetzt müssen wir noch eine zusätzliche Gruppe 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></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">groupadd nogroup
</span></span></code></pre></td></tr></table>
</div>
</div><p>Wir brauchen jetzt noch das SSL-Zertifikat:</p>
<blockquote>
<p><code>openssl req -new -x509 -days 365 -nodes -out /ffp/etc/proftpd/proftpd.cert.pem -keyout /ffp/etc/proftpd/proftpd.key.pem</code></p>
</blockquote>
<p>Anschließend werden verschiedene Fragen bezüglich des Zertifikats gestellt. Die fettgeschriebenen Antworten sind Beispiele von mir. FQDN steht dabei für den hostnamen des NAS, die Fragen ohne Antworten können auch leer gelassen.</p>
<blockquote>
<p>Country Name (2 letter code) [AU]: <strong>DE</strong>
State or Province Name (full name) [Some-State]: <strong>Germany</strong>
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]: <strong>Name der Organisation</strong>
Organizational Unit Name (eg, section) []:
Common Name (eg, YOUR name) []: <strong>FQDN</strong>
Email Address []:</p>
</blockquote>
<p>Um nun SSL/TLS zu aktivieren, müssen die Kommentare von den folgenden Zeilen in der Datei <code>/ffp/etc/proftpd.conf</code> entfernt 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></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></span><span class="line"><span class="cl">TLSEngine on
</span></span><span class="line"><span class="cl">TLSProtocol SSLv23
</span></span><span class="line"><span class="cl">TLSOptions NoCertRequest
</span></span><span class="line"><span class="cl">TLSRSACertificateFile /ffp/etc/proftpd/proftpd.cert.pem
</span></span><span class="line"><span class="cl">TLSRSACertificateKeyFile /ffp/etc/proftpd/proftpd.key.pem
</span></span><span class="line"><span class="cl">TLSVerifyClient off
</span></span><span class="line"><span class="cl">TLSRequired off
</span></span></code></pre></td></tr></table>
</div>
</div><p>Möchte man ausschließlich TLS verwenden, so muss in der letzten Zeile am Ende statt <strong>off</strong> auf <strong>on</strong> geändert werden.</p>
<p>Wie immer kann der FTP-Server nun so gestartet werden:</p>
<blockquote>
<p><code>sh /ffp/start/proftpd.sh start</code></p>
</blockquote>
<p>Die dauerhafte Aktivierung ist natürlich auch möglich:</p>
<blockquote>
<p><code>chmod a+x /ffp/start/proftpd.sh</code></p>
</blockquote>
<p>Übrigens: ProFTPd greift auf die gleichen Einstellungen wie der interne FTP-Server zu. Diesen kann man dann abschalten.</p>
<p>Das wars ;)</p>
]]></content:encoded>
    </item>
  </channel>
</rss>
