Date: Mon, 26 May 2014 17:21:12 +0000 (UTC) From: Benedict Reuschling <bcr@FreeBSD.org> To: doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org Subject: svn commit: r44961 - head/en_US.ISO8859-1/articles/remote-install Message-ID: <201405261721.s4QHLCFv065896@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: bcr Date: Mon May 26 17:21:11 2014 New Revision: 44961 URL: http://svnweb.freebsd.org/changeset/doc/44961 Log: Whitespace fixes. Translators can ignore them. Modified: head/en_US.ISO8859-1/articles/remote-install/article.xml Modified: head/en_US.ISO8859-1/articles/remote-install/article.xml ============================================================================== --- head/en_US.ISO8859-1/articles/remote-install/article.xml Mon May 26 17:10:55 2014 (r44960) +++ head/en_US.ISO8859-1/articles/remote-install/article.xml Mon May 26 17:21:11 2014 (r44961) @@ -1,14 +1,24 @@ <?xml version="1.0" encoding="iso-8859-1"?> <!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V5.0-Based Extension//EN" "http://www.FreeBSD.org/XML/share/xml/freebsd50.dtd"> -<article xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:lang="en"> - <info><title>Remote Installation of the &os; Operating System Without a +<article xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" + xml:lang="en"> + <info> + <title>Remote Installation of the &os; Operating System Without a Remote Console</title> - - <author><personname><firstname>Daniel</firstname><surname>Gerzo</surname></personname><affiliation> - <address><email>danger@FreeBSD.org</email></address> - </affiliation></author> + <author> + <personname> + <firstname>Daniel</firstname> + <surname>Gerzo</surname> + </personname> + <affiliation> + <address> + <email>danger@FreeBSD.org</email> + </address> + </affiliation> + </author> <legalnotice xml:id="trademarks" role="trademarks"> &tm-attrib.freebsd; @@ -27,25 +37,25 @@ <abstract> <para>This article documents the remote installation of the &os; operating system when the console of the remote system is - unavailable. The main idea behind this article is the result of - a collaboration with &a.mm.email; with valuable input provided by - &a.pjd.email;.</para> + unavailable. The main idea behind this article is the result + of a collaboration with &a.mm.email; with valuable input + provided by &a.pjd.email;.</para> </abstract> </info> <sect1 xml:id="background"> <title>Background</title> - <para>There are many server hosting providers in the world, but very - few of them are officially supporting &os;. They usually provide - support for a &linux; distribution to be installed on the servers - they offer.</para> + <para>There are many server hosting providers in the world, but + very few of them are officially supporting &os;. They usually + provide support for a &linux; distribution to be installed on + the servers they offer.</para> <para>In some cases, these companies will install your preferred - &linux; distribution if you request it. Using this option, we will - attempt to install &os;. In other cases, they may offer a rescue - system which would be used in an emergency. It is possible to use - this for our purposes as well.</para> + &linux; distribution if you request it. Using this option, we + will attempt to install &os;. In other cases, they may offer a + rescue system which would be used in an emergency. It is + possible to use this for our purposes as well.</para> <para>This article covers the basic installation and configuration steps required to bootstrap a remote installation of &os; with @@ -56,18 +66,20 @@ <title>Introduction</title> <para>This section will summarize the purpose of this article and - better explain what is covered herein. The instructions included - in this article will benefit those using services provided by - colocation facilities not supporting &os;.</para> + better explain what is covered herein. The instructions + included in this article will benefit those using services + provided by colocation facilities not supporting &os;.</para> <procedure> <step> - <para>As we have mentioned in the <link linkend="background">Background</link> section, many of the - reputable server hosting companies provide some kind of rescue - system, which is booted from their <acronym>LAN</acronym> and - accessible over <application>SSH</application>. They usually - provide this support in order to help their customers fix - broken operating systems. As this article will explain, it is + <para>As we have mentioned in the <link + linkend="background">Background</link> section, many of + the reputable server hosting companies provide some kind of + rescue system, which is booted from their + <acronym>LAN</acronym> and accessible over + <application>SSH</application>. They usually provide this + support in order to help their customers fix broken + operating systems. As this article will explain, it is possible to install &os; with the help of these rescue systems.</para> <!-- XXXTR: Solaris has a restore command, something like @@ -77,10 +89,11 @@ <step> <para>The next section of this article will describe how to configure, and build minimalistic &os; on the local machine. - That version will eventually be running on the remote machine - from a ramdisk, which will allow us to install a complete &os; - operating system from an <acronym>FTP</acronym> mirror using - the <application>sysinstall</application> utility.</para> + That version will eventually be running on the remote + machine from a ramdisk, which will allow us to install a + complete &os; operating system from an + <acronym>FTP</acronym> mirror using the + <application>sysinstall</application> utility.</para> </step> <step> @@ -110,8 +123,8 @@ </listitem> <listitem> - <para>Have the &os; installation <acronym>ISO</acronym> image - or <acronym>CD</acronym> handy</para> + <para>Have the &os; installation <acronym>ISO</acronym> + image or <acronym>CD</acronym> handy</para> </listitem> </itemizedlist> </sect2> @@ -123,28 +136,29 @@ <para>Before &os; may be installed on the target system, it is necessary to build the minimal &os; operating system image which will boot from the hard drive. This way the new system can be - accessed from the network, and the rest of the installation can be - done without remote access to the system console.</para> + accessed from the network, and the rest of the installation can + be done without remote access to the system console.</para> - <para>The <application>mfsBSD</application> tool-set can be used to - build a tiny &os; image. As the name of + <para>The <application>mfsBSD</application> tool-set can be used + to build a tiny &os; image. As the name of <application>mfsBSD</application> suggests (<quote>mfs</quote> - means <quote>memory file system</quote>), the resulting image runs - entirely from a ramdisk. Thanks to this feature, the manipulation - of hard drives will not be limited, therefore it will be possible - to install a complete &os; operating system. The home page of - <application>mfsBSD</application>, at <uri xlink:href="http://people.freebsd.org/~mm/mfsbsd/">http://people.freebsd.org/~mm/mfsbsd/</uri>, includes - pointers to the latest release of the toolset.</para> + means <quote>memory file system</quote>), the resulting image + runs entirely from a ramdisk. Thanks to this feature, the + manipulation of hard drives will not be limited, therefore it + will be possible to install a complete &os; operating system. + The home page of <application>mfsBSD</application>, at <uri + xlink:href="http://people.freebsd.org/~mm/mfsbsd/">http://people.freebsd.org/~mm/mfsbsd/</uri>, + includes pointers to the latest release of the toolset.</para> <para>Please note that the internals of - <application>mfsBSD</application> and how it all fits together is - beyond the scope of this article. The interested reader should - consult the original documentation of + <application>mfsBSD</application> and how it all fits together + is beyond the scope of this article. The interested reader + should consult the original documentation of <application>mfsBSD</application> for more details.</para> <para>Download and extract the latest - <application>mfsBSD</application> release and change your working - directory to the directory where the + <application>mfsBSD</application> release and change your + working directory to the directory where the <application>mfsBSD</application> scripts will reside:</para> <screen>&prompt.root; <userinput>fetch http://people.freebsd.org/~mm/mfsbsd/mfsbsd-latest.tar.gz</userinput> @@ -152,28 +166,30 @@ &prompt.root; <userinput>cd <replaceable>mfsbsd-1.0-beta1</replaceable>/</userinput></screen> <sect2 xml:id="mfsbsd-config"> - <title>Configuration of <application>mfsBSD</application></title> + <title>Configuration of + <application>mfsBSD</application></title> <para>Before booting <application>mfsBSD</application>, a few important configuration options have to be set. The most important that we have to get right is, naturally, the network - setup. The most suitable method to configure networking options - depends on whether we know beforehand the type of the network - interface we will use, and the network interface driver to be - loaded for our hardware. We will see how + setup. The most suitable method to configure networking + options depends on whether we know beforehand the type of the + network interface we will use, and the network interface + driver to be loaded for our hardware. We will see how <application>mfsBSD</application> can be configured in either case.</para> - <para>Another important thing to set is the - <systemitem class="username">root</systemitem> password. This can be done by editing - <filename>conf/rootpw.conf</filename>. Please keep in - mind that the file will contain your password in the plain text, - thus we do not recommend to use real password here. - Nevertheless, this is just a temporary one-time password which - can be later changed in a live system.</para> + <para>Another important thing to set is the <systemitem + class="username">root</systemitem> password. This can be + done by editing <filename>conf/rootpw.conf</filename>. Please + keep in mind that the file will contain your password in the + plain text, thus we do not recommend to use real password + here. Nevertheless, this is just a temporary one-time + password which can be later changed in a live system.</para> <sect3> - <title>The <filename>conf/interfaces.conf</filename> method</title> + <title>The <filename>conf/interfaces.conf</filename> + method</title> <para>When the installed network interface card is unknown, we can use the auto-detection features of @@ -188,8 +204,9 @@ initconf_mac_ext1="00:00:00:00:00:00" initconf_ip_ext1="192.168.0.2" initconf_netmask_ext1="255.255.255.0"</programlisting> - <para>Do not forget to add the <literal>defaultrouter</literal> - information to <filename>conf/rc.conf</filename>:</para> + <para>Do not forget to add the + <literal>defaultrouter</literal> information to + <filename>conf/rc.conf</filename>:</para> <programlisting>defaultrouter="192.168.0.1"</programlisting> </sect3> @@ -198,14 +215,15 @@ initconf_netmask_ext1="255.255.255.0"</p <title>The <filename>conf/rc.conf</filename> Method</title> <para>When the network interface driver is known, it is more - convenient to use <filename>conf/rc.conf</filename> - for networking options. The syntax of this file is the same - as the one used in the standard &man.rc.conf.5; file of + convenient to use <filename>conf/rc.conf</filename> for + networking options. The syntax of this file is the same as + the one used in the standard &man.rc.conf.5; file of &os;.</para> <para>For example, if you know that a &man.re.4; network - interface is going to be available, you can set the following - options in <filename>conf/rc.conf</filename>:</para> + interface is going to be available, you can set the + following options in + <filename>conf/rc.conf</filename>:</para> <programlisting>defaultrouter="192.168.0.1" ifconfig_re0="inet 192.168.0.2 netmask 255.255.255.0"</programlisting> @@ -213,18 +231,21 @@ ifconfig_re0="inet 192.168.0.2 netmask 2 </sect2> <sect2 xml:id="mfsbsd-build"> - <title>Building an <application>mfsBSD</application> Image</title> + <title>Building an <application>mfsBSD</application> + Image</title> - <para>The process of building an <application>mfsBSD</application> - image is pretty straightforward.</para> + <para>The process of building an + <application>mfsBSD</application> image is pretty + straightforward.</para> <para>The first step is to mount the &os; installation <acronym>CD</acronym>, or the installation - <acronym>ISO</acronym> image to <filename>/cdrom</filename>. For the sake of example, - in this article we will assume that you have downloaded the &os; - 7.0-RELEASE <acronym>ISO</acronym>. Mounting this ISO image to - the <filename>/cdrom</filename> directory is - easy with the &man.mdconfig.8; utility:</para> + <acronym>ISO</acronym> image to <filename>/cdrom</filename>. + For the sake of example, in this article we will assume that + you have downloaded the &os; 7.0-RELEASE + <acronym>ISO</acronym>. Mounting this ISO image to the + <filename>/cdrom</filename> directory is easy with the + &man.mdconfig.8; utility:</para> <screen>&prompt.root; <userinput>mdconfig -a -t vnode -u 10 -f <replaceable>7.0-RELEASE-amd64-disc1.iso</replaceable></userinput> &prompt.root; <userinput>mount_cd9660 /dev/md10 /cdrom</userinput></screen> @@ -235,9 +256,10 @@ ifconfig_re0="inet 192.168.0.2 netmask 2 <screen>&prompt.root; <userinput>make BASE=/cdrom/<replaceable>7.0-RELEASE</replaceable></userinput></screen> <note> - <para>The above <command>make</command> has to be run - from the top level of the <application>mfsBSD</application> - directory tree, for example <filename>~/mfsbsd-1.0-beta1/</filename>.</para> + <para>The above <command>make</command> has to be run from the + top level of the <application>mfsBSD</application> directory + tree, for example + <filename>~/mfsbsd-1.0-beta1/</filename>.</para> </note> </sect2> @@ -252,20 +274,21 @@ ifconfig_re0="inet 192.168.0.2 netmask 2 <screen>&prompt.root; <userinput>scp disk.img root@192.168.0.2:.</userinput></screen> - <para>To boot <application>mfsBSD</application> image properly, it - must be placed on the first (bootable) device of the given - machine. This may be accomplished using this example providing - that <filename>sda</filename> is the first bootable disk - device:</para> + <para>To boot <application>mfsBSD</application> image properly, + it must be placed on the first (bootable) device of the given + machine. This may be accomplished using this example + providing that <filename>sda</filename> is the first bootable + disk device:</para> <screen>&prompt.root; <userinput>dd if=/root/disk.img of=/dev/sda bs=1m</userinput></screen> <para>If all went well, the image should now be in the <acronym>MBR</acronym> of the first device and the machine can - be rebooted. Watch for the machine to boot up properly with the - &man.ping.8; tool. Once it has came back on-line, it should be - possible to access it over &man.ssh.1; as user - <systemitem class="username">root</systemitem> with the configured password.</para> + be rebooted. Watch for the machine to boot up properly with + the &man.ping.8; tool. Once it has came back on-line, it + should be possible to access it over &man.ssh.1; as user + <systemitem class="username">root</systemitem> with the + configured password.</para> </sect2> </sect1> @@ -274,19 +297,19 @@ ifconfig_re0="inet 192.168.0.2 netmask 2 <para>The <application>mfsBSD</application> has been successfully booted and it should be possible to log in through &man.ssh.1;. - This section will describe how to create and label slices, set up - <application>gmirror</application> for RAID-1, and how to use + This section will describe how to create and label slices, set + up <application>gmirror</application> for RAID-1, and how to use <application>sysinstall</application> to install a minimal distribution of the &os; operating system.</para> <sect2> <title>Preparation of Hard Drives</title> - <para>The first task is to allocate disk space for &os;, i.e.: to - create slices and partitions. Obviously, the currently running - system is fully loaded in system memory and therefore there will - be no problems with manipulating hard drives. To complete this - task, it is possible to use either + <para>The first task is to allocate disk space for &os;, i.e.: + to create slices and partitions. Obviously, the currently + running system is fully loaded in system memory and therefore + there will be no problems with manipulating hard drives. To + complete this task, it is possible to use either <application>sysinstall</application> or &man.fdisk.8; in conjunction to &man.bsdlabel.8;.</para> @@ -295,28 +318,31 @@ ifconfig_re0="inet 192.168.0.2 netmask 2 <screen>&prompt.root; <userinput>dd if=/dev/zero of=/dev/<replaceable>ad0</replaceable> count=2</userinput></screen> - <para>Next, create slices and label them with your preferred tool. - While it is considered easier to use + <para>Next, create slices and label them with your preferred + tool. While it is considered easier to use <application>sysinstall</application>, a powerful and also probably less buggy method will be to use standard text-based - &unix; tools, such as &man.fdisk.8; and &man.bsdlabel.8;, which - will also be covered in this section. The former option is well - documented in the <link xlink:href="&url.books.handbook;/install-steps.html">Installing &os;</link> - chapter of the &os; Handbook. As it was mentioned in the - introduction, this article will present how to set up a system - with RAID-1 and <application>ZFS</application> capabilities. - Our set up will consist of a small &man.gmirror.8; mirrored - <filename>/</filename> (root), <filename>/usr</filename> and <filename>/var</filename> dataset, and the rest of - the disk space will be allocated for a &man.zpool.8; mirrored + &unix; tools, such as &man.fdisk.8; and &man.bsdlabel.8;, + which will also be covered in this section. The former option + is well documented in the <link + xlink:href="&url.books.handbook;/install-steps.html">Installing + &os;</link> chapter of the &os; Handbook. As it was + mentioned in the introduction, this article will present how + to set up a system with RAID-1 and + <application>ZFS</application> capabilities. Our set up will + consist of a small &man.gmirror.8; mirrored + <filename>/</filename> (root), <filename>/usr</filename> and + <filename>/var</filename> dataset, and the rest of the disk + space will be allocated for a &man.zpool.8; mirrored <application>ZFS</application> file system. Please note, that the <application>ZFS</application> file system will be configured after the &os; operating system is successfully installed and booted.</para> - <para>The following example will describe how to create slices and - labels, initialize &man.gmirror.8; on each partition and how to - create a <application>UFS2</application> file system in each - mirrored partition:</para> + <para>The following example will describe how to create slices + and labels, initialize &man.gmirror.8; on each partition and + how to create a <application>UFS2</application> file system in + each mirrored partition:</para> <screen>&prompt.root; <userinput>fdisk -BI /dev/ad0</userinput> <co xml:id="fdisk"/> &prompt.root; <userinput>fdisk -BI /dev/ad1</userinput> @@ -347,13 +373,13 @@ ifconfig_re0="inet 192.168.0.2 netmask 2 <callout arearefs="bsdlabel-editing"> <para>Now, manually edit the label of the given disk. Refer - to the &man.bsdlabel.8; manual page in order to find out how - to create partitions. Create partitions - <literal>a</literal> for <filename>/</filename> (root) file system, - <literal>b</literal> for swap, <literal>d</literal> for - <filename>/var</filename>, - <literal>e</literal> for <filename>/usr</filename> and finally - <literal>f</literal> which will later be used for + to the &man.bsdlabel.8; manual page in order to find out + how to create partitions. Create partitions + <literal>a</literal> for <filename>/</filename> (root) + file system, <literal>b</literal> for swap, + <literal>d</literal> for <filename>/var</filename>, + <literal>e</literal> for <filename>/usr</filename> and + finally <literal>f</literal> which will later be used for <application>ZFS</application>.</para> </callout> @@ -370,26 +396,26 @@ ifconfig_re0="inet 192.168.0.2 netmask 2 <callout arearefs="gmirror2"> <para>Note that <option>-F</option> is used for the swap partition. This instructs &man.gmirror.8; to assume that - the device is in the consistent state after the power/system - failure.</para> + the device is in the consistent state after the + power/system failure.</para> </callout> <callout arearefs="newfs"> - <para>Create a <application>UFS2</application> file system on - each mirrored partition.</para> - </callout> + <para>Create a <application>UFS2</application> file system + on each mirrored partition.</para> + </callout> </calloutlist> </sect2> <sect2> <title>System Installation</title> - <para>This is the most important part. This section will describe - how to actually install the minimal distribution of &os; on the - hard drives that we have prepared in the previous section. To - accomplish this goal, all file systems need to be mounted so - <application>sysinstall</application> may write the contents of - &os; to the hard drives:</para> + <para>This is the most important part. This section will + describe how to actually install the minimal distribution of + &os; on the hard drives that we have prepared in the previous + section. To accomplish this goal, all file systems need to be + mounted so <application>sysinstall</application> may write the + contents of &os; to the hard drives:</para> <screen>&prompt.root; <userinput>mount /dev/mirror/root /mnt</userinput> &prompt.root; <userinput>mkdir /mnt/var /mnt/usr</userinput> @@ -401,7 +427,8 @@ ifconfig_re0="inet 192.168.0.2 netmask 2 menu. Select <guimenuitem>Options</guimenuitem> and press <keycap>Enter</keycap>. With the help of arrow keys, move the cursor on the <literal>Install Root</literal> item, press - <keycap>Space</keycap> and change it to <filename>/mnt</filename>. Press + <keycap>Space</keycap> and change it to + <filename>/mnt</filename>. Press <keycap>Enter</keycap> to submit your changes and exit the <guimenuitem>Options</guimenuitem> menu by pressing <keycap>q</keycap>.</para> @@ -429,23 +456,24 @@ ifconfig_re0="inet 192.168.0.2 netmask 2 <para>In the <guimenuitem>Media</guimenuitem> menu, select <option>FTP</option>. Select the nearest mirror and let - <application>sysinstall</application> assume that the network is - already configured. You will be returned back to the + <application>sysinstall</application> assume that the network + is already configured. You will be returned back to the <guimenuitem>Custom</guimenuitem> menu.</para> <para>Finally, perform the system installation by selecting the - last option, <guimenuitem>Commit</guimenuitem>. - Exit <application>sysinstall</application> when it finishes the + last option, <guimenuitem>Commit</guimenuitem>. Exit + <application>sysinstall</application> when it finishes the installation.</para> </sect2> <sect2> <title>Post Installation Steps</title> - <para>The &os; operating system should be installed now; however, - the process is not finished yet. It is necessary to perform - some post installation steps in order to allow &os; to boot in - the future and to be able to log in to the system.</para> + <para>The &os; operating system should be installed now; + however, the process is not finished yet. It is necessary to + perform some post installation steps in order to allow &os; to + boot in the future and to be able to log in to the + system.</para> <para>You must now &man.chroot.8; into the freshly installed system in order to finish the installation. Use the following @@ -483,8 +511,8 @@ ifconfig_re0="inet 192.168.0.2 netmask 2 </listitem> <listitem> - <para>Create <filename>/boot/loader.conf</filename> - with the following contents:</para> + <para>Create <filename>/boot/loader.conf</filename> with the + following contents:</para> <programlisting>geom_mirror_load="YES" zfs_load="YES"</programlisting> @@ -501,8 +529,8 @@ zfs_load="YES"</programlisting> <listitem> <para>Add additional users to the system using the &man.adduser.8; tool. Do not forget to add a user to the - <systemitem class="groupname">wheel</systemitem> group so you may obtain root - access after the reboot.</para> + <systemitem class="groupname">wheel</systemitem> group so + you may obtain root access after the reboot.</para> </listitem> <listitem> @@ -510,7 +538,7 @@ zfs_load="YES"</programlisting> </listitem> </itemizedlist> - <para>The system should now be ready for the next boot. Use the + <para>The system should now be ready for the next boot. Use the &man.reboot.8; command to reboot your system.</para> </sect2> </sect1> @@ -518,14 +546,14 @@ zfs_load="YES"</programlisting> <sect1 xml:id="zfs"> <title>ZFS</title> - <para>If your system survived the reboot, it should now be possible - to log in. Welcome to the fresh &os; installation, performed - remotely without the use of a remote console!</para> + <para>If your system survived the reboot, it should now be + possible to log in. Welcome to the fresh &os; installation, + performed remotely without the use of a remote console!</para> <para>The only remaining step is to configure &man.zpool.8; and - create some &man.zfs.8; file systems. Creating and administering - <application>ZFS</application> is very straightforward. First, - create a mirrored pool:</para> + create some &man.zfs.8; file systems. Creating and + administering <application>ZFS</application> is very + straightforward. First, create a mirrored pool:</para> <screen>&prompt.root; <userinput>zpool create tank mirror /dev/ad[01]s1f</userinput></screen> @@ -539,7 +567,8 @@ zfs_load="YES"</programlisting> &prompt.root; <userinput>zfs set mountpoint=/usr/src tank/src</userinput></screen> <para>That is all. If you are interested in more details about - <application>ZFS</application> on &os;, please refer to the <link xlink:href="http://wiki.freebsd.org/ZFS">ZFS</link> section of the &os; - Wiki.</para> + <application>ZFS</application> on &os;, please refer to the + <link xlink:href="http://wiki.freebsd.org/ZFS">ZFS</link> + section of the &os; Wiki.</para> </sect1> </article>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201405261721.s4QHLCFv065896>