Home Operation and Maintenance Linux Operation and Maintenance In addition to block devices, what other devices does Linux have?

In addition to block devices, what other devices does Linux have?

Apr 17, 2023 am 10:29 AM
linux equipment

In addition to block devices, Linux also has character devices and network devices. A character device is a device that can be accessed like a byte stream. When a read or write request is issued to a character device, the corresponding IO operation occurs immediately; while the network device is driven by the Linux network subsystem and is responsible for sending and receiving data packets. Rather than being oriented to stream devices, network devices do not have nodes in the Linux system file system.

In addition to block devices, what other devices does Linux have?

#The operating environment of this tutorial: linux7.3 system, Dell G3 computer.

In addition to block devices, Linux also has character devices and network devices.

Devices in the Linux system can be divided into three categories: character devices, block devices and network devices.

(1) Character device

A character device is a device that can be accessed like a byte stream. When a read or write request is issued to a character device, the corresponding IO operation occurs immediately. Many devices in the Linux system are character devices, such as character terminals, serial ports, keyboards, mice, etc. In embedded Linux development, the most common ones are character devices and drivers.

(2) Block device

Block device is a device that must be accessed in blocks when performing TO operations in the Linux system. Block devices can install file systems. The block device driver will use a piece of system memory as a buffer, so issuing read and write accesses to the block device does not necessarily result in hardware I/O operations immediately. Common block devices in Linux systems include hard disks, floppy drives, etc.

(3) Network equipment

Network equipment can be either a hardware device such as a network card or a pure software device such as a loopback device. Network devices are driven by the Linux network subsystem and are responsible for sending and receiving data packets, rather than stream devices. Therefore, network devices do not have nodes in the Linux system file system. Access to network devices is generated through socket calls, rather than ordinary file operations such as open/closc and read/write.

In addition to block devices, what other devices does Linux have?

Linux View block device information

In Linux, you can use the lsblk command to view block devices information.

The lsblk command in English is "list block", which is used to list information about all available block devices, and also displays the dependencies between them, but it does not list RAM disk information. Block devices include hard disks, flash drives, CD-ROMs, etc. The lsblk command is included in the util-linux-ng package, which is now renamed util-linux.

The lsblk command has several options:

Default Options

The lsblk command will list all block devices in a tree view by default. Open the terminal and enter the following command:

$ lsblk
Copy after login

The output is as follows:

lsblk default
lsblk default
Copy after login

The 7 column names are as follows:

NAME : 这是块设备名。
MAJ:MIN : 本栏显示主要和次要设备号。
RM : 本栏显示设备是否可移动设备。注意,在本例中设备sdb和sr0的RM值等于1,这说明他们是可移动设备。
SIZE : 本栏列出设备的容量大小信息。例如298.1G表明该设备大小为298.1GB,而1K表明该设备大小为1KB。
RO : 该项表明设备是否为只读。在本案例中,所有设备的RO值为0,表明他们不是只读的。
TYPE :本栏显示块设备是否是磁盘或磁盘上的一个分区。在本例中,sda和sdb是磁盘,而sr0是只读存储(rom)。(LCTT译注,此处sr0的RO项没有标记为1,可能存在一些错误?)
MOUNTPOINT : 本栏指出设备挂载的挂载点。
Copy after login

List all devices:

The default option will not list all empty devices. To view these empty devices, use the following command:

$ lsblk -a
Copy after login

This option will list all devices, including empty devices.

lsblk bytes sda

lsblk bytes sda

List device permissions and owners:

lsblk command can also be used Lists ownership of a specific device. Groups and modes can also be listed. You can obtain this information through the following command:

$ lsblk -m
lsblk permissions
lsblk permissions
Copy after login

List the specified device:

This command can also obtain only the information of the specified device. This is accomplished by specifying the device name after the options provided to the lsblk command. For example, you might be interested in knowing the size of your disk drive in bytes. You can do this by running the following command:

$ lsblk -b /dev/sda
Copy after login

Alternatively, the following command is equivalent:

$ lsblk --bytes /dev/sda
Copy after login

List unheaded devices in list form:

You can also combine several options to get specific output. For example, you might want to list devices in a list format instead of the default tree format. You may also be interested in removing headers for different column names. Two different options can be combined to get the desired output with the command:

$ lsblk -nl
Copy after login

Alternatively, you can use the long options below which also give the same output.

$ lsblk --noheadings --list
lsblk no header and list
lsblk no header and list
Copy after login

List SCSI devices:

To get a list of SCSI devices, you can only use the -S option. This option is a capital S and should not be confused with the -s option, which prints dependencies in reverse order.

$ lsblk -S
Copy after login

lsblk lists SCSI devices, and -s is the reverse order option (LCTT annotation: reverse the organizational relationship of devices and partitions to display), which will give the following output. Enter the command:

$ lsblk -s
Copy after login

or

$ lsblk --inverse
Copy after login

You can use lsblk to get more information about your block device, try displaying it yourself

Related recommendations :《Linux video tutorial

The above is the detailed content of In addition to block devices, what other devices does Linux have?. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Hot Topics

Java Tutorial
1662
14
PHP Tutorial
1261
29
C# Tutorial
1234
24
Linux Architecture: Unveiling the 5 Basic Components Linux Architecture: Unveiling the 5 Basic Components Apr 20, 2025 am 12:04 AM

The five basic components of the Linux system are: 1. Kernel, 2. System library, 3. System utilities, 4. Graphical user interface, 5. Applications. The kernel manages hardware resources, the system library provides precompiled functions, system utilities are used for system management, the GUI provides visual interaction, and applications use these components to implement functions.

vscode terminal usage tutorial vscode terminal usage tutorial Apr 15, 2025 pm 10:09 PM

vscode built-in terminal is a development tool that allows running commands and scripts within the editor to simplify the development process. How to use vscode terminal: Open the terminal with the shortcut key (Ctrl/Cmd). Enter a command or run the script. Use hotkeys (such as Ctrl L to clear the terminal). Change the working directory (such as the cd command). Advanced features include debug mode, automatic code snippet completion, and interactive command history.

How to check the warehouse address of git How to check the warehouse address of git Apr 17, 2025 pm 01:54 PM

To view the Git repository address, perform the following steps: 1. Open the command line and navigate to the repository directory; 2. Run the "git remote -v" command; 3. View the repository name in the output and its corresponding address.

vscode Previous Next Shortcut Key vscode Previous Next Shortcut Key Apr 15, 2025 pm 10:51 PM

VS Code One-step/Next step shortcut key usage: One-step (backward): Windows/Linux: Ctrl ←; macOS: Cmd ←Next step (forward): Windows/Linux: Ctrl →; macOS: Cmd →

What is the main purpose of Linux? What is the main purpose of Linux? Apr 16, 2025 am 12:19 AM

The main uses of Linux include: 1. Server operating system, 2. Embedded system, 3. Desktop operating system, 4. Development and testing environment. Linux excels in these areas, providing stability, security and efficient development tools.

How to run java code in notepad How to run java code in notepad Apr 16, 2025 pm 07:39 PM

Although Notepad cannot run Java code directly, it can be achieved by using other tools: using the command line compiler (javac) to generate a bytecode file (filename.class). Use the Java interpreter (java) to interpret bytecode, execute the code, and output the result.

How to run sublime after writing the code How to run sublime after writing the code Apr 16, 2025 am 08:51 AM

There are six ways to run code in Sublime: through hotkeys, menus, build systems, command lines, set default build systems, and custom build commands, and run individual files/projects by right-clicking on projects/files. The build system availability depends on the installation of Sublime Text.

laravel installation code laravel installation code Apr 18, 2025 pm 12:30 PM

To install Laravel, follow these steps in sequence: Install Composer (for macOS/Linux and Windows) Install Laravel Installer Create a new project Start Service Access Application (URL: http://127.0.0.1:8000) Set up the database connection (if required)

See all articles