<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> <meta name="robots" content="index,nofollow"> <title>Installation/NetworkConsole - Community Help Wiki</title> <script type="text/javascript" src="/moin_static198/common/js/common.js"></script> <script type="text/javascript"> <!-- var search_hint = "Search"; //--> </script> <link rel="stylesheet" type="text/css" charset="utf-8" media="all" href="/moin_static198/light/css/common.css"> <link rel="stylesheet" type="text/css" charset="utf-8" media="screen" href="/moin_static198/light/css/screen.css"> <link rel="stylesheet" type="text/css" charset="utf-8" media="print" href="/moin_static198/light/css/print.css"> <link rel="stylesheet" type="text/css" charset="utf-8" media="projection" href="/moin_static198/light/css/projection.css"> <!-- css only for MS IE6/IE7 browsers --> <!--[if lt IE 8]> <link rel="stylesheet" type="text/css" charset="utf-8" media="all" href="/moin_static198/light/css/msie.css"> <![endif]--> <link rel="alternate" title="Community Help Wiki: Installation/NetworkConsole" href="/community/Installation/NetworkConsole?diffs=1&show_att=1&action=rss_rc&unique=0&page=Installation%2FNetworkConsole&ddiffs=1" type="application/rss+xml"> <link rel="Start" href="/community/CommunityHelpWiki"> <link rel="Alternate" title="Wiki Markup" href="/community/Installation/NetworkConsole?action=raw"> <link rel="Alternate" media="print" title="Print View" href="/community/Installation/NetworkConsole?action=print"> <link rel="Up" href="/community/Installation"> <link rel="Search" href="/community/FindPage"> <link rel="Index" href="/community/TitleIndex"> <link rel="Glossary" href="/community/WordIndex"> <link rel="Help" href="/community/HelpOnFormatting"> </head> <body lang="en" dir="ltr"> <div id="leftbanner"> </div> <div id="rightbanner"> </div> <div id="container"> <div id="container-inner"> <div id="mothership"> <ul> <li><a href="https://partners.ubuntu.com">Partners</a> </li> <li><a href="https://www.ubuntu.com/support/community-support">Support</a></li> <li><a href="https://community.ubuntu.com">Community</a></li> <li><a href="https://www.ubuntu.com">Ubuntu.com</a></li> </ul> </div> <div id="header"> <h1 id="ubuntu-header"><a href="https://help.ubuntu.com/">Ubuntu Documentation</a></h1> <ul id="main-menu"> <li><a href="https://help.ubuntu.com/">Official Documentation</a></li> <li><a class="main-menu-item current" href="https://help.ubuntu.com/community/CommunityHelpWiki">Community Help Wiki</a></li> <li><a href="https://community.ubuntu.com/t/contribute/26">Contribute</a></li> </ul> </div> <div id="menu-search"> <div id="subheader"> <div class="subheader-menu"> <div id="second-nav"> <ul id="username"><li><a class="nbinfo" href="/community/Installation/NetworkConsole?action=info" rel="nofollow">Page History</a></li><li><a href="/community/Installation/NetworkConsole?action=login&login=1" id="login" rel="nofollow">Login to edit</a></li></ul> </div> <div id="user-info"> </div> </div> </div> <div id="search-box"> <noscript> <form action="http://www.google.com/cse" id="cse-search-box"> <div> <input type="hidden" name="cx" value="003883529982892832976:e2vwumte3fq" /> <input type="hidden" name="ie" value="UTF-8" /> <input type="text" name="q" size="21" /> <input type="submit" name="sa" value="Search" /> </div> </form> </noscript> <script> document.write('<form action="https://help.ubuntu.com/search.html" id="cse-search-box">'); document.write(' <div>'); document.write(' <input type="hidden" name="cof" value="FORID:9" />'); document.write(' <input type="hidden" name="cx" value="003883529982892832976:e2vwumte3fq" />'); document.write(' <input type="hidden" name="ie" value="UTF-8" />'); document.write(' <input type="text" name="q" size="21" />'); document.write(' <input type="submit" name="sa" value="Search" />'); document.write(' </div>'); document.write('</form>'); </script> </div> </div> <div id="title"><h1> <span id="pagelocation"><span class="pagepath"><a href="/community/Installation">Installation</a></span><span class="sep">/</span><a href="/community/Installation/NetworkConsole">NetworkConsole</a></span> </h1> </div> <div id="cwt-nav3"> <hr class="clear" /> </div> <div id="cwt-content" class="clearfix content-area"> <div id="page" lang="en" dir="ltr"> <div dir="ltr" id="content" lang="en"><span class="anchor" id="top"></span> <span class="anchor" id="line-1"></span><p class="line867"><img alt="Warning /!\" height="16" src="/moin_static198/light/img/icon_eek.png" title="Warning /!\" width="16" /> This is a work in progress, it is not mature yet and it may break your system! <span class="anchor" id="line-2"></span><span class="anchor" id="line-3"></span><p class="line867"> <h2 id="Caveat">Caveat</h2> <span class="anchor" id="line-4"></span><p class="line874">As you may already have guessed, following the instructions may break your system and you are on your own to fix it again. <span class="anchor" id="line-5"></span><span class="anchor" id="line-6"></span><p class="line867"> <h2 id="Outline">Outline</h2> <span class="anchor" id="line-7"></span><p class="line874">Occasionally you may have to install a system which you cannot access physically. Many server systems provide console access over the network, but if the server you have to set-up does not, things tend to become difficult. The approach outlined here starts an ssh daemon right after the network configuration of the debian installer. You can then use an ssh client to connect to the installation and proceed as if you were sitting in front of the machine. This procedure works for the standard debian ncurses installer, not for the graphical installer on the Ubuntu Desktop Live cd. <span class="anchor" id="line-8"></span><span class="anchor" id="line-9"></span><p class="line874">There are basically two options: <span class="anchor" id="line-10"></span><ul><li>Use the standard alternate installation CD or the netboot mini iso and ask someone to go through the network configuration <span class="anchor" id="line-11"></span></li><li>Modify the netboot iso and automate the installation up to the point where you can connect via SSH <span class="anchor" id="line-12"></span><span class="anchor" id="line-13"></span></li></ul><p class="line874">The first option involved less work on your part, but the person starting the installation will need a helping hand if he/she is not familiar with the Debian Installer. <span class="anchor" id="line-14"></span><span class="anchor" id="line-15"></span><p class="line874">The rest of the guide is split into these two parts. <span class="anchor" id="line-16"></span><span class="anchor" id="line-17"></span><p class="line867"> <h1 id="Installation_with_stock_Ubuntu_iso">Installation with stock Ubuntu iso</h1> <span class="anchor" id="line-18"></span><p class="line862">If you use the alternate installation CD, you have to boot the system and press escape as soon as the installer presents you the first question. Select <em>Change debconf priority</em> and choose <em>low</em>. <span class="anchor" id="line-19"></span><span class="anchor" id="line-20"></span><p class="line862">If you use the netboot iso, simply boot by entering <em>expert</em> instead of the default <em>install</em>. That will set your debconf priority to <em>low</em> automatically. <span class="anchor" id="line-21"></span><span class="anchor" id="line-22"></span><p class="line862">As soon as you come to a screen presenting you a list of installer components which can be loaded, tick <em>network-console: Continue installation remotely using SSH</em> and continue. One of the next steps should be a question asking for the SSH password. Choose one and then connect via ssh using the <em>installer</em> user and the password you have chosen. <span class="anchor" id="line-23"></span><span class="anchor" id="line-24"></span><p class="line874">After connecting via ssh you can change the debconf priority back to 'critical' to make the installation easier by suppressing optional questions asked by the installer. <span class="anchor" id="line-25"></span><span class="anchor" id="line-26"></span><p class="line867"> <h1 id="Installation_with_modified_Netboot_iso">Installation with modified Netboot iso</h1> <span class="anchor" id="line-27"></span><span class="anchor" id="line-28"></span><p class="line862">The installation medium will be a CD / DVD containing an (optionally modified) netboot mini.iso image as found on <a class="http" href="http://archive.ubuntu.com/ubuntu/dists/hardy/main/installer-i386/current/images/netboot/mini.iso">http://archive.ubuntu.com/ubuntu/dists/hardy/main/installer-i386/current/images/netboot/mini.iso</a>. <span class="anchor" id="line-29"></span><span class="anchor" id="line-30"></span><p class="line867"> <h2 id="Preparing_the_preseed_file">Preparing the preseed file</h2> <span class="anchor" id="line-31"></span><p class="line862">In order to tell the debian installer to start the ssh server and wait for you to connect, it needs a preseed file (see <a class="http" href="http://wiki.debian.org/DebianInstaller/Preseed">http://wiki.debian.org/DebianInstaller/Preseed</a>). Copy a file with the following content to a webserver which is reachable by the machine you want to set-up. <span class="anchor" id="line-32"></span><span class="anchor" id="line-33"></span><span class="anchor" id="line-34"></span><span class="anchor" id="line-35"></span><span class="anchor" id="line-36"></span><span class="anchor" id="line-37"></span><span class="anchor" id="line-38"></span><span class="anchor" id="line-39"></span><span class="anchor" id="line-40"></span><pre><span class="anchor" id="line-1"></span>d-i debconf/priority select critical <span class="anchor" id="line-2"></span>d-i auto-install/enabled boolean true <span class="anchor" id="line-3"></span>d-i netcfg/choose_interface select auto <span class="anchor" id="line-4"></span>d-i netcfg/get_hostname string obelix <span class="anchor" id="line-5"></span>d-i network-console/password password SECRET123 <span class="anchor" id="line-6"></span>d-i network-console/password-again password SECRET123 <span class="anchor" id="line-7"></span>d-i preseed/early_command string anna-install network-console</pre><span class="anchor" id="line-41"></span><p class="line874">This preseed file assumes that you have a DHCP server on your network and sets the password for the installation user to SECRET123. You may want to adjust the password. <span class="anchor" id="line-42"></span><span class="anchor" id="line-43"></span><p class="line867"> <h2 id="Modify_the_netboot_iso">Modify the netboot iso</h2> <span class="anchor" id="line-44"></span><p class="line862">In order to make your life easier (typing URLs at the isolinux prompt is not my favourite task), you can modify the iso image to include the URL and some options which cannot be set from the preseed file in the default boot options. Download the mini.iso file of the distribution you would like to install (tested with hardy-proposed on 2008-06-19, hardy currently suffers from <a class="https" href="https://bugs.launchpad.net/ubuntu/+bug/238974">https://bugs.launchpad.net/ubuntu/+bug/238974</a>) to /tmp and proceed as follows: <span class="anchor" id="line-45"></span><span class="anchor" id="line-46"></span><span class="anchor" id="line-47"></span><span class="anchor" id="line-48"></span><span class="anchor" id="line-49"></span><span class="anchor" id="line-50"></span><span class="anchor" id="line-51"></span><span class="anchor" id="line-52"></span><span class="anchor" id="line-53"></span><span class="anchor" id="line-54"></span><pre><span class="anchor" id="line-1-1"></span>cd /tmp <span class="anchor" id="line-2-1"></span>sudo mkdir /media/isoimage <span class="anchor" id="line-3-1"></span>sudo mount mini.iso /media/isoimage -o loop <span class="anchor" id="line-4-1"></span>mkdir /tmp/miniiso_remastered <span class="anchor" id="line-5-1"></span>sudo cp -aR /media/isoimage/. /tmp/miniiso_remastered/ <span class="anchor" id="line-6-1"></span>sudo vi /tmp/miniiso_remastered/isolinux.cfg <span class="anchor" id="line-7-1"></span>sudo mkisofs -r -V "Custom Ubuntu Netboot image" -cache-inodes -J -l -b isolinux.bin -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o /tmp/CustomMini.iso /tmp/miniiso_remastered/ <span class="anchor" id="line-8"></span>sudo umount /media/isoimage</pre><span class="anchor" id="line-55"></span><p class="line874">The steps above will start vi to edit the isolinux configuration file. At this step, apply the following changes: <span class="anchor" id="line-56"></span><span class="anchor" id="line-57"></span><span class="anchor" id="line-58"></span><span class="anchor" id="line-59"></span><span class="anchor" id="line-60"></span><span class="anchor" id="line-61"></span><span class="anchor" id="line-62"></span><span class="anchor" id="line-63"></span><span class="anchor" id="line-64"></span><span class="anchor" id="line-65"></span><span class="anchor" id="line-66"></span><span class="anchor" id="line-67"></span><span class="anchor" id="line-68"></span><span class="anchor" id="line-69"></span><span class="anchor" id="line-70"></span><span class="anchor" id="line-71"></span><span class="anchor" id="line-72"></span><pre><span class="anchor" id="line-1-2"></span>--- /media/isoimage/isolinux.cfg 2007-10-15 23:59:20.000000000 +0200 <span class="anchor" id="line-2-2"></span>+++ /tmp/miniiso_remastered/isolinux.cfg 2008-06-19 14:44:11.000000000 +0200 <span class="anchor" id="line-3-2"></span>@@ -12,7 +12,11 @@ <span class="anchor" id="line-4-2"></span> F9 f9.txt <span class="anchor" id="line-5-2"></span> F0 f10.txt <span class="anchor" id="line-6-2"></span> <span class="anchor" id="line-7-2"></span>-DEFAULT install <span class="anchor" id="line-8-1"></span>+DEFAULT netconsole <span class="anchor" id="line-9"></span>+ <span class="anchor" id="line-10"></span>+LABEL netconsole <span class="anchor" id="line-11"></span>+ kernel linux <span class="anchor" id="line-12"></span>+ append vga=normal initrd=initrd.gz preseed/url=http://YOURDOMAIN.COM/preseed/default.txt console-setup/layoutcode=us console-setup/layout="U.S. English" console-setup/variantcode=intl countrychooser/country-name=Austria debian-installer/country=AT languagechooser/language-name="English" languagechooser/language-name-fb="English" netcfg/get_hostname=NEWMACHINE mirror/http/countries=DE mirror/http/hostname=de.archive.ubuntu.com DEBCONF_PRIORITY=critical <span class="anchor" id="line-13"></span> <span class="anchor" id="line-14"></span> LABEL install <span class="anchor" id="line-15"></span> kernel linux</pre><span class="anchor" id="line-73"></span><p class="line862">Adjust the line starting with <tt>append</tt> to your liking. You can find the values of the variables as they have been set when you installed Ubuntu on your machine in the file <tt>/var/cache/debconf/config.dat</tt> <span class="anchor" id="line-74"></span><span class="anchor" id="line-75"></span><p class="line862">You can then use the <tt>/tmp/CustomMini.iso</tt> instead of the mini.iso file. <span class="anchor" id="line-76"></span><span class="anchor" id="line-77"></span><p class="line867"> <h2 id="Starting_the_installation">Starting the installation</h2> <span class="anchor" id="line-78"></span><p class="line874">Burn the iso file to a CD or DVD and tell someone with physical access to the machine to boot from it. <span class="anchor" id="line-79"></span><span class="anchor" id="line-80"></span><p class="line862">If you have modified the iso as outlined above, you just have to tell your assistant to wait until a prompt appears which basically says: You can now connect to the IP address X.X.X.X using ssh with the user installer to continue the installation. Do as it says and you should be greeted by the debian installer over ssh. It is advisable to connect to the machine from another machine within the same (reliable) network using <tt>screen</tt>. Say you want to install machine A on network X. You are working on machine M in network Y. Connect via ssh to machine B on network X, start screen and then connect to machine A. If your connection (over the internet) to machine B fails, you can simply reconnect and re-attach to screen using <tt>screen -r</tt>. <span class="anchor" id="line-81"></span><span class="anchor" id="bottom"></span></div><div id="pagebottom"></div> </div> </div> <p id="pageinfo" class="info" lang="en" dir="ltr">Installation/NetworkConsole (last edited 2008-12-07 15:03:12 by <span title="https://login.launchpad.net/+id/YtzetzM @ 88.117.175.26[88.117.175.26]"><a class="interwiki" href="https://launchpad.net/~f-hackenberger" title="https://login.launchpad.net/+id/YtzetzM @ 88.117.175.26[88.117.175.26]">f-hackenberger</a></span>)</p> </div> <div id="footer"> <p> The material on this wiki is available under a free license, see <a href="https://help.ubuntu.com/community/ License">Copyright / License</a> for details<br /><b>You</b> can contribute to this wiki, see <a href="https://help.ubuntu.com/community/WikiGuide">Wiki Guide</a> for details </p> </div> </div></body> </html>