【Linux】设备和磁盘分区|磁盘管理|/dev/sda|/dev/sdb

目录

查看命令

df 查看磁盘分区

显示块设备信息 lsblk

查看是否是固态硬盘SSD

/dev/hda, /dev/hdb, /dev/sda, /dev/sdb是什么?

磁盘

分区

HDD,SSD, SATA,PCIe之间的关系和区别

查看分区UUID的两种方法


查看命令

df 查看磁盘分区

使用fdisk命令查看分区的三种方法:

1、sudo fdisk -l

2、sudo fdisk  /dev/sda进入交互模式,然后输入p

3、查看单个硬盘,通过 fdisk -l  /dev/sad1

1)fdisk -l :查看磁盘的分区情况
2)lsblk:查看设备使用情况,即哪些磁盘的哪些分区正在被谁使用
3)blkid :查看设备管理方式(设备上的文件系统类型)及设备id
4)df:查看正在被系统挂载的设备
5)cat /proc/partitions :查看被系统识别的设备

# mount | column -t # 查看挂接的分区状态

# swapon -s # 查看所有交换分区

# hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备)

# dmesg | grep IDE # 查看启动时IDE设备检测状况


原文链接:https://blog.csdn.net/weixin_44310047/article/details/117354676

fdisk -l 可以显示出所有挂载和未挂载的分区,但不显示文件系统类型。

Disk /dev/sda: 299.4 GB, 299439751168 bytes
255 heads, 63 sectors/track, 36404 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000576df

Device Boot Start End Blocks Id System
/dev/sda1 * 1 2611 20971520 83 Linux
/dev/sda2 2611 3134 4194304 82 Linux swap / Solaris
/dev/sda3 3134 36404 267248282 83 Linux

fdisk -l 硬盘名|分区名  

root@centos:~# fdisk -l /dev/sda
Disk /dev/sda:1.84 TiB,2000398934016 字节,3907029168 个扇区
Disk model: ST2000NX0253
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 4096 字节
I/O 大小(最小/最佳):4096 字节 / 4096 字节
磁盘标签类型:gpt
磁盘标识符:27E8F38B-1909-4730-B931-D399FF19A594

设备         起点       末尾       扇区  大小 类型
/dev/sda1    2048       4095       2048    1M BIOS 启动
/dev/sda2    4096     976895     972800  475M Microsoft 基本数据
/dev/sda3  976896 3726032895 3725056000  1.8T Linux LVM

df -T 查看已经挂载的分区和文件系统类型 

(只可以查看已经挂载的分区和文件系统类型)

Filesystem Type 1K-blocks Used Available Use% Mounted on
/dev/sda1 ext4 20642428 3698868 15894984 19% /
tmpfs tmpfs 32947160 0 32947160 0% /dev/shm

parted -l 可以查看未挂载的文件系统类型,以及哪些分区尚未格式化。

Model: LSI MR9240-8i (scsi)
Disk /dev/sda: 299GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number Start End Size Type File system Flags
1 1049kB 21.5GB 21.5GB primary ext4 boot
2 21.5GB 25.8GB 4295MB primary linux-swap(v1)
3 25.8GB 299GB 274GB primary ext4


lsblk -f 也可以查看未挂载的文件系统类型。

NAME FSTYPE LABEL UUID MOUNTPOINT
sda
|-sda1 ext4 c4f338b7-13b4-48d2-9a09-8c12194a3e95 /
|-sda2 swap 21ead8d0-411f-4c23-bdca-642643aa234b [SWAP]
`-sda3 ext4 2872b14e-45va-461e-8667-43a6f04b7bc9

file -s /dev/sda3

/dev/sda3: Linux rev 1.0 ext4 filesystem data (needs journal recovery) (extents) (large files) (huge files)

摘自:linux下查看磁盘分区的文件系统格式 - https://www.cnblogs.com/youbiyoufang/p/7607174.html

显示块设备信息 lsblk

lsblk 会显示系统中除了内存虚拟磁盘外的所有可用块设备的信息:

root@centos:~# lsblk
NAME            MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda               8:0    0   1.8T  0 disk
├─sda1            8:1    0     1M  0 part
├─sda2            8:2    0   475M  0 part
└─sda3            8:3    0   1.8T  0 part
  ├─centos-root 253:0    0   1.7T  0 lvm
  └─centos-swap 253:1    0    32G  0 lvm
sdb               8:16   0 931.5G  0 disk
├─sdb1            8:17   0   512M  0 part /boot/efi
└─sdb2            8:18   0   931G  0 part /
sdc               8:32   0   1.8T  0 disk
└─sdc1            8:33   0   1.8T  0 part /home1
sdd               8:48   0 223.6G  0 disk
└─sdd1            8:49   0 223.6G  0 part

查看是否是固态硬盘SSD

方法1

使用lsblk命令进行判断,参数-d表示显示设备名称,参数-o表示仅显示特定的列。

lsblk -d -o name,rota

1  的表示HDD 0的是SSD

方法2
cat /sys/block/sda/queue/rotational
# 返回0:SSD盘
# 返回1:SATA盘

方法3
登录后复制 
lsscsi
# 返回 ATA的是SSD

/dev/hda, /dev/hdb, /dev/sda, /dev/sdb是什么?

磁盘

/dev/hda一般是指IDE接口的硬盘,/dev/hda指第一块硬盘,/dev/hdb指第二块硬盘,等等;

/dev/sda一般是指SATA接口的硬盘,/dev/sda指第一块硬盘,/dev/sdb指第二块硬盘,等等。

/dev/nvme一般是指peci接口的硬盘,/dev/nvmen0指第一块硬盘,/dev/nvmen1指第二块硬盘,等等。

……

参考:https://blog.csdn.net/weixin_42264234/article/details/118651256

在Linux操作系统中,任何物理存储设备接入系统后都是以文件的形式存在,且不同类别的设备接入系统后被识别的文件类型不同,这里我们用下表来详细说明:

分区

/dev/sda是指整个硬盘,实际使用中一般都会有分区,也就是/dev/sda1, /dev/sda2这样的。有一些分区已经挂载了,使用df命令,可以看到各个分区分区被挂载到哪个目录

Linux系统磁盘分区、设备挂载及磁盘配额详解_是大姚呀的博客-CSDN博客_linux 查看光驱

HDD,SSD, SATA,PCIe之间的关系和区别

SATA,PCIe是接口类型

HDD,SSD 是硬盘类型

nvme ssd和普通ssd区别:ssd是固态硬盘,普通的ssd配的是SATA口(AHCI协议),nvme ssd配的是PCIe口(nvme传输协议)

HDD 和 SSD 早期, SATA 接口(接口协议:AHCI )满足性能需求,瓶颈在硬盘端,闪存技术的飞速发展,性能瓶颈由下层(硬盘)转移至上层(接口和协议),SSD 急需要更高效的接口和协议,由此,NVMe(Non Volatile Memory Express)横空出世。

https://blog.csdn.net/bandaoyu/article/details/121072279

查看分区UUID的两种方法

(原文链接:https://blog.csdn.net/HMSIWTV/article/details/7525171)

1 sudo blkid

/dev/sda1:  LABEL="System"      UUID="5CA09A65A09A4604" TYPE="ntfs" 
/dev/sda2:  LABEL="S3A9119D005" UUID="0638C03038C02093" TYPE="ntfs" 
/dev/sda4:  LABEL="HDDRECOVERY" UUID="C8E8ED1BE8ED0890" TYPE="ntfs" 
/dev/sda5:  LABEL="Data"        UUID="26596E810AF6854A" TYPE="ntfs" 
/dev/sda6:  UUID="be208697-408c-42f4-8a2b-ed8606f151fc" TYPE="ext4" 
/dev/sda7:  UUID="f577f518-eff1-4524-97dd-32e32890b257" TYPE="ext4" 
/dev/sda8:  UUID="3de82994-8b18-493b-a798-c67aca3f8ff9" TYPE="ext4" 
/dev/sda9:  UUID="6e8711a0-01b8-4e3e-843d-a742ac1578d1" TYPE="ext4" 
/dev/sda10: UUID="9db497be-0bfb-4603-9dd3-e762e0f5911e" TYPE="ext4" 
/dev/sda11: UUID="96186a81-db59-481b-a2f7-930feed7e9a6" TYPE="ext4" 
/dev/sda12: UUID="5ba4c4ef-b9c3-4e3c-bb4f-55a5e9772d0b" TYPE="ext4" 
/dev/sda13: UUID="656ed509-abb3-4f0f-b84a-eba37d323490" TYPE="ext4" 
/dev/sda14: UUID="c3641c66-c381-4749-bb9d-075739fb11ef" TYPE="swap" 
/dev/sda15: UUID="778718dc-4e9d-41f2-bc39-e0add2042462" TYPE="ext4" 

2 ls -l /dev/disk/by-uuid

查看文件系统的方法

df -T  或者  mount  或者  cat  /etc/fstab

(如果手工修改了 /etc/fstab文件,一定要执行 sudo findmnt --verify 来检查一下。
因为 /etc/fstab 文件改错了导致系统重启起不来)

linux文件系统格式

(摘自:http://events.jianshu.io/p/5bc0b9b9018a )

EXT:Linux第一个文件系统,叫做扩展文件系统。

Ext2:ext2是为解决ext的缺陷而设计的,它又被称为二级扩展文件系统。

Ext3: Ext3是Ext2的下一代,也就是保有Ext2的格式之下再加上日志功能。

EXT4:是第四代扩展文件系统(Fourth extended filesystem,缩写为 ext4)是linux系统下的日志文件系统,是Ext3文件系统的后继版本。

xfs: 主要特性包括以下几点:

1、数据完全性

      由于文件系统开启了日志功能,意外宕机发生后,磁盘上的文件不会遭到破坏了。

2、传输特性

   XFS查询与分配存储空间非常快。xfs文件系统能连续提供快速的反应时间。

3、可扩展性

   可以支持上百万T字节的存储空间。XFS使用高的表结构(B+树),保证了文件系统可以快速搜索与快速空间分配。

4、传输带宽

  XFS 能以接近裸设备I/O的性能存储数据。

 Linux swap: 它是Linux中一种专门用于交换分区的swap文件系统。Linux是使用这一整个分区作为交换空间。一般这个swap格式的交换分区是主内存的2倍。在内存不够时,Linux会将部分数据写到交换分区上。 

VFAT: VFAT叫长文件名系统,这是一个与Windows系统兼容的Linux文件系统,支持长文件名,可以作为Windows与Linux交换文件的分区。

 

原文

==========================================================

s 开头是串行设备,h 开头是并行设备。d 是…… 

1. 请查资料了解这些术语:/dev/hda, /dev/hdb, /dev/sda, /dev/sdb, 他们之间有什么区别?

答:hda一般是指IDE接口的硬盘,hda指第一块硬盘,hdb指第二块硬盘,等等;sda一般是指SATA接口的硬盘,sda指第一块硬盘,sdb指第二块硬盘,等等。

2. 为什么 du -b /etc/passwd  和 du -k  /etc/passwd  所得到的结果不一致呢?按道理讲1024b 等于 1k 阿铭的 /etc/passwd 为 1181b 而 使用k为单位表示它竟然是 4k.

答:du -b显示的是文件的实际大小;du -k显示的是文件所占磁盘块的大小,du不带参数默认是显示块的大小。一个块大小为4KB,一个块只能存放一个文件,小于4KB的文件占用一个块的大小,大于4KB的文件占用多个块,大小为4KB的整数倍。/etc/passwd大小为1181b,小于4KB,所以使用du 或者du -k显示大小为4KB。

3. 请查资料,了解磁盘的这些概念: heads, sectors, cylinders.

答:硬盘划分为磁头(Heads)、柱面(Cylinder)、扇区(Sector)。

磁头(Heads):每张磁片的正反两面各有一个磁头,一个磁头对应一张磁片的一个面。因此,用第几磁头就可以表示数据在哪个磁面。

柱面(Cylinder):所有磁片中半径相同的同心磁道构成“柱面",意思是这一系列的磁道垂直叠在一起,就形成一个柱面的形状。简单地理解,柱面就是磁道。

扇区(Sector):将磁道划分为若干个小的区段,就是扇区。虽然很小,但实际是一个扇子的形状,故称为扇区。每个扇区的容量为512字节。

硬盘容量=磁头数×柱面数×扇区数×512字节。

4. 请计算磁盘分区的时候,每一个柱面空间是多大? 阿铭的第二块磁盘是8589 MB (8589934592 bytes),总共有1044个柱面。

答:柱面空间=磁盘容量/柱面数=8589934592/1044=8227906bytes

5. 查资料了解ide和scsi接口的磁盘有什么不一样,scsi 磁盘(sda, sdb)最多可以分多少个逻辑分区(这个了解即可)?

答: IDE(Intergrated Device Electronics,电子集成驱动器)一般是有扁平电缆连接的,一个扁平电缆可以连接2个IDE硬盘,而一个计算机一般提供2个扁平电缆,所以一般允许4块IDE硬盘。IDE经过多年的发展,成熟,廉价,稳定。一般老式的电脑中装的都是这种硬盘。目前主流的硬板已经是SATA硬盘了。IDE是平行传输的,而SATA是串行传输的。

SCSI(Small Computer System Interface:小型计算机系统接口)的出现主要是由于原有IDE接口的硬盘转速比较低,传输效率比较慢。由于SCSI硬盘独立于系统总线工作,所以它的最大优点就在于系统的占用率低,当然它还有一些优点,转速高,传输速率快,更稳定。但也有一些缺点,价格高,安装没有IDE方便。

一块SCSI硬盘最大分区只能分三个主分区加一个扩展分区, 而扩展分区最多可分15个逻辑分区, 这是硬件限制,不能突破。

6. 把磁盘格式化成ext4文件系统时,如果指定块大小并不是 1024 2048 4096 会发生什么?指定块大小最小是多少,最大又是多少?

答:当格式化文件系统时,如果指定块大小不是1024、2048、4096这几个标准值,会出现下面几种情况:

(1)当指定块小于1024时,则提示错误“无效的块大小”,不能格式化。

(2)当指定块大于1024且小于2048时,则实际以1024的块大小进行格式化。    

(3)当指定块大于2048且小于4096时,则实际以2048的块大小进行格式化。    

(4)当指定块大于4096且小于或等于65536时,则提示块值太大,是否继续,选择y继续,则以不大于指定块的4K的整数倍值(从4K到32K)进行格式化。    

(5)当指定块大于等于65536时,则提示块值太大,是否继续,选择y继续,则以65536字节进行格式化。    

(6)当指定块大于65536时,则提示错误“无效的块大小”,不能格式化。

7. 如何查看当前系统里各个分区都是什么类型的文件系统?

答:(1)mount

(2)df -T

8. /dev/zero 和 /dev/null 在linux系统中是什么文件,有什么作用?

答:(1)/dev/zero 是一个造零器,它可以源源不断的提供0,它可以用于向设备或文件写入字符串0,可以用它来创建一个指定长度用于初始化的空文件,比如临时交换文件等。

(2)/dev/null  它是空设备,也称为位桶(bit bucket),任何写入它的输出都会被抛弃。常用来禁止标准输出和标准错误的输出。如果不想让消息以标准输出显示或写入文件,那么可以将消息重定向到位桶。

9. Linux下df 和 du 两个命令主要用来做什么?

答:(1)df 查看磁盘分区和文件系统信息

(2)du  查看目录或文件所占用的磁盘空间大小

10. 在Linux系统下,用什么命令为一个新磁盘分区呢?又用什么命令格式化磁盘?

答:fdisk 为新磁盘分区;可以使用mkfs.ext2、mkfs.ext3、mkfs.ext4、mke2fs等命令格式化磁盘。mke2fs功能更多。

11. 如果不能使用mount 挂载磁盘时,我们需要使用什么命令获取相关错误信息?

答:dmesg

12. 当卸载某个磁盘或者分区时,报错: “umount: /newdir: device is busy.” 我们如何做?

答:报这个错,可能是因为当前用户在/newdir目录下,可以先退出这个目录然后卸载,也可以使用命令 umount -l /newdir强制卸载。

13. 如何获取某个分区的UUID?

答:使用blkid命令

14. 如何使用dd命令生成一个大小为500M的文件?

答:dd if=/dev/zero of=/bigfile bs=1024k count=500

15. 查看内存大小的命令是? 如何以M为单位显示?

答:free -m

16. 如何查看各文件系统的inode数使用情况?

答:df -i

17. 使用vmware虚拟机分配一块1G的虚拟磁盘,并使用fdisk 分区工具给新加的磁盘分3个主分区,分别200M,然后再分3个逻辑分区,分别100M.

答:fdisk /dev/sdb 回车后,先按n,按 p,输入1 ,再输入 1,再输入+200M ;按n,按 p,输入2 ,再回车,再输入 +200M;按n ,按p,输入 3,再回车,再输入+200M;按 n,按e, 接着按两次回车;按 n,接着回车,输入+100M;按 n,接着回车,输入+100M;按 n,接着回车,输入+100M;

18. 给磁盘分区的时候,最多可以分几个主分区,最多可以分几个扩展分区,扩展分区和逻辑分区的关系时什么?

答:最多4个主分区,最多一个扩展分区,只有划分了扩展分区后,才可以在扩展分区内划分逻辑分区,也就是说逻辑分区是在扩展分区内的。

19. 我使用fdisk -l /dev/sdb 查看磁盘分区状况的时候,发现有这么几个分区: sdb1, sdb3, sdb5, sdb6, sdb7, 那么请推算一下,这个磁盘,共有几个主分区和几个逻辑分区?

答:一个主分区,三个逻辑分区(sdb5,sdb6,sdb7)

20. 有什么方法可以查看某个分区格式化时指定的块大小为多少(1024,2048,4096)?

答:第一个方法是,touch 1; echo 1 > 1; du -sh 1  看看1的大小是几k,是1k块大小就是1024,2k块大小就是2048,4k块大小就是4096

第二个方法是,tune2fs -l /dev/sda1 |grep 'Block size'

原文:https://blog.51cto.com/rachy/1882223

  • 20
    点赞
  • 92
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值