---
name: "devfs"
section: "4"
platform: "freebsd"
package: "base"
version: "16.0-CURRENT-20261027-61c70dc16a79"
release: "FreeBSD 16.0-CURRENT (2026-10-27)"
platforms: ["freebsd"]
url: "https://new.carta.tech/devfs/4"
---

# devfs(4)

device file system

## NAME

**devfs** – device file system

## SYNOPSIS

```
devfs	/dev	devfs rw 0 0
```

## DESCRIPTION

The device file system, or **devfs**, provides access to kernel's device namespace in the global file system namespace. The conventional mount point is */dev*.

The file system includes several directories, links, symbolic links and devices, some of which can also be written. In a chroot'ed environment, [devfs(8)](/devfs/8.md) can be used to create a new */dev* mount point.

The [mknod(8)](/mknod/8.md) tool can be used to recover deleted device entries under **devfs**.

The [fdescfs(4)](/fdescfs/4.md) filesystem is an alternate means for populating */dev/fd*. The character devices that both **devfs** and [fdescfs(4)](/fdescfs/4.md) present in */dev/fd* correspond to the open file descriptors of the process accessing the directory. **devfs** only creates files for the standard file descriptors *0*, *1* and *2*. [fdescfs(4)](/fdescfs/4.md) creates files for all open descriptors.

The options are as follows:

- **-o** *options*

  Use the specified mount *options*, as described in [mount(8)](/mount/8.md). The following devfs file system-specific options are available:

  - **ruleset**=*ruleset*

    Set ruleset number *ruleset* as the current ruleset for the mount-point and apply all its rules. If the ruleset number *ruleset* does not exist, an empty ruleset with the number *ruleset* is created. See [devfs(8)](/devfs/8.md) for more information on working with devfs rulesets.

## FILES

- */dev*

  The normal **devfs** mount point.

## EXAMPLES

To mount a **devfs** volume located on */mychroot/dev*:

```
mount -t devfs devfs /mychroot/dev
```

## SEE ALSO

[fdescfs(4)](/fdescfs/4.md), [devfs(8)](/devfs/8.md), [mount(8)](/mount/8.md), [make\_dev(9)](/make_dev/9.md)

## HISTORY

The **devfs** file system first appeared in FreeBSD 2.0. It became the preferred method for accessing devices in FreeBSD 5.0 and the only method in FreeBSD 6.0. The **devfs** manual page first appeared in FreeBSD 2.2.

## AUTHORS

The **devfs** manual page was written by Mike Pritchard ⟨*mpp@FreeBSD.org*⟩.
