linux 设备有哪些类型

发布时间 - 2023-02-14 00:00:00    点击率:
linux设备有3种类型:1、字符设备,是能够像字节流一样被访问的设备,当对字符设备发出读写请求,相应的IO操作立即发生,常见有字符终端、串口、键盘、鼠标等。2、块设备,是进行TO操作时必须以块为单位进行访问的设备,常见有硬盘、软驱等。3、网络设备,由网络子系统驱动,负责数据包的发送和接收。

本教程操作环境:linux7.3系统、Dell G3电脑。

Linux设备或基于Linux的设备,是采用Linux内核并可能部分GNU操作系统计算机设备。

Linux系统中设备有哪些类型

Linux系统中的设备可以分为字符设备、块设备和网络设备这三类。

1、字符设备

字符设备是能够像字节流一样被访问的设备,当对字符设备发出读写请求,相应的IO操作立即发生。Linux系统中很多设备都是字符设备,如字符终端、串口、键盘、鼠标等。在嵌入式Linux开发中,接触最多的就是字符设备以及驱动。

2、块设备

块设备是Linux系统中进行TO操作时必须以块为单位进行访问的设备,块设备能够安装文件系统。块设备驱动会利用一块系统内存作为缓冲区,因此对块设备发出读写访问,并不一定立即产生硬件I/O操作。Linux系统中常见的块设备有如硬盘、软驱等等。

3、网络设备

网络设备既可以是网卡这样的硬件设备,也可以是一个纯软件设备如回环设备。网络设备由Linux的网络子系统驱动,负责数据包的发送和接收,而不是面向流设备,因此在Linux系统文件系统中网络设备没有节点。对网络设备的访问是通过socket调用产生,而不是普通的文件操作如open/closc和read/write等。

linux查看块设备信息

在linux中,可以使用lsblk命令来查看块设备信息。

lsblk命令的英文是“list block”,即用于列出所有可用块设备的信息,而且还能显示他们之间的依赖关系,但是它不会列出RAM盘的信息。块设备有硬盘,闪存盘,CD-ROM等等。lsblk命令包含在util-linux-ng包中,现在该包改名为util-linux。

lsblk命令有几个选项:

默认选项

lsblk命令默认情况下将以树状列出所有块设备。打开终端,并输入以下命令:

$ lsblk

输出如下:

lsblk default
lsblk default

7个栏目名称如下:

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 : 本栏指出设备挂载的挂载点。

列出所有设备:

默认选项不会列出所有空设备。要查看这些空设备,请使用以下命令:

$ lsblk -a

该选项将列出所有设备,包括空设备在内。

lsblk bytes sda

lsblk bytes sda

列出设备权限和属主:

lsblk命令也可以用于列出一个特定设备的拥有关系,同时也可以列出组和模式。可以通过以下命令来获取这些信息:

$ lsblk -m
lsblk permissions
lsblk permissions

列出指定设备:

该命令也可以只获取指定设备的信息。这可以通过在提供给lsblk命令的选项后指定设备名来实现。例如,你可能对了解以字节显示你的磁盘驱动器大小比较感兴趣,那么你可以通过运行以下命令来实现:

$ lsblk -b /dev/sda

或者,以下命令等同:

$ lsblk --bytes /dev/sda

以列表形式列出不带头的设备:

你也可以组合几个选项来获取指定的输出。例如,你也许想要以列表格式列出设备,而不是默认的树状格式。你可能也对移除不同栏目名称的标题感兴趣。可以将两个不同的选项组合,以获得期望的输出,命令如下:

$ lsblk -nl

或者,你可以使用下面的长选项,它们也能给出相同的输出。

$ lsblk --noheadings --list
lsblk no header and list
lsblk no header and list

列出SCSI设备:

要获取SCSI设备的列表,你只能使用-S选项。该选项是大写字母S,不能和-s选项混淆,该选项是用来以颠倒的顺序打印依赖的。

$ lsblk -S

lsblk列出SCSI设备,而-s是逆序选项(LCTT译注:将设备和分区的组织关系逆转过来显示),其将给出如下输出。输入命令:

$ lsblk -S

或者

$ lsblk --inverse

你可以使用lsblk来获取关于你的块设备的更多信息,自己把它试着显示出来吧

相关推荐:《Linux视频教程》


# linux  # gnu  # 你可以  # 鼠标  # 而不是  # 感兴趣  # 树状  # 闪存盘  # 串口  # 来实现  # 文件系统  # 数据包 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 作用域操作符会触发自动加载吗_php类自动加载机制与::调用【教程】  浅述节点的创建及常见功能的实现  如何确保西部建站助手FTP传输的安全性?  *服务器网站为何频现安全漏洞?  如何在宝塔面板中修改默认建站目录?  宙斯浏览器怎么屏蔽图片浏览 节省手机流量使用设置方法  PHP正则匹配日期和时间(时间戳转换)的实例代码  在线制作视频的网站有哪些,电脑如何制作视频短片?  软银砸40亿美元收购DigitalBridge 强化AI资料中心布局  Laravel中的withCount方法怎么高效统计关联模型数量  Laravel队列由Redis驱动怎么配置_Laravel Redis队列使用教程  大连网站制作公司哪家好一点,大连买房网站哪个好?  Laravel队列任务超时怎么办_Laravel Queue Timeout设置详解  Laravel如何使用Service Provider服务提供者_Laravel依赖注入与容器绑定【深度】  免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?  如何撰写建站申请书?关键要点有哪些?  Android okhttputils现在进度显示实例代码  简历在线制作网站免费版,如何创建个人简历?  Laravel如何配置Horizon来管理队列?(安装和使用)  Laravel观察者模式如何使用_Laravel Model Observer配置  Laravel的.env文件有什么用_Laravel环境变量配置与管理详解  javascript日期怎么处理_如何格式化输出  手机网站制作与建设方案,手机网站如何建设?  如何在腾讯云服务器快速搭建个人网站?  无锡营销型网站制作公司,无锡网选车牌流程?  Win11怎么关闭专注助手 Win11关闭免打扰模式设置【操作】  如何在Windows 2008云服务器安全搭建网站?  Edge浏览器提示“由你的组织管理”怎么解决_去除浏览器托管提示【修复】  JS弹性运动实现方法分析  Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  如何在IIS中新建站点并配置端口与物理路径?  Bootstrap整体框架之CSS12栅格系统  Laravel如何操作JSON类型的数据库字段?(Eloquent示例)  如何获取免费开源的自助建站系统源码?  如何在Windows环境下新建FTP站点并设置权限?  移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?  零服务器AI建站解决方案:快速部署与云端平台低成本实践  佛山网站制作系统,佛山企业变更地址网上办理步骤?  javascript基本数据类型及类型检测常用方法小结  百度浏览器如何管理插件 百度浏览器插件管理方法  教学论文网站制作软件有哪些,写论文用什么软件 ?  Laravel如何创建自定义中间件?(Middleware代码示例)  Laravel Eloquent关联是什么_Laravel模型一对一与一对多关系精讲  如何在宝塔面板创建新站点?  美食网站链接制作教程视频,哪个教做美食的网站比较专业点?  QQ浏览器网页版登录入口 个人中心在线进入  Laravel如何发送邮件和通知_Laravel邮件与通知系统发送步骤  Python自动化办公教程_ExcelWordPDF批量处理案例  成都品牌网站制作公司,成都营业执照年报网上怎么办理?