Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
EFIVAR(8)		     System Manager's Manual		       EFIVAR(8)

NAME
     efivar -- UEFI environment variable interaction

SYNOPSIS
     efivar [-abdDHlLNpqRtuw] [-n name] [-f file] [--append] [--ascii]
	    [--attributes] [--binary] [--delete] [--device-path]
	    [--fromfile file] [--guid] [--hex] [--list-guids] [--list]
	    [--load-option] [--name name] [--no-name] [--print]
	    [--print-decimal] [--quiet] [--raw-guid] [--utf8] [--write]

DESCRIPTION
     This  program  manages "Unified Extensible Firmware Interface" (UEFI) envi-
     ronment variables.  UEFI variables have three parts: A  namespace,  a  name
     and  a  value.   The namespace is a GUID that is self assigned by the group
     defining the variables.  The name is a Unicode name for the variable.   The
     value is binary data.  All Unicode data is presented to the user as UTF-8.

     The following options are available:

     -n name --name name   Specify  the name of the variable to operate on.  The
			   name argument is the GUID of the  variable,	followed
			   by  a  dash, followed by the UEFI variable name.  The
			   GUID may be in numeric format, or may be one  of  the
			   well  known	symbolic  names  (see --list-guids for a
			   complete list).

     -f file --fromfile file
			   When writing or appending to  a  variable,  take  the
			   data  for  the  variable's value from file instead of
			   from the command line.  This flag implies --write un-
			   less the --append or --print flags are  given.   This
			   behavior  is  not  well  understood	and is currently
			   unimplemented for writes.  When --print is specified,
			   the contents of the file are used  as  the  value  to
			   print  using any other specified flags.  This is used
			   primarily for testing purposes for  more  complicated
			   variable decoding.

     -a --append	   Append  the	specified  value  to  the  UEFI variable
			   rather than replacing it.

     -t attr --attributes attr
			   Specify, in	hexadecimal,  the  attributes  for  this
			   variable.   See  section 7.2 (GetVariable subsection,
			   Related Definitions) of the	UEFI  Specification  for
			   hex values to use.

     -A --ascii 	   Display  the  variable  data  as  modified ASCII: All
			   printable characters are printed,  while  unprintable
			   characters  are  rendered  as a two-digit hexadecimal
			   number preceded by a % character.

     -b --binary	   Display the variable data as  binary  data.	 Usually
			   will  be  used with the -N or --no-name flag.  Useful
			   in scripts.

     -D --delete	   Delete the specified variable.  May not be used  with
			   either  the	--write or the --append flags.	No value
			   may be specified.

     -d --device --device-path
			   Interpret the variables printed as UEFI device  paths
			   and print the UEFI standard string representation.

     -g --guid		   Convert  GUIDs  to  names if they are known (and show
			   them in --list-guids).

     -H --hex		   List variable data as a hex dump.

     -L --list-guids	   Lists the well known GUIDs.	The  names  listed  here
			   may	be  used  in  place  of the numeric GUID values.
			   These names will replace the numeric GUID values  un-
			   less the --raw-guid flag is specified.

     -l --list		   List  all the variables.  If the --print flag is also
			   listed, their values will be displayed.

     --load-option	   Decode the variable as if it were a UEFI Boot Option,
			   including information about what device and/or  paths
			   the UEFI DevicePaths decode to.

     -N --no-name	   Do not display the variable name.

     -p --print 	   Print the value of the variable.

     -q --quiet 	   When  an  error  occurs,  exit  with a non-zero value
			   without outputting any  error  messages.   Otherwise,
			   produce  the  normal output and exit with a zero sta-
			   tus.

     -R --raw-guid	   Do not substitute well known names for  GUID  numeric
			   values in output.

     -u --utf8		   Treat  the  value of the variable as UCS2 and convert
			   it to UTF8 and print the result.

     -w --write 	   Write (replace) the variable specified with the value
			   specified from standard input.  No command  line  op-
			   tion to do this is available since UEFI variables are
			   binary  structures  rather  than strings.  echo(1) -n
			   can be used to specify simple strings.

     name		   Display the name environment variable.

COMPATIBILITY
     The efivar program is intended to be compatible (strict  superset)  with  a
     program of the same name included in the Red Hat libefivar package, but the
     -d and --print-decimal flags are not implemented and never will be.

     The -d flag is short for --device-path.

SEE ALSO
     Appendix  A  of the UEFI specification has the format for GUIDs.  All GUIDs
     "Globally Unique Identifiers" have the format described in RFC 4122.

HISTORY
     The efivar utility first appeared in FreeBSD 11.1.

FreeBSD ports 15.quarterly	  April 7, 2021 		       EFIVAR(8)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=efivar&sektion=8&manpath=FreeBSD+15.1-RELEASE+and+Ports.quarterly>

home | help