neulab/tldr huggingface dataset:
filterref.filter Controlling firewall and network filtering in libvirt. Value can be any nwfilter defined by the virsh 'nwfilter' subcommands. Available filters can be listed by running 'virsh nwfilter-list', e.g.: 'clean-traffic', 'no-mac-spoofing', ...
virtualport.* options Configure the device virtual port profile. This is used for 802.Qbg, 802.Qbh, midonet, and openvswitch config.
Use --network=? to see a list of all available sub options. Complete details at https://libvirt.org/formatdomain.html#elementsNICS
This option deprecates -m/--mac, -b/--bridge, and --nonetworks
If no graphics option is specified, virt-install will try to select the appropriate graphics if the DISPLAY environment variable is set, otherwise '--graphics none' is used.
--graphics Syntax: --graphics TYPE,opt1=arg1,opt2=arg2,...
Specifies the graphical display configuration. This does not configure any virtual hardware, just how the guest's graphical display can be accessed.  Typically the user does not need to specify this option, virt-install will try and choose a useful default, and launch a suitable connection.
General format of a graphical string is
--graphics TYPE,opt1=arg1,opt2=arg2,...
--graphics vnc,password=foobar
Some supported TYPE values:
vnc    Setup a virtual console in the guest and export it as a VNC server in the host. Unless the port parameter is also provided, the VNC server will run on the first free port number at 5900 or above. The actual VNC display allocated can be obtained using the vncdisplay command to virsh (or virt-viewer(1) can be used which handles this detail for the use).
spice  Export the guest's console using the Spice protocol. Spice allows advanced features like audio and USB device streaming, as well as improved graphical performance.
Using spice graphic type will work as if those arguments were given:
--video qxl --channel spicevmc
none   No graphical console will be allocated for the guest. Guests will likely need to have a text console configured on the first serial port in the guest (this can be done via the --extra-args option). The command 'virsh console NAME' can be used to connect to the serial device.
Some supported suboptions:
port   Request a permanent, statically assigned port number for the guest console. This is used by 'vnc' and 'spice'
tlsPort Specify the spice tlsport.
websocket Request a VNC WebSocket port for the guest console.
If -1 is specified, the WebSocket port is auto-allocated.
This is used by 'vnc' and 'spice'
listen Address to listen on for VNC/Spice connections. Default is typically 127.0.0.1 (localhost only), but some hypervisors allow changing this globally (for example, the qemu driver default can be changed in /etc/libvirt/qemu.conf).  Use 0.0.0.0 to allow access from other machines.
Use 'none' to specify that the display server should not listen on any port. The display server can be accessed only locally through libvirt unix socket (virt-viewer with --attach for instance).
Use 'socket' to have the VM listen on a libvirt generated unix socket path on the host filesystem.
password Request a console password, required at connection time. Beware, this info may end up in virt-install log files, so don't use an important password. This is used by 'vnc' and 'spice'
gl.enable Whether to use OpenGL accelerated rendering. Value is 'yes' or 'no'. This is used by 'spice'.
gl.rendernode DRM render node path to use. This is used when 'gl' is enabled.
Use --graphics=? to see a list of all available sub options.  Complete details at https://libvirt.org/formatdomain.html#elementsGraphics
This deprecates the following options: --vnc, --vncport, --vnclisten, -k/--keymap, --sdl, --nographics
--autoconsole Syntax: --autoconsole OPTIONS
Configure what interactive console virt-install will launch for the VM. This option is not required; the default behavior is adaptive and dependent on how the VM is configured. But you can use this option to override the default choice.
--autoconsole graphical Use the graphical virt-viewer(1) as the interactive console
--autoconsole text Use the text mode virsh console as the interactive console.
--autoconsole none This is the same as --noautoconsole
--noautoconsole Don't automatically try to connect to the guest console. Same as --autoconsole none
Note, virt-install exits quickly when this option is specified. If your command requested a multistep install, like --cdrom or --location, after the install phase is complete the VM will be shutoff, regardless of whether a reboot was requested in the VM. If you want the VM to be rebooted, virt-install must remain running. You can use '--wait' to keep virt-install alive even if --noautoconsole is specified.
Options to override the default virtualization type choices.
-v, --hvm Request the use of full virtualization, if both para & full virtualization are available on the host. This parameter may not be available if connecting to a Xen hypervisor on a machine without hardware virtualization support. This parameter is implied if connecting to a QEMU based hypervisor.
-p, --paravirt This guest should be a paravirtualized guest. If the host supports both para & full virtualization, and neither this parameter nor the --hvm are specified, this will be assumed.
--container This guest should be a container type guest. This option is only required if the hypervisor supports other guest types as well (so for example this option is the default behavior for LXC and OpenVZ, but is provided for completeness).
--virt-type The hypervisor to install on. Example choices are kvm, qemu, or xen. Available options are listed via 'virsh capabilities' in the <domain> tags.
This deprecates the --accelerate option, which is now the default behavior.  To install a plain QEMU guest, use '--virt-type qemu'
All devices have a set of address.* options for configuring the particulars of the device's address on its parent controller or bus.  See https://libvirt.org/formatdomain.html#elementsAddress for details.
--controller Syntax: --controller OPTIONS
Attach a controller device to the guest. TYPE is one of: ide, fdc, scsi, sata, virtio-serial, or usb .
Controller also supports the special values usb2 and usb3 to specify which version of the USB controller should be used (version 2 or 3).
model  Controller model.  These may vary according to the hypervisor and its version.  Most commonly used models are e.g. auto , virtio-scsi for the scsi controller, ehci or none``for the ``usb controller.
Use --controller=? to see a list of all available sub options.  Complete details at https://libvirt.org/formatdomain.html#elementsControllers
--input Syntax: --input OPTIONS
Attach an input device to the guest. Example input device types are mouse, tablet, or keyboard.
Use --input=? to see a list of all available sub options.  Complete details at https://libvirt.org/formatdomain.html#elementsInput
--hostdev, --host-device Syntax: --hostdev, --host-device OPTIONS
Attach a physical host device to the guest. Some example values for HOSTDEV:
--hostdev pci_0000_00_1b_0 A node device name via libvirt, as shown by 'virsh nodedev-list'
--hostdev 001.003 USB by bus, device (via lsusb).
--hostdev 0x1234:0x5678 USB by vendor, product (via lsusb).
--hostdev 1f.01.02 PCI device (via lspci).
--hostdev wlan0,type=net Network device (in LXC container).
--hostdev /dev/net/tun,type=misc Character device (in LXC container).
--hostdev /dev/sdf,type=storage Block device (in LXC container).
Use --hostdev=? to see a list of all available sub options.  Complete details at https://libvirt.org/formatdomain.html#elementsHostDev
--sound Syntax: --sound MODEL
Attach a virtual audio device to the guest. MODEL specifies the emulated sound card model. Possible values are ich6, ich9, ac97, es1370, sb16, pcspk, or default. 'default' will try to pick the best model that the specified OS supports.
This deprecates the old --soundhw option.  Use --sound=? to see a list of all available sub options.  Complete details at https://libvirt.org/formatdomain.html#elementsSound
--watchdog Syntax: --watchdog MODEL[,action=ACTION]
Attach a virtual hardware watchdog device to the guest. This requires a daemon and device driver in the guest. The watchdog fires a signal when the virtual machine appears to hung. ACTION specifies what libvirt will do when the watchdog fires. Values are
reset  Forcefully reset the guest (the default)
poweroff Forcefully power off the guest
pause  Pause the guest
none   Do nothing
shutdown Gracefully shutdown the guest (not recommended, since a hung guest probably won't respond to a graceful shutdown)
MODEL is the emulated device model: either i6300esb (the default) or ib700.  Some examples:
--watchdog default Use the recommended settings
--watchdog i6300esb,action=poweroff Use the i6300esb with the 'poweroff' action
Use --watchdog=? to see a list of all available sub options.  Complete details at https://libvirt.org/formatdomain.html#elementsWatchdog
--serial Syntax: --serial OPTIONS
Specifies a serial device to attach to the guest, with various options. The general format of a serial string is
--serial type,opt1=val1,opt2=val2,...
--serial and --parallel devices share all the same options, unless otherwise noted. Some of the types of character device redirection are:
--serial pty Pseudo TTY. The allocated pty will be listed in the running guests XML description.
--serial dev,path=HOSTPATH Host device. For serial devices, this could be /dev/ttyS0. For parallel devices, this could be /dev/parport0.
--serial file,path=FILENAME Write output to FILENAME.
--serial tcp,host=HOST:PORT,source.mode=MODE,protocol.type=PROTOCOL TCP net console. MODE is either 'bind' (wait for connections on HOST:PORT) or 'connect' (send output to HOST:PORT), default is 'bind'. HOST defaults to '127.0.0.1', but PORT is required. PROTOCOL can be either 'raw' or 'telnet' (default 'raw'). If 'telnet', the port acts like a telnet server or client.  Some examples:
Wait for connections on any address, port 4567:
--serial tcp,host=0.0.0.0:4567
Connect to localhost, port 1234:
--serial tcp,host=:1234,source.mode=connect
Wait for telnet connection on localhost, port 2222. The user could then connect interactively to this console via 'telnet localhost 2222':
--serial tcp,host=:2222,source.mode=bind,source.protocol=telnet
--serial udp,host=CONNECT_HOST:PORT,bind_host=BIND_HOST:BIND_PORT UDP net console. HOST:PORT is the destination to send output to (default HOST is '127.0.0.1', PORT is required). BIND_HOST:BIND_PORT is the optional local address to bind to (default BIND_HOST is 127.0.0.1, but is only set if BIND_PORT is specified). Some examples:
Send output to default syslog port (may need to edit /etc/rsyslog.conf accordingly):
--serial udp,host=:514
Send output to remote host 192.168.10.20, port 4444 (this output can be read on the remote host using 'nc -u -l 4444'):
--serial udp,host=192.168.10.20:4444
--serial unix,path=UNIXPATH,mode=MODE Unix socket, see unix(7). MODE has similar behavior and defaults as --serial tcp,mode=MODE
Use --serial=? to see a list of all available sub options.  Complete details at https://libvirt.org/formatdomain.html#elementsCharSerial
--parallel Syntax: --parallel OPTIONS
Specify a parallel device. The format and options are largely identical to serial
Use --parallel=? to see a list of all available sub options.  Complete details at https://libvirt.org/formatdomain.html#elementsCharParallel
--channel Specifies a communication channel device to connect the guest and host machine. This option uses the same options as --serial and --parallel for specifying the host/source end of the channel. Extra 'target' options are used to specify how the guest machine sees the channel.
Some of the types of character device redirection are:
--channel SOURCE,target.type=guestfwd,target.address=HOST:PORT Communication channel using QEMU usermode networking stack. The guest can connect to the channel using the specified HOST:PORT combination.
--channel SOURCE,target.type=virtio[,target.name=NAME] Communication channel using virtio serial (requires 2.6.34 or later host and guest). Each instance of a virtio --channel line is exposed in the guest as /dev/vport0p1, /dev/vport0p2, etc. NAME is optional metadata, and can be any string, such as org.linux-kvm.virtioport1.  If specified, this will be exposed in the guest at /sys/class/virtio-ports/vport0p1/NAME
--channel spicevmc,target.type=virtio[,target.name=NAME] Communication channel for QEMU spice agent, using virtio serial (requires 2.6.34 or later host and guest). NAME is optional metadata, and can be any string, such as the default com.redhat.spice.0 that specifies how the guest will see the channel.
Use --channel=? to see a list of all available sub options.  Complete details at https://libvirt.org/formatdomain.html#elementsCharChannel
--console Connect a text console between the guest and host. Certain guest and hypervisor combinations can automatically set up a getty in the guest, so an out of the box text login can be provided (target_type=xen for xen paravirt guests, and possibly target_type=virtio in the future).
--console pty,target.type=virtio Connect a virtio console to the guest, redirected to a PTY on the host.  For supported guests, this exposes /dev/hvc0 in the guest. See https://fedoraproject.org/wiki/Features/VirtioSerial for more info. virtio console requires libvirt 0.8.3 or later.
Use --console=? to see a list of all available sub options.  Complete details at https://libvirt.org/formatdomain.html#elementsCharConsole
--video Syntax: --video OPTIONS
Specify what video device model will be attached to the guest. Valid values for VIDEO are hypervisor specific, but some options for recent kvm are cirrus, vga, qxl, virtio, or vmvga (vmware).  Use --video=? to see a list of all available sub options.  Complete details at https://libvirt.org/formatdomain.html#elementsVideo
--smartcard Syntax: --smartcard MODE[,OPTIONS]
Configure a virtual smartcard device.
Example MODE values are host, host-certificates, or passthrough.  Example suboptions include:
type   Character device type to connect to on the host. This is only applicable for passthrough mode.
An example invocation:
--smartcard passthrough,type=spicevmc Use the smartcard channel of a SPICE graphics device to pass smartcard info to the guest
Use --smartcard=? to see a list of all available sub options.  Complete details at https://libvirt.org/formatdomain.html#elementsSmartcard
--redirdev Syntax: --redirdev BUS[,OPTIONS]
Add a redirected device. Example suboptions:
type   The redirection type, currently supported is tcp or spicevmc .
server The TCP server connection details, of the form 'server:port'.
Examples invocations:
--redirdev usb,type=tcp,server=localhost:4000 Add a USB redirected device provided by the TCP server on 'localhost' port 4000.
--redirdev usb,type=spicevmc Add a USB device redirected via a dedicated Spice channel.
Use --redirdev=? to see a list of all available sub options.  Complete details at https://libvirt.org/formatdomain.html#elementsRedir
--memballoon Syntax: --memballoon MODEL[,OPTIONS]
Attach a virtual memory balloon device to the guest. If the memballoon device needs to be explicitly disabled, MODEL='none' is used.
MODEL is the type of memballoon device provided. The value can be 'virtio', 'xen' or 'none'. Some examples:
--memballoon virtio Explicitly create a 'virtio' memballoon device
--memballoon none Disable the memballoon device
Use --memballoon=? to see a list of all available sub options.  Complete details at https://libvirt.org/formatdomain.html#elementsMemBalloon
--tpm Syntax: --tpm TYPE[,OPTIONS]
Configure a virtual TPM device. Examples:
--tpm /dev/tpm Convenience option for passing through the hosts TPM.
--tpm emulator Request an emulated TPM device.
Use --tpm=? to see a list of all available sub options.  Complete details at https://libvirt.org/formatdomain.html#elementsTpm
--rng Syntax: --rng TYPE[,OPTIONS]
Configure a virtual RNG device.
Example TYPE values include random, egd or builtin.
Example invocations:
--rng /dev/urandom Use the /dev/urandom device to get entropy data, this form implicitly uses the "random" model.
--rng builtin Use the builtin rng device to get entropy data.
--rng egd,backend.source.host=localhost,backend.source.service=8000,backend.type=tcp Connect to localhost to the TCP port 8000 to get entropy data.
Use --rng=? to see a list of all available sub options.  Complete details at https://libvirt.org/formatdomain.html#elementsRng
--panic Syntax: --panic MODEL[,OPTS]
Attach a panic notifier device to the guest.  For the recommended settings, use: --panic default
Use --panic=? to see a list of all available sub options.  Complete details at https://libvirt.org/formatdomain.html#elementsPanic
--memdev Syntax: --memdev OPTS
Add a memory module to a guest which can be hotunplugged. To add a memdev you need to configure hotplugmemory and NUMA for a guest.
Use --memdev=? to see a list of all available sub options.  Complete details at https://libvirt.org/formatdomain.html#elementsMemory.
--vsock Syntax: --vsock OPTS
Configure a vsock host/guest interface. A typical configuration would be
--vsock cid.auto=yes
Use --vsock=? to see a list of all available sub options.  Complete details at https://libvirt.org/formatdomain.html#vsock.
--iommu Syntax: --iommu MODEL[,OPTS]
Add an IOMMU device to the guest.
Use --iommu=? to see a list of all available options.  Complete details at https://libvirt.org/formatdomain.html#elementsIommu.
-h, --help Show the help message and exit
--autostart Set the autostart flag for a domain. This causes the domain to be started on host boot up.
--transient Use --import or --boot and --transient if you want a transient libvirt VM.  These VMs exist only until the domain is shut down or the host server is restarted.  Libvirt forgets the XML configuration of the VM after either of these events.  Note that the VM's disks will not be deleted.  See: https://wiki.libvirt.org/page/VM_lifecycle#Transient_guest_domains_vs_Persistent_guest_domains
--destroy-on-exit When the VM console window is exited, destroy (force poweroff) the VM. If you combine this with --transient, this makes the virt-install command work similar to qemu, where the VM is shutdown when the console window is closed by the user.
--print-xml Syntax: --print-xml [STEP]
Print the generated XML of the guest, instead of defining it. By default this WILL do storage creation (can be disabled with --dry-run). This option implies --quiet.
If the VM install has multiple phases, by default this will print all generated XML. If you want to print a particular step, use --print-xml 2 (for the second phase XML).
--noreboot Prevent the domain from automatically rebooting after the install has completed.
--wait Syntax: --wait WAIT
Configure how virt-install will wait for the install to complete. Without this option, virt-install will wait for the console to close (not necessarily indicating the guest has shutdown), or in the case of --noautoconsole, simply kick off the install and exit.
Bare '--wait' or any negative value will make virt-install wait indefinitely.  Any positive number is the number of minutes virt-install will wait. If the time limit is exceeded, virt-install simply exits, leaving the virtual machine in its current state.
--dry-run Proceed through the guest creation process, but do NOT create storage devices, change host device configuration, or actually teach libvirt about the guest.  virt-install may still fetch install media, since this is required to properly detect the OS to install.
--check Enable or disable some validation checks. Some examples are warning about using a disk that's already assigned to another VM (--check path_in_use=on|off), or warning about potentially running out of space during disk allocation (--check disk_size=on|off). Most checks are performed by default.
-q, --quiet Only print fatal error messages.
-d, --debug Print debugging information to the terminal when running the install process.  The debugging information is also stored in ~/.cache/virt-manager/virt-install.log even if this parameter is omitted.
The simplest invocation to interactively install a Fedora 29 KVM VM with recommended defaults. virt-viewer(1) will be launched to graphically interact with the VM install
# sudo virt-install --install fedora29
Similar, but use libosinfo's unattended install support, which will perform the fedora29 install automatically without user intervention:
# sudo virt-install --install fedora29 --unattended
Install a Windows 10 VM, using 40GiB storage in the default location and 4096MiB of ram, and ensure we are connecting to the system libvirtd instance:
# virt-install \ --connect qemu:///system \ --name my-win10-vm \ --memory 4096 \ --disk size=40 \ --os-variant win10 \ --cdrom /path/to/my/win10.iso
Install a CentOS 7 KVM from a URL, with recommended device defaults and default required storage, but specifically request VNC graphics instead of the default SPICE, and request 8 virtual CPUs and 8192 MiB of memory:
# virt-install \ --connect qemu:///system \ --memory 8192 \ --vcpus 8 \ --graphics vnc \ --os-variant centos7.0 \ --location http://mirror.centos.org/centos-7/7/os/x86_64/
Create a VM around an existing debian9 disk image:
# virt-install \ --import \ --memory 512 \ --disk /home/user/VMs/my-debian9.img \ --os-variant debian9
Start serial QEMU ARM VM, which requires specifying a manual kernel.
# virt-install \ --name armtest \ --memory 1024 \ --arch armv7l --machine vexpress-a9 \ --disk /home/user/VMs/myarmdisk.img \ --boot kernel=/tmp/my-arm-kernel,initrd=/tmp/my-arm-initrd,dtb=/tmp/my-arm-dtb,kernel_args="console=ttyAMA0 rw root=/dev/mmcblk0p3" \ --graphics none
Start an SEV launch security VM with 4GB RAM, 4GB+256MiB of hard_limit, with a couple of virtio devices:
Note: The IOMMU flag needs to be turned on with driver.iommu for virtio devices. Usage of --memtune is currently required because of SEV limitations, refer to libvirt docs for a detailed explanation.
# virt-install \ --name foo \ --memory 4096 \ --boot uefi \ --machine q35 \ --memtune hard_limit=4563402 \ --disk size=15,target.bus=scsi \ --import \ --controller type=scsi,model=virtio-scsi,driver.iommu=on \ --controller type=virtio-serial,driver.iommu=on \ --network network=default,model=virtio,driver.iommu=on \ --rng /dev/random,driver.iommu=on \ --memballoon driver.iommu=on \ --launchSecurity sev
Please see https://virt-manager.org/bugs
virsh(1), virt-clone(1), virt-manager(1), the project website https://virt-manager.org
MORE(1)                           User Commands                          MORE(1)
more - file perusal filter for crt viewing
more [options] file ...
more is a filter for paging through text one screenful at a time. This version is especially primitive. Users should realize that less(1) provides more(1) emulation plus extensive enhancements.
Options are also taken from the environment variable MORE (make sure to precede them with a dash (-)) but command-line options will override those.
-d, --silent Prompt with "[Press space to continue, 'q' to quit.]", and display "[Press 'h' for instructions.]" instead of ringing the bell when an illegal key is pressed.
-l, --logical Do not pause after any line containing a ^L (form feed).
-f, --no-pause Count logical lines, rather than screen lines (i.e., long lines are not folded).
-p, --print-over Do not scroll. Instead, clear the whole screen and then display the text. Notice that this option is switched on automatically if the executable is named page.
-c, --clean-print Do not scroll. Instead, paint each screen from the top, clearing the remainder of each line as it is displayed.
-s, --squeeze Squeeze multiple blank lines into one.
-u, --plain Suppress underlining. This option is silently ignored as backwards compatibility.
-n, --lines number Specify the number of lines per screenful. The number argument is a positive decimal integer. The --lines option shall override any values obtained from any other source, such as number of lines reported by terminal.
-number A numeric option means the same as --lines option argument.
+number Start displaying each file at line number.
+/string The string to be searched in each file before starting to display it.
Interactive commands for more are based on vi(1). Some commands may be preceded by a decimal number, called k in the descriptions below. In the following descriptions, ^X means control-X.
h or ? Help; display a summary of these commands. If you forget all other commands, remember this one.
SPACE Display next k lines of text. Defaults to current screen size.
z Display next k lines of text. Defaults to current screen size. Argument becomes new default.
RETURN Display next k lines of text. Defaults to 1. Argument becomes new default.
d or ^D Scroll k lines. Default is current scroll size, initially 11. Argument becomes new default.
q or Q or INTERRUPT Exit.
s Skip forward k lines of text. Defaults to 1.
f Skip forward k screenfuls of text. Defaults to 1.
b or ^B Skip backwards k screenfuls of text. Defaults to 1. Only works with files, not pipes.
' Go to the place where the last search started.
= Display current line number.
/pattern Search for kth occurrence of regular expression. Defaults to 1.
n Search for kth occurrence of last regular expression. Defaults to 1.
!command or :!command Execute command in a subshell.
v Start up an editor at current line. The editor is taken from the environment variable VISUAL if defined, or EDITOR if VISUAL is not defined, or defaults to vi(1) if neither VISUAL nor EDITOR is defined.
^L Redraw screen.
:n Go to kth next file. Defaults to 1.
:p Go to kth previous file. Defaults to 1.
:f Display current file name and line number.
. Repeat previous command.
The more command respects the following environment variables, if they exist:
MORE This variable may be set with favored options to more.
SHELL Current shell in use (normally set by the shell at login time).
TERM The terminal type used by more to get the terminal characteristics necessary to manipulate the screen.
VISUAL The editor the user prefers. Invoked when command key v is pressed.
EDITOR The editor of choice when VISUAL is not specified.
The more command appeared in 3.0BSD. This man page documents more version 5.19 (Berkeley 6/29/88), which is currently in use in the Linux community. Documentation was produced using several other versions of the man page, and extensive inspection of the source code.
Eric Shienbrood, UC Berkeley.
Modified by Geoff Peck, UCB to add underlining, single spacing.
Modified by John Foderaro, UCB to add -c and MORE environment variable.
less(1), vi(1)
The more command is part of the util-linux package which can be downloaded from Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/>.
XMLLINT(1)                       xmllint Manual                       XMLLINT(1)
xmllint - command line XML tool
xmllint [--version | --debug | --shell | --xpath "XPath_expression" | --debugent | --copy | --recover | --noent | --noout | --nonet | --path "PATH(S)" | --load-trace | --htmlout | --nowrap | --valid | --postvalid | --dtdvalid URL | --dtdvalidfpi FPI | --timing | --output FILE | --repeat | --insert | --compress | --html | --xmlout | --push | --memory | --maxmem NBBYTES | --nowarning | --noblanks | --nocdata | --format | --encode ENCODING | --dropdtd | --nsclean | --testIO | --catalogs | --nocatalogs | --auto | --xinclude | --noxincludenode | --loaddtd | --dtdattr | --stream | --walker | --pattern PATTERNVALUE | --chkregister | --relaxng SCHEMA | --schema SCHEMA | --c14n] {XML-FILE(S)... | -}
xmllint --help
The xmllint program parses one or more XML files, specified on the command line as XML-FILE (or the standard input if the filename provided is - ). It prints various types of output, depending upon the options selected. It is useful for detecting errors both in XML code and in the XML parser itself.
xmllint is included in libxml(3).
xmllint accepts the following options (in alphabetical order):
--auto Generate a small document for testing purposes.
--catalogs Use the SGML catalog(s) from SGML_CATALOG_FILES. Otherwise XML catalogs starting from /etc/xml/catalog are used by default.
--chkregister Turn on node registration. Useful for developers testing libxml(3) node tracking code.
--compress Turn on gzip(1) compression of output.
--copy Test the internal copy implementation.
--c14n Use the W3C XML Canonicalisation (C14N) to serialize the result of parsing to stdout. It keeps comments in the result.
--dtdvalid URL Use the DTD specified by an URL for validation.
--dtdvalidfpi FPI Use the DTD specified by a Formal Public Identifier FPI for validation, note that this will require a catalog exporting that Formal Public Identifier to work.
--debug Parse a file and output an annotated tree of the in-memory version of the document.
--debugent Debug the entities defined in the document.
--dropdtd Remove DTD from output.
--dtdattr Fetch external DTD and populate the tree with inherited attributes.
--encode ENCODING Output in the given encoding. Note that this works for full document not fragments or result from XPath queries.
--format Reformat and reindent the output. The XMLLINT_INDENT environment variable controls the indentation. The default value is two spaces " ").
--help Print out a short usage summary for xmllint.
--html Use the HTML parser.
--htmlout Output results as an HTML file. This causes xmllint to output the necessary HTML tags surrounding the result tree output so the results can be displayed/viewed in a browser.
--insert Test for valid insertions.
--loaddtd Fetch an external DTD.
--load-trace Display all the documents loaded during the processing to stderr.
--maxmem NNBYTES Test the parser memory support.  NNBYTES is the maximum number of bytes the library is allowed to allocate. This can also be used to make sure batch processing of XML files will not exhaust the virtual memory of the server running them.
--memory Parse from memory.
--noblanks Drop ignorable blank spaces.
--nocatalogs Do not use any catalogs.
--nocdata Substitute CDATA section by equivalent text nodes.
--noent Substitute entity values for entity references. By default, xmllint leaves entity references in place.
--nonet Do not use the Internet to fetch DTDs or entities.
--noout Suppress output. By default, xmllint outputs the result tree.
--nowarning Do not emit warnings from the parser and/or validator.
--nowrap Do not output HTML doc wrapper.
--noxincludenode Do XInclude processing but do not generate XInclude start and end nodes.
--nsclean Remove redundant namespace declarations.
--output FILE Define a file path where xmllint will save the result of parsing. Usually the programs build a tree and save it on stdout, with this option the result XML instance will be saved onto a file.
--path "PATH(S)" Use the (space- or colon-separated) list of filesystem paths specified by PATHS to load DTDs or entities. Enclose space-separated lists by quotation marks.
--pattern PATTERNVALUE Used to exercise the pattern recognition engine, which can be used with the reader interface to the parser. It allows to select some nodes in the document based on an XPath (subset) expression. Used for debugging.
--postvalid Validate after parsing has completed.
--push Use the push mode of the parser.
--recover Output any parsable portions of an invalid document.
--relaxng SCHEMA Use RelaxNG file named SCHEMA for validation.
--repeat Repeat 100 times, for timing or profiling.
--schema SCHEMA Use a W3C XML Schema file named SCHEMA for validation.
--shell Run a navigating shell. Details on available commands in shell mode are below (see the section called “SHELL COMMANDS”).
--xpath "XPath_expression" Run an XPath expression given as argument and print the result. In case of a nodeset result, each node in the node set is serialized in full in the output. In case of an empty node set the "XPath set is empty" result will be shown and an error exit code will be returned.
--stream Use streaming API - useful when used in combination with --relaxng or --valid options for validation of files that are too large to be held in memory.
--testIO Test user input/output support.
--timing Output information about the time it takes xmllint to perform the various steps.
--valid Determine if the document is a valid instance of the included Document Type Definition (DTD). A DTD to be validated against also can be specified at the command line using the --dtdvalid option. By default, xmllint also checks to determine if the document is well-formed.
--version Display the version of libxml(3) used.
--walker Test the walker module, which is a reader interface but for a document tree, instead of using the reader API on an unparsed document it works on an existing in-memory tree. Used for debugging.
--xinclude Do XInclude processing.
--xmlout Used in conjunction with --html. Usually when HTML is parsed the document is saved with the HTML serializer. But with this option the resulting document is saved with the XML serializer. This is primarily used to generate XHTML from HTML input.
xmllint offers an interactive shell mode invoked with the --shell command. Available commands in shell mode include (in alphabetical order):
base Display XML base of the node.
bye Leave the shell.
cat NODE Display the given node or the current one.
cd PATH Change the current node to the given path (if unique) or root if no argument is given.
dir PATH Dumps information about the node (namespace, attributes, content).
du PATH Show the structure of the subtree under the given path or the current node.
exit Leave the shell.
help Show this help.
free Display memory usage.
load FILENAME Load a new document with the given filename.
ls PATH List contents of the given path or the current directory.
pwd Display the path to the current node.
quit Leave the shell.
save FILENAME Save the current document to the given filename or to the original name.
validate Check the document for errors.
write FILENAME Write the current node to the given filename.
SGML_CATALOG_FILES SGML catalog behavior can be changed by redirecting queries to the user's own set of catalogs. This can be done by setting the SGML_CATALOG_FILES environment variable to a list of catalogs. An empty one should deactivate loading the default /etc/sgml/catalog catalog.
XML_CATALOG_FILES XML catalog behavior can be changed by redirecting queries to the user's own set of catalogs. This can be done by setting the XML_CATALOG_FILES environment variable to a list of catalogs. An empty one should deactivate loading the default /etc/xml/catalog catalog.
XML_DEBUG_CATALOG Setting the environment variable XML_DEBUG_CATALOG to non-zero using the export command outputs debugging information related to catalog operations.
XMLLINT_INDENT Setting the environment variable XMLLINT_INDENT controls the indentation. The default value is two spaces " ".
xmllint return codes provide information that can be used when calling it from scripts.
0 No error
1 Unclassified
2 Error in DTD
3 Validation error
4 Validation error
5 Error in schema compilation
6 Error writing output
7 Error in pattern (generated when --pattern option is used)
8 Error in Reader registration (generated when --chkregister option is used)
9 Out of memory error
libxml(3)
More information can be found at
•   libxml(3) web page http://www.xmlsoft.org/
•   W3C XSLT page http://www.w3.org/TR/xslt
John Fleck <jfleck@inkstain.net> Author.
Ziying Sherwin <sherwin@nlm.nih.gov> Author.
Heiko Rupp <hwr@pilhuhn.de> Author.
Copyright © 2001, 2004
GIT-SWITCH(1)                      Git Manual                      GIT-SWITCH(1)
git-switch - Switch branches
git switch [<options>] [--no-guess] <branch> git switch [<options>] --detach [<start-point>] git switch [<options>] (-c|-C) <new-branch> [<start-point>] git switch [<options>] --orphan <new-branch>
Switch to a specified branch. The working tree and the index are updated to match the branch. All new commits will be added to the tip of this branch.
Optionally a new branch could be created with either -c, -C, automatically from a remote branch of same name (see --guess), or detach the working tree from any branch with --detach, along with switching.
Switching branches does not require a clean index and working tree (i.e. no differences compared to HEAD). The operation is aborted however if the operation leads to loss of local changes, unless told otherwise with --discard-changes or --merge.
<branch> Branch to switch to.
<new-branch> Name for the new branch.
<start-point> The starting point for the new branch. Specifying a <start-point> allows you to create a branch based on some other point in history than where HEAD currently points. (Or, in the case of --detach, allows you to inspect and detach from some other point.)
You can use the @{-N} syntax to refer to the N-th last branch/commit switched to using "git switch" or "git checkout" operation. You may also specify - which is synonymous to @{-1}. This is often used to switch quickly between two branches, or to undo a branch switch by mistake.
As a special case, you may use A...B as a shortcut for the merge base of A and B if there is exactly one merge base. You can leave out at most one of A and B, in which case it defaults to HEAD.
-c <new-branch>, --create <new-branch> Create a new branch named <new-branch> starting at <start-point> before switching to the branch. This is a convenient shortcut for:
$ git branch <new-branch> $ git switch <new-branch>
-C <new-branch>, --force-create <new-branch> Similar to --create except that if <new-branch> already exists, it will be reset to <start-point>. This is a convenient shortcut for:
$ git branch -f <new-branch> $ git switch <new-branch>
-d, --detach Switch to a commit for inspection and discardable experiments. See the "DETACHED HEAD" section in git-checkout(1) for details.
--guess, --no-guess If <branch> is not found but there does exist a tracking branch in exactly one remote (call it <remote>) with a matching name, treat as equivalent to
$ git switch -c <branch> --track <remote>/<branch>
If the branch exists in multiple remotes and one of them is named by the checkout.defaultRemote configuration variable, we’ll use that one for the purposes of disambiguation, even if the <branch> isn’t unique across all remotes. Set it to e.g.  checkout.defaultRemote=origin to always checkout remote branches from there if <branch> is ambiguous but exists on the origin remote. See also checkout.defaultRemote in git-config(1).
--guess is the default behavior. Use --no-guess to disable it.
The default behavior can be set via the checkout.guess configuration variable.
-f, --force An alias for --discard-changes.
--discard-changes Proceed even if the index or the working tree differs from HEAD. Both the index and working tree are restored to match the switching target. If --recurse-submodules is specified, submodule content is also restored to match the switching target. This is used to throw away local changes.
-m, --merge If you have local modifications to one or more files that are different between the current branch and the branch to which you are switching, the command refuses to switch branches in order to preserve your modifications in context. However, with this option, a three-way merge between the current branch, your working tree contents, and the new branch is done, and you will be on the new branch.
When a merge conflict happens, the index entries for conflicting paths are left unmerged, and you need to resolve the conflicts and mark the resolved paths with git add (or git rm if the merge should result in deletion of the path).
-q, --quiet Quiet, suppress feedback messages.
-t, --track When creating a new branch, set up "upstream" configuration.  -c is implied. See --track in git-branch(1) for details.
If no -c option is given, the name of the new branch will be derived from the remote-tracking branch, by looking at the local part of the refspec configured for the corresponding remote, and then stripping the initial part up to the "*". This would tell us to use hack as the local branch when branching off of origin/hack (or remotes/origin/hack, or even refs/remotes/origin/hack). If the given name has no slash, or the above guessing results in an empty name, the guessing is aborted. You can explicitly give a name with -c in such a case.
--orphan <new-branch> Create a new orphan branch, named <new-branch>. All tracked files are removed.
--ignore-other-worktrees git switch refuses when the wanted ref is already checked out by another worktree. This option makes it check the ref out anyway. In other words, the ref can be held by more than one worktree.
--recurse-submodules, --no-recurse-submodules Using --recurse-submodules will update the content of all active submodules according to the commit recorded in the superproject. If nothing (or --no-recurse-submodules) is used, submodules working trees will not be updated. Just like git-submodule(1), this will detach HEAD of the submodules.
The following command switches to the "master" branch:
$ git switch master
After working in the wrong branch, switching to the correct branch would be done using:
$ git switch mytopic
However, your "wrong" branch and correct "mytopic" branch may differ in files that you have modified locally, in which case the above switch would fail like this:
$ git switch mytopic error: You have local changes to 'frotz'; not switching branches.
You can give the -m flag to the command, which would try a three-way merge:
$ git switch -m mytopic Auto-merging frotz
After this three-way merge, the local modifications are not registered in your index file, so git diff would show you what changes you made since the tip of the new branch.
To switch back to the previous branch before we switched to mytopic (i.e. "master" branch):
$ git switch -
You can grow a new branch from any commit. For example, switch to "HEAD~3" and create branch "fixup":
$ git switch -c fixup HEAD~3 Switched to a new branch 'fixup'
If you want to start a new branch from a remote branch of the same name:
$ git switch new-topic Branch 'new-topic' set up to track remote branch 'new-topic' from 'origin' Switched to a new branch 'new-topic'
To check out commit HEAD~3 for temporary inspection or experiment without creating a new branch:
$ git switch --detach HEAD~3 HEAD is now at 9fc9555312 Merge branch 'cc/shared-index-permbits'
If it turns out whatever you have done is worth keeping, you can always create a new name for it (without switching away):
$ git switch -c good-surprises
git-checkout(1), git-branch(1)
TUNE2FS(8)                   System Manager's Manual                  TUNE2FS(8)
tune2fs - adjust tunable file system parameters on ext2/ext3/ext4 file systems
tune2fs [ -l ] [ -c max-mount-counts ] [ -e errors-behavior ] [ -f ] [ -i interval-between-checks ] [ -I new_inode_size ] [ -j ] [ -J journal- options ] [ -m reserved-blocks-percentage ] [ -o [^]mount-options[,...] ] [ -r reserved-blocks-count ] [ -u user ] [ -g group ] [ -C mount-count ] [ -E extended-options ] [ -L volume-label ] [ -M last-mounted-directory ] [ -O [^]feature[,...]  ] [ -Q quota-options ] [ -T time-last-checked ] [ -U UUID ] [ -z undo_file ] device
tune2fs allows the system administrator to adjust various tunable file system parameters on Linux ext2, ext3, or ext4 file systems.  The current values of these options can be displayed by using the -l option to tune2fs(8) program, or by using the dumpe2fs(8) program.
The device specifier can either be a filename (i.e., /dev/sda1), or a LABEL or UUID specifier: "LABEL=volume-label" or "UUID=uuid".  (i.e., LABEL=home or UUID=e40486c6-84d5-4f2f-b99c-032281799c9d).
-c max-mount-counts Adjust the number of mounts after which the file system will be checked by e2fsck(8).  If max-mount-counts is the string "random", tune2fs will use a random value between 20 and 40.  If max-mount- counts is 0 or -1, the number of times the file system is mounted will be disregarded by e2fsck(8) and the kernel.
Staggering the mount-counts at which file systems are forcibly checked will avoid all file systems being checked at one time when using journaled file systems.
Mount-count-dependent checking is disabled by default to avoid unanticipated long reboots while e2fsck does its work.  If you are concerned about file system corruptions caused by potential hardware problems of kernel bugs, a better solution than mount- count-dependent checking is to use the e2scrub(8) program.  This does require placing the file system on an LVM volume, however.
-C mount-count Set the number of times the file system has been mounted.  If set to a greater value than the max-mount-counts parameter set by the -c option, e2fsck(8) will check the file system at the next reboot.
-e error-behavior Change the behavior of the kernel code when errors are detected. In all cases, a file system error will cause e2fsck(8) to check the file system on the next boot.  error-behavior can be one of the following:
continue    Continue normal execution.
remount-ro  Remount file system read-only.
panic       Cause a kernel panic.
-E extended-options Set extended options for the file system.  Extended options are comma separated, and may take an argument using the equals ('=') sign.  The following extended options are supported:
clear_mmp Reset the MMP block (if any) back to the clean state. Use only if absolutely certain the device is not currently mounted or being fscked, or major file system corruption can result.  Needs '-f'.
mmp_update_interval=interval Adjust the initial MMP update interval to interval seconds.  Specifying an interval of 0 means to use the default interval.  The specified interval must be less than 300 seconds.  Requires that the mmp feature be enabled.
stride=stride-size Configure the file system for a RAID array with stride-size file system blocks. This is the number of blocks read or written to disk before moving to next disk. This mostly affects placement of file system metadata like bitmaps at mke2fs(2) time to avoid placing them on a single disk, which can hurt the performance.  It may also be used by block allocator.
stripe_width=stripe-width Configure the file system for a RAID array with stripe-width file system blocks per stripe. This is typically be stride-size * N, where N is the number of data disks in the RAID (e.g. RAID 5 N+1, RAID 6 N+2). This allows the block allocator to prevent read- modify-write of the parity in a RAID stripe if possible when the data is written.
hash_alg=hash-alg Set the default hash algorithm used for file systems with hashed b-tree directories.  Valid algorithms accepted are: legacy, half_md4, and tea.
encoding=encoding-name Enable the casefold feature in the super block and set encoding-name as the encoding to be used.  If encoding-name is not specified, utf8 is used. The encoding cannot be altered if casefold was previously enabled.
encoding_flags=encoding-flags Define parameters for file name character encoding operations.  If a flag is not changed using this parameter, its default value is used.  encoding-flags should be a comma-separated lists of flags to be enabled.  The flags cannot be altered if casefold was previously enabled.
The only flag that can be set right now is strict which means that invalid strings should be rejected by the file system.  In the default configuration, the strict flag is disabled.
mount_opts=mount_option_string Set a set of default mount options which will be used when the file system is mounted.  Unlike the bitmask- based default mount options which can be specified with the -o option, mount_option_string is an arbitrary string with a maximum length of 63 bytes, which is stored in the superblock.
The ext4 file system driver will first apply the bitmask-based default options, and then parse the mount_option_string, before parsing the mount options passed from the mount(8) program.
This superblock setting is only honored in 2.6.35+ kernels; and not at all by the ext2 and ext3 file system drivers.
force_fsck Set a flag in the file system superblock indicating that errors have been found.  This will force fsck to run at the next mount.
test_fs Set a flag in the file system superblock indicating that it may be mounted using experimental kernel code, such as the ext4dev file system.
^test_fs Clear the test_fs flag, indicating the file system should only be mounted using production-level file system code.
-f     Force the tune2fs operation to complete even in the face of errors.  This option is useful when removing the has_journal file system feature from a file system which has an external journal (or is corrupted such that it appears to have an external journal), but that external journal is not available.   If the file system appears to require journal replay, the -f flag must be specified twice to proceed.