Date: Fri, 15 Apr 2016 18:23:03 +0000 (UTC) From: Bjoern Heidotting <bhd@FreeBSD.org> To: doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org Subject: svn commit: r48643 - head/de_DE.ISO8859-1/books/handbook/jails Message-ID: <201604151823.u3FIN3je034614@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: bhd Date: Fri Apr 15 18:23:03 2016 New Revision: 48643 URL: https://svnweb.freebsd.org/changeset/doc/48643 Log: Update to r44517: Rename Service Jails to a more descriptive Updating Multiple Jails. Reviewed by: bcr Differential Revision: https://reviews.freebsd.org/D5972 Modified: head/de_DE.ISO8859-1/books/handbook/jails/chapter.xml Modified: head/de_DE.ISO8859-1/books/handbook/jails/chapter.xml ============================================================================== --- head/de_DE.ISO8859-1/books/handbook/jails/chapter.xml Fri Apr 15 18:03:26 2016 (r48642) +++ head/de_DE.ISO8859-1/books/handbook/jails/chapter.xml Fri Apr 15 18:23:03 2016 (r48643) @@ -5,7 +5,7 @@ $FreeBSD$ $FreeBSDde: de-docproj/books/handbook/jails/chapter.xml,v 1.23 2011/05/25 20:42:25 jkois Exp $ - basiert auf: r44513 + basiert auf: r44517 --> <chapter xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:id="jails"> <info><title>Jails</title> @@ -504,64 +504,55 @@ jail_<replaceable>www</replaceable>_devf </sect1> <sect1 xml:id="jails-application"> - <title>Anwendung von Jails</title> + <info> + <title>Mehrere Jails aktualisieren</title> - <sect2 xml:id="jails-service-jails"> - <info><title>Service-Jails</title> <authorgroup> <author><personname><firstname>Daniel</firstname><surname>Gerzo</surname></personname><contrib>Beigetragen von </contrib></author> </authorgroup> + <authorgroup> + <author> + <personname> + <firstname>Simon</firstname> + <surname>L. B. Nielsen</surname> + </personname> + <contrib>Basierend auf einer Idee von </contrib> + </author> + </authorgroup> + <authorgroup> + <author> + <personname> + <firstname>Ken</firstname> + <surname>Tom</surname> + </personname> + <contrib>Artikel geschrieben von </contrib> + </author> + </authorgroup> </info> - - - <para>Dieser Abschnitt basiert auf einer von &a.simon.email; auf <uri xlink:href="http://simon.nitro.dk/service-jails.html">http://simon.nitro.dk/service-jails.html</uri> - präsentierten Idee und einem aktualisierten - Artikel von Ken Tom (<email>locals@gmail.com</email>). Er - beschreibt, wie ein &os;-System durch Benutzung der - &man.jail.8;-Funktion mit zusätzlichen - Sicherheitsebenen ausgestattet werden kann. Es wird dabei - angenommen, dass auf Ihrem &os;-System RELENG_6_0 oder neuer - installiert ist und dass Sie die Informationen aus den - vorangehenden Abschnitten gelesen und verstanden haben.</para> - - <sect3 xml:id="jails-service-jails-design"> - <title>Design</title> - - <para>Eines der Hauptprobleme bei Jails ist das Management - ihres Upgrade-Prozesses. Dieser neigt dazu, problematisch zu + <para>Die Verwaltung von mehreren Jails kann problematisch sein, da jede Jail bei jedem Upgrade komplett neu gebaut - werden muss. Das stellt normalerweise kein Problem dar, wenn - es sich um eine einzelne Jail handelt, da der Upgrade-Prozess - recht einfach ist. Verwenden Sie aber eine größere - Anzahl von Jails, kann dieser Prozess sehr zeitaufwendig - werden.</para> - - <warning> - <para>Diese Konfiguration erfordert fortgeschrittene - Kenntnisse im Umgang mit &os; sowie der Benutzung seiner - Funktionen. Sollten die unten vorgestellten Schritte zu - kompliziert wirken, wird empfohlen, sich einfachere Verfahren - wie <package>sysutils/ezjail</package> - anzusehen, da diese einfachere Methoden zur Administration - von Jails verwenden und daher nicht so anspruchsvoll sind - wie der hier beschriebene Aufbau.</para> - </warning> - - <para>Diese Konfiguration basiert darauf, Jails so weit als - möglich gemeinsam zu verwalten. Dies passiert auf sichere - Art und Weise durch den Einsatz von &man.mount.nullfs.8;-Mounts - (read-only). Dadurch werden Aktualisierungen erleichtert und - das Verteilen von verschiedenen Diensten auf verschiedene - Jails wird attraktiver. Außerdem bietet dieses Verfahren - einen einfachen Weg, Jails hinzuzufügen, zu entfernen und - zu aktualisieren.</para> + werden muss. Dieser Prozess kann sehr zeitaufwändig sein, + wenn eine große Anzahl von Jails erstellt oder manuell + aktualisiert werden müssen.</para> + + <para>Dieser Abschnitt beschreibt eine Methode zur Lösung + dieses Problems, indem so viel wie möglich zwischen Jails, + auf sichere Art und Weise, durch den Einsatz von + &man.mount.nullfs.8;-Mounts geteilt wird. Dadurch werden + Aktualisierungen erleichtert und das Verteilen von + verschiedenen Diensten, wie <acronym>HTTP</acronym>, + <acronym>DNS</acronym> und <acronym>SMTP</acronym>, auf + verschiedene Jails wird attraktiver. Außerdem bietet dieses + Verfahren einen einfachen Weg, Jails zu erstellen, zu + entfernen und zu aktualisieren.</para> <note> - <para>Beispiele für Dienste sind in diesem - Zusammenhang: Ein <acronym>HTTP</acronym>-Server, ein - <acronym>DNS</acronym>-Server, ein - <acronym>SMTP</acronym>-Server und so weiter.</para> + <para>Es existieren auch einfachere Lösungen, wie zum + Beispiel <package>sysutils/ezjail</package>, das + einfachere Methoden zur Administration von Jails verwendet + und daher nicht so anspruchsvoll ist, wie der hier + beschriebene Aufbau.</para> </note> <para>Die Ziele des in diesem Abschnitt beschriebenen Aufbaus @@ -570,10 +561,9 @@ jail_<replaceable>www</replaceable>_devf <itemizedlist> <listitem> <para>Das Erstellen einer einfachen und gut - verständlichen Struktur von Jails. Dies beinhaltet, - <emphasis>nicht</emphasis> für jede Jail ein - vollständiges installworld laufen lassen zu - müssen.</para> + verständlichen Jail Struktur, die es nicht + erfordert für jede Jail ein vollständiges installworld + laufen lassen zu müssen.</para> </listitem> <listitem> @@ -602,22 +592,23 @@ jail_<replaceable>www</replaceable>_devf </listitem> </itemizedlist> - <para>Wie bereits erwähnt, ist dieses Design stark darauf - angewiesen, dass eine read-only-Hauptvorlage in jede Jail - hinein gemountet wird (bekannt als - <application>nullfs</application>), und dass jede Jail - über wenigstens ein beschreibbares Gerät - verfügt. Das Gerät kann hierbei eine separate - physikalische Platte oder ein vnode unterstütztes - &man.md.4;-Gerät sein. Im folgenden Beispiel wird ein - <application>nullfs</application>-Mount genutzt, auf den - nur Lesezugriff erlaubt ist.</para> + <para>Dieses Design ist darauf angewiesen, dass eine + read-only-Hauptvorlage in jede Jail hinein gemountet wird + und dass jede Jail über wenigstens ein beschreibbares Gerät + verfügt. Das Gerät kann hierbei eine separate physikalische + Platte oder ein vnode unterstütztes Speichergerät sein. Im + folgenden Beispiel wird ein read/write + <application>nullfs</application>-Mount genutzt.</para> - <para>Das Layout des Dateisystems wird in der folgenden Liste - beschrieben:</para> + <para>Das Layout des Dateisystems ist wie folgt:</para> <itemizedlist> <listitem> + <para>Die Jails befinden sich unterhalb der + <filename>/home</filename> Partition.</para> + </listitem> + + <listitem> <para>Jede Jail wird unterhalb des <filename>/home/j</filename>-Verzeichnisses gemountet.</para> </listitem> @@ -644,49 +635,31 @@ jail_<replaceable>www</replaceable>_devf </listitem> <listitem> - <para>Jeder Jailbereich (genauer der read/write-Teilbereich - jeder Jail) wird in <filename>/home/js</filename> erstellt.</para> + <para>Der read/write-Teilbereich jeder Jail wird in + <filename>/home/js</filename> erstellt.</para> </listitem> </itemizedlist> - <note> - <para>Es wird angenommen, dass die Jails sich unterhalb des - <filename>/home</filename> Verzeichnisses - befinden. Dieser Ort kann von Ihnen natürlich - geändert werden. Allerdings müssen die Pfade - in den folgenden Beispielen dann entsprechend angepasst - werden.</para> - </note> <!-- Insert an image or drawing here to illustrate the example. --> - </sect3> - <sect3 xml:id="jails-service-jails-template"> + <sect2 xml:id="jails-service-jails-template"> <title>Erstellen der Vorlage</title> <para>Dieser Abschnitt beschreibt die Schritte, die zum - Erstellen der Hauptvorlage (die den nur lesbaren Bereich - für alle weiteren Jails darstellt) notwendig sind.</para> + Erstellen der Hauptvorlage notwendig sind.</para> - <para>Es ist immer eine gute Idee, &os; auf den aktuellen - -RELEASE-Zweig zu aktualisieren. Lesen Sie das entsprechende - <link xlink:href="&url.books.handbook;/makeworld.html">Kapitel</link> des - Handbuchs für Informationen zu diesem Thema. Selbst wenn - Sie auf eine Aktualisierung des Betriebssystems verzichten, - müssen Sie dennoch ein buildworld durchführen, um - fortfahren zu können. Außerdem müssen Sie - das Paket <package>sysutils/cpdup</package> - installiert sein. In diesem Beispiel wird &man.portsnap.8; - verwendet, um die aktuelle &os; Ports-Sammlung herunterzuladen. - Der Abschnitt <link - xlink:href="&url.books.handbook;/ports-using.html">Portsnap</link> - des Handbuchs beschreibt, wie Sie dieses Werkzeug effektiv - einsetzen.</para> + <para>Es wird empfohlen, zunächst das &os; Host-System nach + den Anweisungen in <xref linkend="makeworld"/> auf den + aktuellen -RELEASE-Zweig zu aktualisieren. Darüber hinaus + verwendet diese Vorlage <package>sysutils/cpdup</package>, + sowie <application>portsnap</application> zum herunterladen + der &os; Ports-Sammlung.</para> <procedure> <step> <para>Zuerst erstellen wir eine Verzeichnissstruktur für das read-only-Dateisystem, das die - &os;-Binärdateien für unsere Jails enthalten + &os;-Binärdateien für die Jails enthalten wird. Anschließend wechseln wir in den &os;-Quellcodebaum und installieren das read-only-Dateisystem in die (Vorlage-)Jail.</para> @@ -734,12 +707,12 @@ jail_<replaceable>www</replaceable>_devf <step> <para>Nun wird das read/write-Dateisystem mit dem - read-only-Dateisystem verlinkt. Bitte vergewissern Sie + read-only-Dateisystem verlinkt. Vergewissern Sie sich, dass die symbolischen Links an den korrekten - <filename>s/</filename> Positionen - erstellt werden. Echte Verzeichnisse oder an falschen - Positionen erstellte Verzeichnisse lassen die Installation - fehlschlagen.</para> + <filename>s/</filename> Positionen erstellt werden, weil + echte Verzeichnisse oder an falschen Positionen + erstellte Verzeichnisse die Installation fehlschlagen + lassen.</para> <screen>&prompt.root; <userinput>cd /home/j/mroot</userinput> &prompt.root; <userinput>mkdir s</userinput> @@ -760,8 +733,7 @@ jail_<replaceable>www</replaceable>_devf <programlisting>WRKDIRPREFIX?= /s/portbuild</programlisting> - <para>Ein gesetztes <literal>WRKDIRPREFIX</literal> - erlaubt es, die &os;-Ports innerhalb jeder Jail + <para>Dies erlaubt es, die &os;-Ports innerhalb jeder Jail zu kompilieren. Das Ports-Verzeichnis ist Teil des read-only System. Der angepasste Pfad des <literal>WRKDIRPREFIX</literal> macht es möglich, @@ -769,17 +741,16 @@ jail_<replaceable>www</replaceable>_devf bauen.</para> </step> </procedure> - </sect3> + </sect2> - <sect3 xml:id="jails-service-jails-creating"> + <sect2 xml:id="jails-service-jails-creating"> <title>Jails erstellen</title> - <para>Da nun eine komplette &os;-Jailvorlage vorliegt, sind wir - nun in der Lage, Jails einrichten und in - <filename>/etc/rc.conf</filename> zu konfigurieren. Dieses - Beispiel zeigt das Erstellen von drei Jails: - <quote>NS</quote>, <quote>MAIL</quote> und - <quote>WWW</quote>.</para> + <para>Die Jailvorlage kann nun verwendet werden, um die Jails + einzurichten und in <filename>/etc/rc.conf</filename> zu + konfigurieren. In diesem Beispiel werden drei Jails + erstellt: <literal>NS</literal>, <literal>MAIL</literal> + und <literal>WWW</literal>.</para> <procedure> <step> @@ -795,19 +766,13 @@ jail_<replaceable>www</replaceable>_devf /home/js/mail /home/j/mail/s nullfs rw 0 0 /home/js/www /home/j/www/s nullfs rw 0 0</programlisting> - <note> - <para>Mit der Pass-Nummer 0 markierte Partitionen werden - beim Booten des Systems nicht von &man.fsck.8; - geprüft, mit 0 als Dump-Nummer markierte Partitonen - werden von &man.dump.8; nicht gesichert. Wir wollen - nicht, dass <application>fsck</application> unsere - <application>nullfs</application>-Mounts prüft oder - dass <application>dump</application> die nur lesbaren - nullfs-Mounts unserer Jails sichert. Deshalb werden - diese Bereiche in den letzten beiden Spalten der - obenstehenden <filename>fstab</filename> mit - <quote>0 0</quote> markiert.</para> - </note> + <para>Um zu verhindern, dass + <application>fsck</application> die + <application>nullfs</application>-Mounts während des + Bootens überprüft oder dass + <application>dump</application> die Mounts sichert, + müssen die letzten beiden Spalten auf + <literal>0</literal> gesetzt werden.</para> </step> <step> @@ -830,23 +795,17 @@ jail_www_ip="62.123.43.14" jail_www_rootdir="/usr/home/j/www" jail_www_devfs_enable="YES"</programlisting> - <warning> - <para>Der Grund dafür, dass die Variablen + <para>Die Variable <varname>jail_<replaceable>name</replaceable>_rootdir</varname> - nach <filename>/usr/home</filename> - statt nach <filename>/home</filename> - zeigen, liegt darin, dass der physikalische Pfad des - <filename>/home</filename>-Verzeichnisses unter - &os; <filename>/usr/home</filename> - lautet. Die Variable + zeigt nach <filename>/usr/home</filename> statt nach + <filename>/home</filename>, da der physikalische Pfad + von <filename>/home</filename> unter &os; + <filename>/usr/home</filename> lautet. Die Variable <varname>jail_<replaceable>name</replaceable>_rootdir</varname> - darf im Pfad aber <emphasis>keinen symbolischen - Link</emphasis> enthalten, weil das Jail ansonsten - nicht gestartet werden kann. Verwenden Sie - &man.realpath.1;, um den korrekten Wert für diese - Variable zu bestimmen. Weitere Informationen finden - Sie im Security Advisory &os;-SA-07:01.jail.</para> - </warning> + darf im Pfad aber + <emphasis>keinen symbolischen Link</emphasis> + enthalten, weil das Jail ansonsten nicht gestartet + werden kann.</para> </step> <step> @@ -857,10 +816,9 @@ jail_www_devfs_enable="YES"</programlist </step> <step> - <para>Installieren Sie die read/write-Vorlage in jede - Jail. Benutzen Sie hierfür <package>sysutils/cpdup</package>, welches es - erleichtert, eine korrekte Kopie jedes Verzeichnisses - zu erstellen:</para> + <para>Installieren Sie mit + <package>sysutils/cpdup</package> die read/write-Vorlage + in jede Jail:</para> <!-- keramida: Why is cpdup required here? Doesn't cpio(1) already include adequate functionality for performing this @@ -875,9 +833,9 @@ jail_www_devfs_enable="YES"</programlist <step> <para>An dieser Stelle werden die Jails erstellt und - fü den Betrieb vorbereitet. Zuerst mounten Sie die - notwendigen Dateisysteme für jede Jail und starten - diese dann mit dem jail rc-Skript.</para> + fü den Betrieb vorbereitet. Mounten Sie zuerst die + notwendigen Dateisysteme für jede Jail. Danach starten + Sie die Jails:</para> <screen>&prompt.root; <userinput>mount -a</userinput> &prompt.root; <userinput>service jail start</userinput></screen> @@ -885,9 +843,9 @@ jail_www_devfs_enable="YES"</programlist </procedure> <para>Die Jails sollten nun laufen. Um zu prüfen, ob sie - korrekt gestartet wurden, verwenden Sie &man.jls.8;. Nach - dem Aufruf dieses Befehls sollten Sie eine Ausgabe - ähnlich der folgenden erhalten:</para> + korrekt gestartet wurden, verwenden Sie + <command>jls</command>. Die Ausgabe sollte ähnlich der + folgenden sein:</para> <screen>&prompt.root; <userinput>jls</userinput> JID IP Address Hostname Path @@ -900,30 +858,26 @@ jail_www_devfs_enable="YES"</programlist konfigurieren. Die Spalte <literal>JID</literal> gibt die Jail-Identifikationsnummer jeder laufenden Jail an. Nutzen Sie den folgenden Befehl, um administrative Aufgaben in der Jail - mit der <literal>JID</literal> 3 durchzuführen:</para> + mit der <literal>JID</literal> <literal>3</literal> + durchzuführen:</para> <screen>&prompt.root; <userinput>jexec 3 tcsh</userinput></screen> - </sect3> + </sect2> - <sect3 xml:id="jails-service-jails-upgrading"> + <sect2 xml:id="jails-service-jails-upgrading"> <title>Jails aktualisieren</title> - <para>Mit der Zeit wird es notwendig sein, das System auf - eine neuere Version von &os; zu aktualisieren. Zum einen aus - Sicherheitsgründen, zum anderen, um neu eingeführte - Funktionen nutzen zu können, die für die bestehenden - Jails sinnvoll sind. Das Design dieses Aufbaus bietet einen - einfachen Weg, bestehende Jails zu aktualisieren. Zudem - reduziert es die Downtime, da die Jails erst im allerletzten - Schritt gestoppt werden müssen. Außerdem bietet - es die Möglichkeit, zu älteren Versionen - zurückzukehren, falls irgendwelche Probleme auftreten.</para> + <para>Das Design dieses Aufbaus bietet einen einfachen Weg, + bestehende Jails zu aktualisieren, während die Ausfallzeiten + minimiert werden. Außerdem bietet es die Möglichkeit, zu + älteren Versionen zurückzukehren, falls irgendwelche + Probleme auftreten.</para> <procedure> <step> <para>Im ersten Schritt wird das Host-System aktualisiert. - Anschließend wird eine temporäre neue - read-only Vorlage <filename>/home/j/mroot2</filename> erstellt.</para> + Anschließend wird eine temporäre neue read-only Vorlage + <filename>/home/j/mroot2</filename> erstellt.</para> <screen>&prompt.root; <userinput>mkdir /home/j/mroot2</userinput> &prompt.root; <userinput>cd /usr/src</userinput> @@ -932,9 +886,9 @@ jail_www_devfs_enable="YES"</programlist &prompt.root; <userinput>cpdup /usr/src usr/src</userinput> &prompt.root; <userinput>mkdir s</userinput></screen> - <para>Der <buildtarget>installworld</buildtarget>-Durchlauf - erzeugt einige unnötige Verzeichnisse, die nun entfernt - werden sollten:</para> + <para><buildtarget>installworld</buildtarget> erzeugt + einige unnötige Verzeichnisse, die nun entfernt werden + sollten:</para> <screen>&prompt.root; <userinput>chflags -R 0 var</userinput> &prompt.root; <userinput>rm -R etc var root usr/local tmp</userinput></screen> @@ -954,13 +908,15 @@ jail_www_devfs_enable="YES"</programlist </step> <step> - <para>Nun ist es an der Zeit, die Jails zu stoppen:</para> + <para>Nun können die Jails gestoppt werden:</para> <screen>&prompt.root; <userinput>service jail stop</userinput></screen> </step> <step> - <para>Unmounten des originalen Dateisystems:</para> + <para>Hängen Sie die originalen Dateisysteme aus, da die + read/write-Systeme an das read-only System + (<filename>/s</filename>) angeschlossen sind:</para> <!-- keramida: Shouldn't we suggest a short script-based loop here, instead of tediously copying the same commands @@ -972,12 +928,6 @@ jail_www_devfs_enable="YES"</programlist &prompt.root; <userinput>umount /home/j/mail</userinput> &prompt.root; <userinput>umount /home/j/www/s</userinput> &prompt.root; <userinput>umount /home/j/www</userinput></screen> - - <note> - <para>Die read/write-Systeme sind an das read-only - System angehängt (<filename>/s</filename>), das daher zuerst - ausgehängt werden muss.</para> - </note> </step> <step> @@ -1005,12 +955,10 @@ jail_www_devfs_enable="YES"</programlist </step> </procedure> - <para>Nutzen Sie &man.jls.8; um zu prüfen, ob die Jails - korrekt gestartet wurden. Vergessen Sie nicht, innerhalb jeder - Jail <command>mergemaster</command> laufen zu lassen. Die - Konfigurationsdateien müssen (ebenso wie die - rc.d-Skripten) aktualisiert werden.</para> - </sect3> + <para>Nutzen Sie <command>jls</command> um zu prüfen, ob die + Jails korrekt gestartet wurden. Führen Sie innerhalb jeder + Jail <command>mergemaster</command> aus, damit die + Konfigurationsdateien aktualisiert werden.</para> </sect2> </sect1> </chapter>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201604151823.u3FIN3je034614>