Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> 關於 Linux

Linux 格式化分區報錯「Could not stat /dev/sdaX」的解決方案

編輯:關於 Linux

使用 mke2fs 或 mkfs 格式化新建分區時,常遇到 Could not stat /dev/sda7 — No such file or directory 錯誤,明明 fdisk -l 顯示分區存在,系統卻找不到裝置節點。這通常是因為核心尚未重新讀取分區表所致。

fdisk -l 輸出與格式化報錯對比

錯誤重現

[root@linuxidc ~]# mke2fs -t ext4 /dev/sda7
mke2fs 1.41.12 (17-May-2010)
Could not stat /dev/sda7 --- No such file or directory
The device apparently does not exist; did you specify it correctly?

解決方法:使用 partprobe 通知核心重讀分區表

  1. 檢查是否安裝 parted 套件(含 partprobe):
    rpm -q parted
  2. 若未安裝,透過 yum 安裝(需網路可用):
    yum install parted
  3. 執行 partprobe 讓核心即時更新分區資訊:
    partprobe
  4. 再次嘗試格式化,裝置節點應已出現:
    mke2fs -t ext4 /dev/sda7

原理說明

partprobe 會向核心發送訊號,請求重新掃描區塊裝置的分區表,進而在 /dev/ 下建立對應的分區裝置節點(如 /dev/sda7),無需重開機即可生效。此工具屬 parted 套件一部分,RHEL/CentOS 系統預設可能未安裝,需手動補裝。

替代方案

  • kpartx -a /dev/sda(需安裝 kpartx)
  • blockdev --rereadpt /dev/sda(較底層,適用於不想裝 parted 時)
  • 重開機(最簡單但需停機)

掌握 partprobe 技巧,即可在分區建立後立即進行格式化、掛載等操作,提升運維效率。

Copyright © Windows教程網 All Rights Reserved