summaryrefslogtreecommitdiffstats
path: root/doc/manual/en_US/man_VBoxManage-modifynvram.xml
diff options
context:
space:
mode:
Diffstat (limited to 'doc/manual/en_US/man_VBoxManage-modifynvram.xml')
-rw-r--r--doc/manual/en_US/man_VBoxManage-modifynvram.xml241
1 files changed, 241 insertions, 0 deletions
diff --git a/doc/manual/en_US/man_VBoxManage-modifynvram.xml b/doc/manual/en_US/man_VBoxManage-modifynvram.xml
new file mode 100644
index 00000000..9d4e02eb
--- /dev/null
+++ b/doc/manual/en_US/man_VBoxManage-modifynvram.xml
@@ -0,0 +1,241 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ manpage, user manual, usage: VBoxManage modifynvram
+-->
+<!--
+ Copyright (C) 2021-2022 Oracle and/or its affiliates.
+
+ This file is part of VirtualBox base platform packages, as
+ available from https://www.virtualbox.org.
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License
+ as published by the Free Software Foundation, in version 3 of the
+ License.
+
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, see <https://www.gnu.org/licenses>.
+
+ SPDX-License-Identifier: GPL-3.0-only
+-->
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+ "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"[
+<!ENTITY % all.entities SYSTEM "all-entities.ent">
+%all.entities;
+]>
+<refentry id="vboxmanage-modifynvram" lang="en">
+ <refentryinfo>
+ <pubdate>$Date: 2022-08-22 19:43:14 +0200 (Mon, 22 Aug 2022) $</pubdate>
+ <title>VBoxManage modifynvram</title>
+ </refentryinfo>
+
+ <refmeta>
+ <refentrytitle>VBoxManage-modifynvram</refentrytitle>
+ <manvolnum>1</manvolnum>
+ </refmeta>
+
+ <refnamediv>
+ <refname>VBoxManage-modifynvram</refname>
+ <refpurpose>List and modify the NVRAM content of a virtual machine</refpurpose>
+ <refclass>&product-name;</refclass>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <cmdsynopsis id="synopsis-vboxmanage-modifynvram-inituefivarstore">
+ <command>VBoxManage modifynvram</command>
+ <arg choice="req"><replaceable>uuid|vmname</replaceable></arg>
+ <arg choice="plain">inituefivarstore</arg>
+ </cmdsynopsis>
+ <cmdsynopsis id="synopsis-vboxmanage-modifynvram-enrollmssignatures">
+ <command>VBoxManage modifynvram</command>
+ <arg choice="req"><replaceable>uuid|vmname</replaceable></arg>
+ <arg choice="plain">enrollmssignatures</arg>
+ </cmdsynopsis>
+ <cmdsynopsis id="synopsis-vboxmanage-modifynvram-enrollorclpk">
+ <command>VBoxManage modifynvram</command>
+ <arg choice="req"><replaceable>uuid|vmname</replaceable></arg>
+ <arg choice="plain">enrollorclpk</arg>
+ </cmdsynopsis>
+ <cmdsynopsis id="synopsis-vboxmanage-modifynvram-enrollpk">
+ <command>VBoxManage modifynvram</command>
+ <arg choice="req"><replaceable>uuid|vmname</replaceable></arg>
+ <arg choice="plain">enrollpk</arg>
+ <arg>--platform-key=<replaceable>filename</replaceable></arg>
+ <arg>--owner-uuid=<replaceable>uuid</replaceable></arg>
+ </cmdsynopsis>
+ <cmdsynopsis id="synopsis-vboxmanage-modifynvram-listvars">
+ <command>VBoxManage modifynvram</command>
+ <arg choice="req"><replaceable>uuid|vmname</replaceable></arg>
+ <arg choice="plain">listvars</arg>
+ </cmdsynopsis>
+ <cmdsynopsis id="synopsis-vboxmanage-modifynvram-queryvar">
+ <command>VBoxManage modifynvram</command>
+ <arg choice="req"><replaceable>uuid|vmname</replaceable></arg>
+ <arg choice="plain">queryvar</arg>
+ <arg>--name=<replaceable>name</replaceable></arg>
+ <arg>--filename=<replaceable>filename</replaceable></arg>
+ </cmdsynopsis>
+ <cmdsynopsis id="synopsis-vboxmanage-modifynvram-deletevar">
+ <command>VBoxManage modifynvram</command>
+ <arg choice="req"><replaceable>uuid|vmname</replaceable></arg>
+ <arg choice="plain">deletevar</arg>
+ <arg>--name=<replaceable>name</replaceable></arg>
+ <arg>--owner-uuid=<replaceable>uuid</replaceable></arg>
+ </cmdsynopsis>
+ <cmdsynopsis id="synopsis-vboxmanage-modifynvram-changevar">
+ <command>VBoxManage modifynvram</command>
+ <arg choice="req"><replaceable>uuid|vmname</replaceable></arg>
+ <arg choice="plain">changevar</arg>
+ <arg>--name=<replaceable>name</replaceable></arg>
+ <arg>--filename=<replaceable>filename</replaceable></arg>
+ </cmdsynopsis>
+ </refsynopsisdiv>
+
+ <refsect1>
+ <title>Description</title>
+
+ <para>The "modifynvram" commands are for experts who want to inspect and modify the
+ UEFI variable store of a virtual machine. Any mistakes done here can bring the virtual
+ machine in a non working state.</para>
+
+ <refsect2 id="vboxmanage-modifynvram-common-options">
+ <title>Common options</title>
+ <remark role="help-scope" condition="GLOBAL"/>
+ <para>The subcommands of <command>modifynvram</command> all operate on a running virtual
+ machine:</para>
+ <variablelist>
+ <varlistentry>
+ <term><replaceable>uuid|vmname</replaceable></term>
+ <listitem><para>Either the UUID or the name (case sensitive) of a VM.</para></listitem>
+ </varlistentry>
+ </variablelist>
+ </refsect2>
+
+ <refsect2 id="vboxmanage-modifynvram-inituefivarstore">
+ <title>modifynvram inituefivarstore</title>
+ <remark role="help-copy-synopsis"/>
+ <para>
+ Iniitalizes the UEFI variable store to a default state. Any previous existing variable
+ store is deleted. Use with extreme caution!
+ </para>
+ </refsect2>
+
+ <refsect2 id="vboxmanage-modifynvram-enrollmssignatures">
+ <title>modifynvram enrollmssignatures</title>
+ <remark role="help-copy-synopsis"/>
+ <para>
+ Enrolls the default Microsoft KEK and DB signatures required for UEFI secure boot.
+ </para>
+ </refsect2>
+
+ <refsect2 id="vboxmanage-modifynvram-enrollorclpk">
+ <title>modifynvram enrollorclpk</title>
+ <remark role="help-copy-synopsis"/>
+ <para>
+ Enrolls the default platform key provided by Oracle required for UEFI secure boot.
+ </para>
+ </refsect2>
+
+ <refsect2 id="vboxmanage-modifynvram-enrollpk">
+ <title>modifynvram enrollpk</title>
+ <remark role="help-copy-synopsis"/>
+ <para>
+ Enrolls a custom platform key provided by the user required for UEFI secure boot.
+ The following commands use openssl to generate a new platform key:
+ </para>
+<screen>$ openssl req -new -x509 -newkey rsa:2048 -keyout PK.key -out PK.crt</screen>
+<screen>$ openssl x509 -in PK.crt -out PK.cer -outform DER</screen>
+ <variablelist>
+ <varlistentry>
+ <term><option>--platform-key=<replaceable>filename</replaceable></option></term>
+ <listitem><para>The platform key provided as a DER encoded X.509 signature.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>--owner-uuid=<replaceable>uuid</replaceable></option></term>
+ <listitem><para>The UUID identifying the owner of the platform key.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </refsect2>
+
+ <refsect2 id="vboxmanage-modifynvram-listvars">
+ <title>modifynvram listvars</title>
+ <remark role="help-copy-synopsis"/>
+ <para>
+ Lists all UEFI variables in the virtual machines's store along with their owner UUID.
+ </para>
+ </refsect2>
+
+ <refsect2 id="vboxmanage-modifynvram-queryvar">
+ <title>modifynvram queryvar</title>
+ <remark role="help-copy-synopsis"/>
+ <para>
+ Queries the content of a given UEFI variable identified by its name.
+ </para>
+ <variablelist>
+ <varlistentry>
+ <term><option>--name=<replaceable>name</replaceable></option></term>
+ <listitem><para>UEFI variable name to query.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>--filename=<replaceable>filename</replaceable></option></term>
+ <listitem>
+ <para>
+ Where to store the content of the variable upon success. This is optional,
+ if omitted the content will be dumped to the terminal as a hex dump.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </refsect2>
+
+ <refsect2 id="vboxmanage-modifynvram-deletevar">
+ <title>modifynvram deletevar</title>
+ <remark role="help-copy-synopsis"/>
+ <para>
+ Deletes the given variable identified by its name and owner UUID.
+ </para>
+ <variablelist>
+ <varlistentry>
+ <term><option>--name=<replaceable>name</replaceable></option></term>
+ <listitem><para>UEFI variable name to delete.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>--owner-uuid=<replaceable>uuid</replaceable></option></term>
+ <listitem><para>The UUID identifying the owner of the variable to delete.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </refsect2>
+
+ <refsect2 id="vboxmanage-modifynvram-changevar">
+ <title>modifynvram changevar</title>
+ <remark role="help-copy-synopsis"/>
+ <para>
+ Changes the UEFI variable content to the one form the given file.
+ </para>
+ <variablelist>
+ <varlistentry>
+ <term><option>--name=<replaceable>name</replaceable></option></term>
+ <listitem><para>UEFI variable name to change the data for.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>--filename=<replaceable>filename</replaceable></option></term>
+ <listitem>
+ <para>The file to read the data from.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </refsect2>
+
+ </refsect1>
+</refentry>