【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 LVMdf -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
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
總結
以上是生活随笔為你收集整理的【Linux】设备和磁盘分区|磁盘管理|/dev/sda|/dev/sdb的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SolarWinds安装、配置、使用手册
- 下一篇: 不思议迷宫c语言基础,不思议迷宫新手谜题