mirror of
				https://git.proxmox.com/git/systemd
				synced 2025-10-31 02:46:34 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			294 lines
		
	
	
		
			8.1 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
			
		
		
	
	
			294 lines
		
	
	
		
			8.1 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
| '\" t
 | |
| .TH "SYSTEMD\&.LINK" "5" "" "systemd 219" "systemd.link"
 | |
| .\" -----------------------------------------------------------------
 | |
| .\" * Define some portability stuff
 | |
| .\" -----------------------------------------------------------------
 | |
| .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | |
| .\" http://bugs.debian.org/507673
 | |
| .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
 | |
| .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | |
| .ie \n(.g .ds Aq \(aq
 | |
| .el       .ds Aq '
 | |
| .\" -----------------------------------------------------------------
 | |
| .\" * set default formatting
 | |
| .\" -----------------------------------------------------------------
 | |
| .\" disable hyphenation
 | |
| .nh
 | |
| .\" disable justification (adjust text to left margin only)
 | |
| .ad l
 | |
| .\" -----------------------------------------------------------------
 | |
| .\" * MAIN CONTENT STARTS HERE *
 | |
| .\" -----------------------------------------------------------------
 | |
| .SH "NAME"
 | |
| systemd.link \- Network device configuration
 | |
| .SH "SYNOPSIS"
 | |
| .PP
 | |
| \fIlink\fR\&.link
 | |
| .SH "DESCRIPTION"
 | |
| .PP
 | |
| Network link configuration is performed by the
 | |
| \fBnet_setup_link\fR
 | |
| udev builtin\&.
 | |
| .PP
 | |
| The link files are read from the files located in the system network directory
 | |
| /usr/lib/systemd/network, the volatile runtime network directory
 | |
| /run/systemd/network, and the local administration network directory
 | |
| /etc/systemd/network\&. Link files must have the extension
 | |
| \&.link; other extensions are ignored\&. All link files are collectively sorted and processed in lexical order, regardless of the directories in which they live\&. However, files with identical filenames replace each other\&. Files in
 | |
| /etc
 | |
| have the highest priority, files in
 | |
| /run
 | |
| take precedence over files with the same name in
 | |
| /usr/lib\&. This can be used to override a system\-supplied link file with a local file if needed; a symlink in
 | |
| /etc
 | |
| with the same name as a link file in
 | |
| /usr/lib, pointing to
 | |
| /dev/null, disables the link file entirely\&.
 | |
| .PP
 | |
| The link file contains a
 | |
| "[Match]"
 | |
| section, which determines if a given link file may be applied to a given device, as well as a
 | |
| "[Link]"
 | |
| section specifying how the device should be configured\&. The first (in lexical order) of the link files that matches a given device is applied\&. Note that a default file
 | |
| 99\-default\&.link
 | |
| is shipped by the system, any user\-supplied
 | |
| \&.link
 | |
| should hence have a lexically earlier name to be considered at all\&.
 | |
| .SH "[MATCH] SECTION OPTIONS"
 | |
| .PP
 | |
| A link file is said to match a device if each of the entries in the
 | |
| "[Match]"
 | |
| section matches, or if the section is empty\&. The following keys are accepted:
 | |
| .PP
 | |
| \fIMACAddress=\fR
 | |
| .RS 4
 | |
| The hardware address\&.
 | |
| .RE
 | |
| .PP
 | |
| \fIOriginalName=\fR
 | |
| .RS 4
 | |
| A whitespace\-separated list of shell\-style globs matching the device name, as exposed by the udev property "INTERFACE"\&. This can not be used to match on names that have already been changed from userspace\&. Caution is advised when matching on kernel\-assigned names, as they are known to be unstable between reboots\&.
 | |
| .RE
 | |
| .PP
 | |
| \fIPath=\fR
 | |
| .RS 4
 | |
| A whitespace\-separated list of shell\-style globs matching the persistent path, as exposed by the udev property
 | |
| "ID_PATH"\&.
 | |
| .RE
 | |
| .PP
 | |
| \fIDriver=\fR
 | |
| .RS 4
 | |
| A whitespace\-separated list of shell\-style globs matching the driver currently bound to the device, as exposed by the udev property
 | |
| "DRIVER"
 | |
| of its parent device, or if that is not set, the driver as exposed by
 | |
| "ethtool \-i"
 | |
| of the device itself\&.
 | |
| .RE
 | |
| .PP
 | |
| \fIType=\fR
 | |
| .RS 4
 | |
| A whitespace\-separated list of shell\-style globs matching the device type, as exposed by the udev property
 | |
| "DEVTYPE"\&.
 | |
| .RE
 | |
| .PP
 | |
| \fIHost=\fR
 | |
| .RS 4
 | |
| Matches against the hostname or machine ID of the host\&. See
 | |
| "ConditionHost="
 | |
| in
 | |
| \fBsystemd.unit\fR(5)
 | |
| for details\&.
 | |
| .RE
 | |
| .PP
 | |
| \fIVirtualization=\fR
 | |
| .RS 4
 | |
| Checks whether the system is executed in a virtualized environment and optionally test whether it is a specific implementation\&. See
 | |
| "ConditionVirtualization="
 | |
| in
 | |
| \fBsystemd.unit\fR(5)
 | |
| for details\&.
 | |
| .RE
 | |
| .PP
 | |
| \fIKernelCommandLine=\fR
 | |
| .RS 4
 | |
| Checks whether a specific kernel command line option is set (or if prefixed with the exclamation mark unset)\&. See
 | |
| "ConditionKernelCommandLine="
 | |
| in
 | |
| \fBsystemd.unit\fR(5)
 | |
| for details\&.
 | |
| .RE
 | |
| .PP
 | |
| \fIArchitecture=\fR
 | |
| .RS 4
 | |
| Checks whether the system is running on a specific architecture\&. See
 | |
| "ConditionArchitecture="
 | |
| in
 | |
| \fBsystemd.unit\fR(5)
 | |
| for details\&.
 | |
| .RE
 | |
| .SH "[LINK] SECTION OPTIONS"
 | |
| .PP
 | |
| The
 | |
| "[Link]"
 | |
| section accepts the following keys:
 | |
| .PP
 | |
| \fIDescription=\fR
 | |
| .RS 4
 | |
| A description of the device\&.
 | |
| .RE
 | |
| .PP
 | |
| \fIAlias=\fR
 | |
| .RS 4
 | |
| The
 | |
| "ifalias"
 | |
| is set to this value\&.
 | |
| .RE
 | |
| .PP
 | |
| \fIMACAddressPolicy=\fR
 | |
| .RS 4
 | |
| The policy by which the MAC address should be set\&. The available policies are:
 | |
| .PP
 | |
| "persistent"
 | |
| .RS 4
 | |
| If the hardware has a persistent MAC address, as most hardware should, and if it is used by the kernel, nothing is done\&. Otherwise, a new MAC address is generated which is guaranteed to be the same on every boot for the given machine and the given device, but which is otherwise random\&. This feature depends on ID_NET_NAME_* properties existing for the link, on hardware where these properties are not set the generation of a persistent MAC address will fail\&.
 | |
| .RE
 | |
| .PP
 | |
| "random"
 | |
| .RS 4
 | |
| If the kernel is using a random MAC address, nothing is done\&. Otherwise, a new address is randomly generated each time the device appears, typically at boot\&.
 | |
| .RE
 | |
| .RE
 | |
| .PP
 | |
| \fIMACAddress=\fR
 | |
| .RS 4
 | |
| The MAC address to use, if no
 | |
| "MACAddressPolicy="
 | |
| is specified\&.
 | |
| .RE
 | |
| .PP
 | |
| \fINamePolicy=\fR
 | |
| .RS 4
 | |
| An ordered, space\-separated list of policies by which the interface name should be set\&.
 | |
| "NamePolicy"
 | |
| may be disabled by specifying
 | |
| "net\&.ifnames=0"
 | |
| on the kernel command line\&. Each of the policies may fail, and the first successful one is used\&. The name is not set directly, but is exported to udev as the property
 | |
| "ID_NET_NAME", which is, by default, used by a udev rule to set
 | |
| "NAME"\&. If the name has already been set by userspace, no renaming is performed\&. The available policies are:
 | |
| .PP
 | |
| "kernel"
 | |
| .RS 4
 | |
| If the kernel claims that the name it has set for a device is predictable, then no renaming is performed\&.
 | |
| .RE
 | |
| .PP
 | |
| "database"
 | |
| .RS 4
 | |
| The name is set based on entries in the udev\*(Aqs Hardware Database with the key
 | |
| "ID_NET_NAME_FROM_DATABASE"\&.
 | |
| .RE
 | |
| .PP
 | |
| "onboard"
 | |
| .RS 4
 | |
| The name is set based on information given by the firmware for on\-board devices, as exported by the udev property
 | |
| "ID_NET_NAME_ONBOARD"\&.
 | |
| .RE
 | |
| .PP
 | |
| "slot"
 | |
| .RS 4
 | |
| The name is set based on information given by the firmware for hot\-plug devices, as exported by the udev property
 | |
| "ID_NET_NAME_SLOT"\&.
 | |
| .RE
 | |
| .PP
 | |
| "path"
 | |
| .RS 4
 | |
| The name is set based on the device\*(Aqs physical location, as exported by the udev property
 | |
| "ID_NET_NAME_PATH"\&.
 | |
| .RE
 | |
| .PP
 | |
| "mac"
 | |
| .RS 4
 | |
| The name is set based on the device\*(Aqs persistent MAC address, as exported by the udev property
 | |
| "ID_NET_NAME_MAC"\&.
 | |
| .RE
 | |
| .RE
 | |
| .PP
 | |
| \fIName=\fR
 | |
| .RS 4
 | |
| The interface name to use in case all the policies specified in
 | |
| \fINamePolicy=\fR
 | |
| fail, or in case
 | |
| \fINamePolicy=\fR
 | |
| is missing or disabled\&.
 | |
| .RE
 | |
| .PP
 | |
| \fIMTUBytes=\fR
 | |
| .RS 4
 | |
| The maximum transmission unit in bytes to set for the device\&. The usual suffixes K, M, G, are supported and are understood to the base of 1024\&.
 | |
| .RE
 | |
| .PP
 | |
| \fIBitsPerSecond=\fR
 | |
| .RS 4
 | |
| The speed to set for the device, the value is rounded down to the nearest Mbps\&. The usual suffixes K, M, G, are supported and are understood to the base of 1000\&.
 | |
| .RE
 | |
| .PP
 | |
| \fIDuplex=\fR
 | |
| .RS 4
 | |
| The duplex mode to set for the device\&. The accepted values are
 | |
| "half"
 | |
| and
 | |
| "full"\&.
 | |
| .RE
 | |
| .PP
 | |
| \fIWakeOnLan=\fR
 | |
| .RS 4
 | |
| The Wake\-on\-LAN policy to set for the device\&. The supported values are:
 | |
| .PP
 | |
| "phy"
 | |
| .RS 4
 | |
| Wake on PHY activity\&.
 | |
| .RE
 | |
| .PP
 | |
| "magic"
 | |
| .RS 4
 | |
| Wake on receipt of a magic packet\&.
 | |
| .RE
 | |
| .PP
 | |
| "off"
 | |
| .RS 4
 | |
| Never wake\&.
 | |
| .RE
 | |
| .RE
 | |
| .SH "EXAMPLE"
 | |
| .PP
 | |
| \fBExample\ \&1.\ \&/etc/systemd/network/wireless.link\fR
 | |
| .sp
 | |
| .if n \{\
 | |
| .RS 4
 | |
| .\}
 | |
| .nf
 | |
| [Match]
 | |
| MACAddress=12:34:56:78:9a:bc
 | |
| Driver=brcmsmac
 | |
| Path=pci\-0000:02:00\&.0\-*
 | |
| Type=wlan
 | |
| Virtualization=no
 | |
| Host=my\-laptop
 | |
| Architecture=x86\-64
 | |
| 
 | |
| [Link]
 | |
| Name=wireless0
 | |
| MTUBytes=1450
 | |
| BitsPerSecond=10M
 | |
| WakeOnLan=magic
 | |
| MACAddress=cb:a9:87:65:43:21
 | |
| .fi
 | |
| .if n \{\
 | |
| .RE
 | |
| .\}
 | |
| .SH "SEE ALSO"
 | |
| .PP
 | |
| \fBsystemd-udevd.service\fR(8),
 | |
| \fBudevadm\fR(8),
 | |
| \fBsystemd.netdev\fR(5),
 | |
| \fBsystemd.network\fR(5)
 | 
