/sys
là cũ . Nó được giới thiệu trước khi nhân Linux đạt 2.6 (trở lại khi có sự phân tách 2.4 / 2.5). Kể từ khi phiên bản Ubuntu đầu tiên sử dụng kernel 2.6 , mọi phiên bản Ubuntu đều có /sys
.
/dev
chứa các tập tin thiết bị thực tế. Nó không cung cấp quyền truy cập vào tất cả các thiết bị hạt nhân biết về (chẳng hạn như các thiết bị Ethernet, cho một - ? Tại sao các giao diện mạng không trong / dev như các thiết bị khác , Tại sao các thiết bị Ethernet không hiển thị trong "/ dev"? ). Nó là một giao diện cho chính thiết bị - bạn viết cho thiết bị, đọc từ thiết bị, v.v.
/sys
là một giao diện cho kernel. Cụ thể, nó cung cấp một khung nhìn giống như hệ thống tập tin về các cài đặt thông tin và cấu hình mà kernel cung cấp, rất giống /proc
. Ghi vào các tệp này có thể hoặc không thể ghi vào thiết bị thực tế, tùy thuộc vào cài đặt bạn đang thay đổi. Nó không chỉ để quản lý thiết bị, mặc dù đó là trường hợp sử dụng phổ biến.
Thông tin thêm có thể được tìm thấy trong tài liệu kernel :
Top Level Directory Layout
~~~~~~~~~~~~~~~~~~~~~~~~~~
The sysfs directory arrangement exposes the relationship of kernel
data structures.
The top level sysfs directory looks like:
block/
bus/
class/
dev/
devices/
firmware/
net/
fs/
devices/ contains a filesystem representation of the device tree. It maps
directly to the internal kernel device tree, which is a hierarchy of
struct device.
bus/ contains flat directory layout of the various bus types in the
kernel. Each bus's directory contains two subdirectories:
devices/
drivers/
devices/ contains symlinks for each device discovered in the system
that point to the device's directory under root/.
drivers/ contains a directory for each device driver that is loaded
for devices on that particular bus (this assumes that drivers do not
span multiple bus types).
fs/ contains a directory for some filesystems. Currently each
filesystem wanting to export attributes must create its own hierarchy
below fs/ (see ./fuse.txt for an example).
dev/ contains two directories char/ and block/. Inside these two
directories there are symlinks named <major>:<minor>. These symlinks
point to the sysfs directory for the given device. /sys/dev provides a
quick way to lookup the sysfs interface for a device from the result of
a stat(2) operation.
Ví dụ:
Một cách để thiết lập độ sáng của màn hình máy tính xách tay là:
echo N > /sys/class/backlight/acpi_video0/brightness
Để lấy địa chỉ MAC của card mạng:
cat /sys/class/net/enp1s0/address
Để có được các bộ điều chỉnh tỷ lệ CPU hiện tại:
cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
Và như thế...
/sys
đã được khoảng hơn một thập kỷ nay .