From owner-svn-doc-head@FreeBSD.ORG Fri Mar 29 15:52:57 2013 Return-Path: Delivered-To: svn-doc-head@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 0CE80E8C; Fri, 29 Mar 2013 15:52:57 +0000 (UTC) (envelope-from bcr@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id E4829CD8; Fri, 29 Mar 2013 15:52:56 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.6/8.14.6) with ESMTP id r2TFquv2041914; Fri, 29 Mar 2013 15:52:56 GMT (envelope-from bcr@svn.freebsd.org) Received: (from bcr@localhost) by svn.freebsd.org (8.14.6/8.14.5/Submit) id r2TFqugN041911; Fri, 29 Mar 2013 15:52:56 GMT (envelope-from bcr@svn.freebsd.org) Message-Id: <201303291552.r2TFqugN041911@svn.freebsd.org> From: Benedict Reuschling Date: Fri, 29 Mar 2013 15:52:56 +0000 (UTC) To: doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org Subject: svn commit: r41322 - in head/de_DE.ISO8859-1/articles: . nanobsd X-SVN-Group: doc-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-doc-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the doc tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 29 Mar 2013 15:52:57 -0000 Author: bcr Date: Fri Mar 29 15:52:56 2013 New Revision: 41322 URL: http://svnweb.freebsd.org/changeset/doc/41322 Log: The NanoBSD article has been translated by Bjoern Heidotting and is now part of the german set of articles. Submitted by: Bjoern Heidotting Obtained from: The FreeBSD German Documentation Project Added: head/de_DE.ISO8859-1/articles/nanobsd/ head/de_DE.ISO8859-1/articles/nanobsd/Makefile (contents, props changed) head/de_DE.ISO8859-1/articles/nanobsd/article.xml (contents, props changed) Modified: head/de_DE.ISO8859-1/articles/Makefile Modified: head/de_DE.ISO8859-1/articles/Makefile ============================================================================== --- head/de_DE.ISO8859-1/articles/Makefile Fri Mar 29 14:23:12 2013 (r41321) +++ head/de_DE.ISO8859-1/articles/Makefile Fri Mar 29 15:52:56 2013 (r41322) @@ -3,7 +3,6 @@ # The FreeBSD German Documentation Project # # $FreeBSD$ -# $FreeBSDde: de-docproj/articles/Makefile,v 1.7 2010/09/18 13:58:33 bcr Exp $ # basiert auf: 1.42 SUBDIR = contributing @@ -11,6 +10,7 @@ SUBDIR+= contributing-ports SUBDIR+= explaining-bsd SUBDIR+= laptop SUBDIR+= linux-comparison +SUBDIR+= nanobsd SUBDIR+= new-users SUBDIR+= port-mentor-guidelines SUBDIR+= solid-state Added: head/de_DE.ISO8859-1/articles/nanobsd/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/de_DE.ISO8859-1/articles/nanobsd/Makefile Fri Mar 29 15:52:56 2013 (r41322) @@ -0,0 +1,29 @@ +# +# The FreeBSD Documentation Project +# The FreeBSD German Documentation Project +# +# $FreeBSD$ +# basiert auf: r39631 +# +# Article: Einführung in NanoBSD + +DOC?= article + +FORMATS?= html +WITH_ARTICLE_TOC?= YES + +INSTALL_COMPRESSED?=gz +INSTALL_ONLY_COMPRESSED?= + +# Images from the cross-document image library +IMAGES_LIB= callouts/1.png +IMAGES_LIB+= callouts/2.png +IMAGES_LIB+= callouts/3.png +IMAGES_LIB+= callouts/4.png + +SRCS= article.xml + +URL_RELPREFIX?=../../../.. +DOC_PREFIX?= ${.CURDIR}/../../.. + +.include "${DOC_PREFIX}/share/mk/doc.project.mk" Added: head/de_DE.ISO8859-1/articles/nanobsd/article.xml ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/de_DE.ISO8859-1/articles/nanobsd/article.xml Fri Mar 29 15:52:56 2013 (r41322) @@ -0,0 +1,548 @@ + + +%entities; +]> + +
+ + Einführung in NanoBSD + + + + Daniel + Gerzo + + + + + $FreeBSD$ + + + 2006 + The FreeBSD Documentation Project + + + + &tm-attrib.freebsd; + &tm-attrib.general; + + + + Dieses Dokument stellt Informationen zu den + NanoBSD Werkzeugen bereit, die dazu + verwendet werden können ein &os; Abbild für eingebettete + Systeme zu erstellen, welche auf eine Compact Flash Karte + passen (oder andere Massenspeicher). + + Übersetzt von Björn + Heidotting. + + + + + Einführung in NanoBSD + + NanoBSD + + NanoBSD ist ein Werkzeug welches + derzeit von &a.phk; entwickelt wird. Es erstellt ein &os; + Systemabbild für eingebettete Systeme, die auf eine Compact + Flash Karte passen (oder andere Massenspeicher). + + Es kann dazu benutzt werden um spezialisierte + Installationsabbilder zu bauen, entworfen für die einfache + Installation und Wartung von Systemen die als "Computer + Appliances" bekannt sind. Computer Appliances haben ihre Hard- + und Software fest verbaut, dass bedeutet alle Anwendungen sind + vorinstalliert. Die Appliance wird an ein bestehendes Netzwerk + angeschlossen und kann mit der Arbeit (fast) sofort + beginnen. + + Zu den Eigenschaften von NanoBSD + gehören: + + + + Ports und Pakete funktionieren wie in &os; — Jede + einzelne Anwendung kann auf dem + NanoBSD Abbild installiert und + benutzt werden, auf die gleiche Weise wie Sie es aus &os; + gewohnt sind. + + + + Keine fehlende Funktionalität — Wenn es möglich + ist, etwas mit &os; zu tun, ist es auch möglich, die gleiche + Sache mit NanoBSD zu tun, es sei + denn, eine oder mehrere Funktionen wurden ausdrücklich vor + dem Bau des NanoBSD Abbilds + entfernt. + + + + Zur Laufzeit ist alles read-only — Es ist sicher + den Stromstecker zu ziehen. Es besteht dann keine + Notwendigkeit, einen &man.fsck.8; nach einem nicht + ordnungsgemäßem Herunterfahren des Systems + auszuführen. + + + + Einfach zu bauen und anzupassen — Unter Verwendung + von nur einem Shell-Skript und einer Konfigurationsdatei ist + es möglich, ein reduziertes und angepasstes Abbild zu bauen, + welches jegliche Reihe von Anforderungen erfüllt. + + + + + + NanoBSD Anleitung + + + Das Design von NanoBSD + + Sobald das Abbild auf dem Medium verfügbar ist, kann + NanoBSD gebootet werden. Der + Massenspeicher ist standardmäßig in drei Teile + unterteilt: + + + + Zwei Abbild Partitionen: code#1 und + code#2. + + + + Die Partition der Konfigurationsdatei, welche zur + Laufzeit unter dem /cfg Verzeichnis gemountet + werden kann. + + + + Diese Partitionen sind im Allgemeinen read-only. + + Die /etc und + /var Verzeichnisse sind + &man.md.4; (malloc) Speicher. + + Die Partition der Konfigurationsdatei besteht unter dem + /cfg Verzeichnis. Sie + enthält Dateien für das /etc Verzeichnis und wird + direkt nach dem Botten read-only eingehangen, weshalb es + erforderlich ist geänderte Dateien von /etc zurück nach /cfg zu kopieren falls die + Änderungen nach einem Neustart bestehen bleiben + sollen. + + + Dauerhafte Änderungen in + <filename>/etc/resolv.conf</filename> vornehmen + + &prompt.root; vi /etc/resolv.conf +[...] +&prompt.root; mount /cfg +&prompt.root; cp /etc/resolv.conf /cfg +&prompt.root; umount /cfg + + + + Die /cfg + Partition sollte nur während des Bootvorgangs und zu + Änderungen an den Konfigurationsdateien gemountet + werden. + + Die /cfg + Partition jederzeit gemountet zu haben ist keine gute Idee, + besonders wenn das NanoBSD System + auf einem Massenspeicher betrieben wird, der eventuell druch + eine große Anzahl von Schreiboperationen nachteilig + beeinträchtigt wird (z. B. wenn der Dateisystem-Syncer den + Speicher mit Daten überflutet). + + + + + Ein NanoBSD Abbild erstellen + + Ein NanoBSD Abbild wird über + ein einfaches nanobsd.sh Shell-Skript + gebaut, das sich unter /usr/src/tools/tools/nanobsd + befindet. Das Skript erstellt ein Abbild, welches dann + mittels &man.dd.1; auf einen Massenspeicher kopiert werden + kann. + + Die folgenden Kommandos sind notwendig um ein + NanoBSD Abbild zu erstellen: + + &prompt.root; cd /usr/src/tools/tools/nanobsd +&prompt.root; sh nanobsd.sh +&prompt.root; cd /usr/obj/nanobsd.full +&prompt.root; dd if=_.disk.full of=/dev/da0 bs=64k + + + Wechsel in das + Basisverzeichnis des NanoBSD + Skripts. + + + + Den Bauprozess starten. + + + + Wechsel in das Verzeichnis, in dem das gebaute Abbild + liegt. + + + + NanoBSD auf einem + Massenspeicher installieren. + + + + + + Ein NanoBSD Abbild anpassen + + Dies ist wahrscheinlich das wichtigste und interessanteste + Merkmal von NanoBSD. Hierbei + werden Sie auch die meiste Zeit mit der Entwicklung von + NanoBSD verbringen. + + Der Aufruf des folgenden Kommandos wird + nanobsd.sh dazu zwingen, seine + Konfiguration aus myconf.nano aus dem + aktuellen Verzeichnis zu lesen: + + &prompt.root; sh nanobsd.sh -c myconf.nano + + Die Anpassung wird auf zwei Arten geschehen: + + + + Konfigurations-Optionen + + + + Benutzerdefinierte Funktionen + + + + + Konfigurations-Optionen + + Durch Konfigurationseinstellungen ist es möglich + Optionen zu übergeben, die sowohl die + buildworld und + installworld Phasen des + NanoBSD Bauprozesses betreffen, + sowie interne Optionen, die den Haupt-Bauprozess von + NanoBSD beeinflussen. Durch diese + Optionen ist es möglich, das System so zu reduzieren, dass + es mit wenig Platz, etwa 64 MB auskommt. Sie können die + Konfigurationsdateien dazu nutzten &os; noch weiter zu + trimmen, bis es nur noch aus dem Kernel und zwei oder drei + Dateien im Userland besteht. + + Die Konfigurationsdatei besteht aus + Konfigurations-Optionen, die die Standardwerte + überschreiben. + + + + NANO_NAME — Name des Build + (wird verwendet, um die workdir Namen zu + konstruieren). + + + + NANO_SRC — Pfad zum + Quelltextverzeichnis, das für den Bau des Abbilds + verwendet wird. + + + + NANO_KERNEL — Name der + Kernelkonfigurationsdatei, die für den Bau des Kernels + verwendet wird. + + + + CONF_BUILD — Optionen für + die buildworld Phase des + Bauprozesses. + + + + CONF_INSTALL — Optionen für + die installworld Phase des + Bauprozesses. + + + + CONF_WORLD — Optionen für + die buildworld und + installworld Phasen des + Bauprozesses. + + + + FlashDevice — Definiert den + zu benutzenden Medientyp. Überprüfen Sie die Datei + FlashDevice.sub für weitere + Informationen. + + + + + + Benutzerdefinierte Funktionen + + Mit Hilfe von Shell-Funktionen in der + Konfigurationsdatei besteht die Möglichkeit zur + Feinabstimmung von NanoBSD. Das + folgende Beispiel illustriert das Grundmodell von + benutzerdefinierten Funktionen: + + cust_foo () ( + echo "bar=baz" > \ + ${NANO_WORLDDIR}/etc/foo +) +customize_cmd cust_foo + + Ein besseres Beispiel für eine Anpassung ist folgende, + welche die Standardgröße des /etc Verzeichnisses von 5 MB + auf 30 MB ändert: + + cust_etc_size () ( + cd ${NANO_WORLDDIR}/conf + echo 30000 > default/etc/md_size +) +customize_cmd cust_etc_size + + Es gibt ein paar vordefinierte Standardfunktionen die + Sie nutzen können: + + + + cust_comconsole — + Deaktiviert &man.getty.8; auf den VGA Geräten (den + /dev/ttyv* Gerätedateien) und + ermöglicht die Nutzung der seriellen Schnittstelle COM1 + als Systemkonsole. + + + + cust_allow_ssh_root — + Erlaubt es root sich über + &man.sshd.8; anzumelden. + + + + cust_install_files — + Installiert Dateien aus dem nanobsd/Files + Verzeichnis, das einige nützliche Skripte für die + Systemverwaltung enthält. + + + + + + Pakete hinzufügen + + Durch benutzerdefinierte Funktionen können Pakete zum + NanoBSD Abbild hinzugefügt + werden. Die nachfolgende Funktion installiert alle Pakete + aus + /usr/src/tools/tools/nanobsd/packages: + + install_packages () ( +mkdir -p ${NANO_WORLDDIR}/packages +cp /usr/src/tools/tools/nanobsd/packages/* ${NANO_WORLDDIR}/packages +chroot ${NANO_WORLDDIR} sh -c 'cd packages; pkg_add -v *;cd ..;' +rm -rf ${NANO_WORLDDIR}/packages +) +customize_cmd install_packages + + + + Beispiel einer Konfigurationsdatei + + Ein komplettes Beispiel für eine Konfigurationsdatei zum + Erstellen eines benutzerdefinierten + NanoBSD Abbilds könnte folgende + sein: + + NANO_NAME=custom +NANO_SRC=/usr/src +NANO_KERNEL=MYKERNEL +NANO_IMAGES=2 + +CONF_BUILD=' +NO_KLDLOAD=YES +NO_NETGRAPH=YES +NO_PAM=YES +' + +CONF_INSTALL=' +NO_ACPI=YES +NO_BLUETOOTH=YES +NO_CVS=YES +NO_FORTRAN=YES +NO_HTML=YES +NO_LPR=YES +NO_MAN=YES +NO_SENDMAIL=YES +NO_SHAREDOCS=YES +NO_EXAMPLES=YES +NO_INSTALLLIB=YES +NO_CALENDAR=YES +NO_MISC=YES +NO_SHARE=YES +' + +CONF_WORLD=' +NO_BIND=YES +NO_MODULES=YES +NO_KERBEROS=YES +NO_GAMES=YES +NO_RESCUE=YES +NO_LOCALES=YES +NO_SYSCONS=YES +NO_INFO=YES +' + +FlashDevice SanDisk 1G + +cust_nobeastie() ( + touch ${NANO_WORLDDIR}/boot/loader.conf + echo "beastie_disable=\"YES\"" >> ${NANO_WORLDDIR}/boot/loader.conf +) + +customize_cmd cust_comconsole +customize_cmd cust_install_files +customize_cmd cust_allow_ssh_root +customize_cmd cust_nobeastie + + + + + NanoBSD aktualisieren + + The Update-Prozess von NanoBSD + ist relativ einfach: + + + + Erstellen Sie ein neues + NanoBSD Abbild. + + + + Laden Sie das neue Abbild in eine unbenutzte Partition + eines laufenden NanoBSD + Systems. + + Der wichtigste Unterschied dieses Schrittes zur ersten + NanoBSD Installation besteht + darin, das jetzt anstatt der Datei + _.disk.full (enthält ein Abbild der + gesamten Platte) die Datei + _.disk.image (enthält ein Abbild + einer einzelnen System-Partition) installiet wird. + + + + Neustart, um das System von der neu installierten + Partition zu starten. + + + + Wenn alles gut geht, ist die Aktualisierung + abgeschlossen. + + + + Wenn etwas schief läuft, starten Sie wieder in die + vorherige Partition (die das alte, funktionierende Abbild + enthält) um die System-Funktionalität so schnell wie + möglich wieder herzustellen. Beheben Sie alle Probleme des + neu gebauten Abbilds, und wiederholen Sie den + Vorgang. + + + + Um das neue Abbild auf das laufende + NanoBSD System zu installieren, ist + es möglich, entweder das updatep1 oder + updatep2 Skript im /root Verzeichnis zu verwenden, + je nachdem, von welcher Partition das aktuelle System + läuft. + + In Abhängigkeit davon welche Dienste der Host, der das + NanoBSD Abbild anbietet, und welche + Art von Transfer bevorzugt wird, bestehen eine von drei zu + prüfenden Möglichkeiten: + + + Verwendung von &man.ftp.1; + + Wenn die Übertragungsgeschwindigkeit an erster + Stelle steht, verwenden Sie dieses Beispiel: + + &prompt.root; ftp myhost +get _.disk.image "| sh updatep1" + + + + Verwendung von &man.ssh.1; + + Wenn eine sichere Übertragung bevorzugt wird, + sollten Sie die Verwendung dieses Beipiels in Betracht + ziehen: + + &prompt.root; ssh myhost cat _.disk.image.gz | zcat | sh updatep1 + + + + Verwendung von &man.nc.1; + + Verwenden Sie dieses Beispiel, wenn auf dem Remote-Host + kein &man.ftpd.8; oder &man.sshd.8; Dienst läuft: + + + + Zunächst öffnen Sie eine TCP-Listener auf dem Host + der das Abbild bereitstellt und zum Client + sendet: + + myhost&prompt.root; nc -l 2222 < _.disk.image + + + Stellen Sie sicher das der benutzte Port nicht + blockiert wird, um eingehende Verbindungen, vom + NanoBSD Host durch die + Firewall, zu ermöglichen. + + + + Verbinden Sie sich zum Host der das Abbild + bereitstellt und führen Sie das + updatep1 Skript aus: + + &prompt.root; nc myhost 2222 | sh updatep1 + + + + + +