{"id":254,"date":"2015-07-23T21:43:15","date_gmt":"2015-07-24T02:43:15","guid":{"rendered":"http:\/\/www.edplese.com\/blog\/?p=254"},"modified":"2015-07-23T21:43:15","modified_gmt":"2015-07-24T02:43:15","slug":"windows-text-console-on-smartos","status":"publish","type":"post","link":"https:\/\/www.edplese.com\/blog\/2015\/07\/23\/windows-text-console-on-smartos\/","title":{"rendered":"Windows Text Console on SmartOS"},"content":{"rendered":"<p>With SmartOS the <code><a href=\"https:\/\/smartos.org\/man\/1m\/vmadm\" target=\"_blank\">vmadm<\/a> console<\/code> command offers a convenience method for pulling up a\u00a0text console for a guest VM. \u00a0This is commonly used for Linux and BSD VMs and\u00a0it can be enabled for Windows VMs too. \u00a0The below steps outline how to enable and utilize this feature on Windows 2012 R2 through the use of the Windows Emergency Management Services (EMS).<\/p>\n<h3>Configuration<\/h3>\n<ol>\n<li>As an administrator user run the following commands. If you have configured more than one boot entry you may want to tailor this command to target only a specific boot entry. \u00a0Together these enable EMS and then set it to run on COM1 at a baud rate of 115,200.\n<pre>C:\\&gt;bcdedit \/ems on\r\nC:\\&gt;bcdedit \/emssettings EMSPORT:1 EMSBAUDRATE:115200\r\n<\/pre>\n<\/li>\n<li>From the SmartOS host start up the console and substitute in the appropriate UUID of the VM from <code>vmadm list<\/code>:\n<pre># vmadm console &lt;uuid&gt;\r\n<\/pre>\n<\/li>\n<li>Reboot the VM.<\/li>\n<li>On the console window you will see something like the following:\n<pre>Computer is booting, SAC started and initialized.                               \r\n                                                                                \r\nUse the \"ch -?\" command for information about using channels.                   \r\nUse the \"?\" command for general help.                                           \r\n                                                                                \r\n                                                                                \r\nSAC&gt;                                                                            \r\nEVENT: The CMD command is now available.                                        \r\nSAC&gt;\r\n<\/pre>\n<\/li>\n<li>We&#8217;re at a SAC prompt, but it&#8217;s not yet the familiar CMD.EXE. \u00a0The SAC is the Special Administration Console which has some <a href=\"https:\/\/technet.microsoft.com\/en-us\/library\/Cc785873(v=WS.10).aspx\" target=\"_blank\">additional functionality<\/a>, one of which is to start CMD. \u00a0To do so simple run cmd and then switch to the channel that it created:\n<pre>SAC&gt;<strong>cmd<\/strong>\r\nThe Command Prompt session was successfully launched.\r\nEVENT:   A new channel has been created.  Use \"ch -?\" for channel help.\r\nChannel: Cmd0001\r\nSAC&gt;<strong>ch -si 1\r\n<\/strong><\/pre>\n<\/li>\n<li>From here press any key and then enter in the username, domain, and password when prompted and CMD prompt will then be usable as well as PowerShell by running <code>powershell<\/code> at the CMD prompt:\n<pre>Microsoft Windows [Version 6.3.9600]                                            \r\n(c) 2013 Microsoft Corporation. All rights reserved.                            \r\n                                                                                \r\nC:\\Windows\\system32&gt;<\/pre>\n<\/li>\n<\/ol>\n<h3>Limitations<\/h3>\n<p>This does not appear to work on all versions of Windows. \u00a0When I tried with Windows 7 the <code>bcdedit<\/code> commands completed successfully but the console text never appeared. \u00a0Older versions will need to use the <code>bootcfg<\/code> command instead of <code>bcdedit<\/code>.<\/p>\n<p>While functional, the serial\u00a0console\u00a0can be a bit sluggish at times. \u00a0Also, when using this within xterm the text scrolls at the 25 line mark rather than filling up the full terminal window.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>With SmartOS the vmadm console command offers a convenience method for pulling up a\u00a0text console for a guest VM. \u00a0This is commonly used for Linux and BSD VMs and\u00a0it can be enabled for Windows VMs too. \u00a0The below steps outline how to enable and utilize this feature on Windows 2012 R2 through the use of [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[22,20,8],"_links":{"self":[{"href":"https:\/\/www.edplese.com\/blog\/wp-json\/wp\/v2\/posts\/254"}],"collection":[{"href":"https:\/\/www.edplese.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.edplese.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.edplese.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.edplese.com\/blog\/wp-json\/wp\/v2\/comments?post=254"}],"version-history":[{"count":5,"href":"https:\/\/www.edplese.com\/blog\/wp-json\/wp\/v2\/posts\/254\/revisions"}],"predecessor-version":[{"id":259,"href":"https:\/\/www.edplese.com\/blog\/wp-json\/wp\/v2\/posts\/254\/revisions\/259"}],"wp:attachment":[{"href":"https:\/\/www.edplese.com\/blog\/wp-json\/wp\/v2\/media?parent=254"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.edplese.com\/blog\/wp-json\/wp\/v2\/categories?post=254"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.edplese.com\/blog\/wp-json\/wp\/v2\/tags?post=254"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}