'\" te .\" Copyright (c) 20088888888 Sun Microsystems, Inc. All Rights Reserved. .\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. .\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] .TH DEVFSADM 1M "Jun 23, 2008" .SH NAME devfsadm, devfsadmd \- administration command for /dev .SH SYNOPSIS .LP .nf \fB/usr/sbin/devfsadm\fR [\fB-C\fR] [\fB-c\fR \fIdevice_class\fR] [\fB-i\fR \fIdriver_name\fR] [ \fB-n\fR] [\fB-r\fR \fIroot_dir\fR] [\fB-s\fR] [\fB-t\fR \fItable_file\fR] [\fB-v\fR] .fi .LP .nf \fB/usr/lib/devfsadm/devfsadmd\fR .fi .SH DESCRIPTION .sp .LP \fBdevfsadm\fR(1M) maintains the \fB/dev\fR namespace. It replaces the previous suite of \fBdevfs\fR administration tools including \fBdrvconfig\fR(1M), \fBdisks\fR(1M), \fBtapes\fR(1M), \fBports\fR(1M), \fBaudlinks\fR(1M), and \fBdevlinks\fR(1M). .sp .LP The default operation is to attempt to load every driver in the system and attach to all possible device instances. Next, \fBdevfsadm\fR creates logical links to device nodes in \fB/dev\fR and \fB/devices\fR and loads the device policy. .sp .LP \fBdevfsadmd\fR(1M) is the daemon version of \fBdevfsadm\fR(1M). The daemon is started during system startup and is responsible for handling both reconfiguration boot processing and updating \fB/dev\fR and \fB/devices\fR in response to dynamic reconfiguration event notifications from the kernel. .sp .LP For compatibility purposes, \fBdrvconfig\fR(1M), \fBdisks\fR(1M), \fBtapes\fR(1M), \fBports\fR(1M), \fBaudlinks\fR(1M), and \fBdevlinks\fR(1M) are implemented as links to \fBdevfsadm\fR. .sp .LP In addition to managing \fB/dev\fR, \fBdevfsadm\fR also maintains the \fBpath_to_inst\fR(4) database. .SH OPTIONS .sp .LP The following options are supported: .sp .ne 2 .na \fB\fB-C\fR\fR .ad .RS 19n Cleanup mode. Prompt \fBdevfsadm\fR to cleanup dangling \fB/dev\fR links that are not normally removed. If the \fB-c\fR option is also used, \fBdevfsadm\fR only cleans up for the listed devices' classes. .RE .sp .ne 2 .na \fB\fB-c\fR \fIdevice_class\fR\fR .ad .RS 19n Restrict operations to devices of class \fIdevice_class\fR. Solaris defines the following values for \fIdevice_class\fR: \fBdisk\fR, \fBtape\fR, \fBport\fR, \fBaudio\fR, and \fBpseudo\fR. This option might be specified more than once to specify multiple device classes. .RE .sp .ne 2 .na \fB\fB-i\fR \fIdriver_name\fR\fR .ad .RS 19n Configure only the devices for the named driver, \fIdriver_name\fR. .RE .sp .ne 2 .na \fB\fB-n\fR\fR .ad .RS 19n Do not attempt to load drivers or add new nodes to the kernel device tree. .RE .sp .ne 2 .na \fB\fB-s\fR\fR .ad .RS 19n Suppress any changes to \fB/dev\fR. This is useful with the \fB-v\fR option for debugging. .RE .sp .ne 2 .na \fB\fB-t\fR \fItable_file\fR\fR .ad .RS 19n Read an alternate \fBdevlink.tab\fR file. \fBdevfsadm\fR normally reads \fB/etc/devlink.tab\fR. .RE .sp .ne 2 .na \fB\fB-r\fR \fIroot_dir\fR\fR .ad .RS 19n Presume that the \fB/dev\fR directory trees are found under \fIroot_dir\fR, not directly under \fBroot\fR (\fB/\fR). No other use or assumptions are made about \fIroot_dir\fR. .RE .sp .ne 2 .na \fB\fB-v\fR\fR .ad .RS 19n Print changes to \fB/dev\fR in verbose mode. .RE .SH EXIT STATUS .sp .LP The following exit values are returned: .sp .ne 2 .na \fB\fB0\fR\fR .ad .RS 5n Successful completion. .RE .sp .ne 2 .na \fB\fB1\fR\fR .ad .RS 5n An error occurred. .RE .SH FILES .sp .ne 2 .na \fB\fB/devices\fR\fR .ad .sp .6 .RS 4n device nodes directory .RE .sp .ne 2 .na \fB\fB/dev\fR\fR .ad .sp .6 .RS 4n logical symbolic links to /devices .RE .sp .ne 2 .na \fB\fB/usr/lib/devfsadm/devfsadmd\fR\fR .ad .sp .6 .RS 4n devfsadm daemon .RE .sp .ne 2 .na \fB\fB/dev/.devfsadm_dev.lock\fR\fR .ad .sp .6 .RS 4n update lock file .RE .sp .ne 2 .na \fB\fB/dev/.devfsadm_daemon.lock\fR\fR .ad .sp .6 .RS 4n daemon lock file .RE .sp .ne 2 .na \fB\fB/etc/security/device_policy\fR\fR .ad .sp .6 .RS 4n device policy file .RE .sp .ne 2 .na \fB\fB/etc/security/extra_privs\fR\fR .ad .sp .6 .RS 4n additional device privileges .RE .SH SEE ALSO .sp .LP \fBsvcs\fR(1), \fBadd_drv\fR(1M), \fBmodinfo\fR(1M), \fBmodload\fR(1M), \fBmodunload\fR(1M), \fBrem_drv\fR(1M), \fBsvcadm\fR(1M), \fBtapes\fR(1M), \fBpath_to_inst\fR(4), \fBattributes\fR(5), \fBprivileges\fR(5), \fBsmf\fR(5), \fBdevfs\fR(7FS) .SH NOTES .sp .LP This document does not constitute an \fBAPI\fR. The \fB/devices\fR directory might not exist or might have different contents or interpretations in a future release. The existence of this notice does not imply that any other documentation that lacks this notice constitutes an \fBAPI\fR. .sp .LP \fBdevfsadm\fR no longer manages the \fB/devices\fR name space. See \fBdevfs\fR(7FS). .sp .LP The device configuration service is managed by the service management facility, \fBsmf\fR(5), under the service identifier, and can be used to start \fBdevfsadm\fR during reconfiguration boot by: .sp .in +2 .nf svc:/system/device/local:default .fi .in -2 .sp .sp .LP Otherwise, \fBdevfsadm\fR is started by: .sp .in +2 .nf svc:/system/sysevent:default .fi .in -2 .sp .sp .LP Administrative actions on this service, such as enabling, disabling, or requesting restart, can be performed using \fBsvcadm\fR(1M). The service's status can be queried using the \fBsvcs\fR(1) command.