openEuler查找SSD固态硬盘并挂载
验证SSD
方法一:使用 lsblk 命令
使用 lsblk 命令接列出所有區塊裝置及其是否為旋轉設備:
lsblk -d -o name,rota
- ROTA 欄位為 0:SSD
- ROTA 欄位為 1:HDD
- e.g:
[root@en_58 ~]# lsblk -d -o name,rota
NAME
ROTA
sda 1
sdb 0
方法二:查看系統隊列參數
inux 核心會記錄硬碟是否可旋轉。如果返回
0 表示不可旋轉(SSD),返回 1 表示可旋轉(HDD 傳統機械硬碟)。在終端機執行以下命令cat /sys/block/sda/queue/rotational
請謹慎使用程式碼。
- ROTA 欄位為 0:SSD
- ROTA 欄位為 1:HDD
在 openEuler 中,/dev/mapper/openeuler-data 是一個 LVM(邏輯捲軸管理) 分區。要確認它是否掛載在 SSD 上,需要先找到它對應的底層物理磁碟,再檢查該磁碟的旋轉屬:
以下是最直接的兩種方法:
方法一:使用
lsblk 樹狀列出(最直觀)執行以下命令,它可以直接顯示掛載點
/data 及其上層的所有設備關聯:bash
lsblk -o NAME,ROTA,MOUNTPOINT | grep -A 5 "openeuler-data"
請謹慎使用程式碼。
- 如何判斷:在輸出中找到
openeuler-data,查看它上層所屬的磁碟(如sda或nvme0n1)對應的 ROTA 欄位。- ROTA = 0:底層是 SSD。
- ROTA = 1:底層是 HDD。
方法二:追蹤 LVM 物理捲軸 (PV)
由於 LVM 可能跨越多個磁碟,你可以透過以下步驟精確查找:
- 找出該分區使用的物理磁碟:
bash
sudo lvs -o +devices /dev/mapper/openeuler-data請謹慎使用程式碼。在
Devices欄位會顯示對應的物理設備名稱(例如/dev/sda2或/dev/nvme0n1p1)。 - 檢查該磁碟是否為 SSD(以
/dev/sda為例):bashcat /sys/block/sda/queue/rotational請謹慎使用程式碼。- 返回 0:是 SSD。
- 返回 1:是 HDD。
- 雲端伺服器/虛擬機:如果顯示為
vda或vdb且ROTA為 0,通常表示虛擬化層提供的是由 SSD 構成的儲存池。 - NVMe 設備:如果底層設備名為
nvmeXnX,則百分之百是 SSD
要在 openEuler 中將 SSD 上的 LVM 分區掛載到 /cdata,請按照以下步驟操作。這包含手動掛載(立即生效)與設定開機自動掛載(永久生效)。
1. 建立掛載點
首先,為該分區建立一個目錄:
bash
sudo mkdir -p /cdata
請謹慎使用程式碼。
2. 測試手動掛載
先手動掛載以確認分區狀態正常:
bash
sudo mount /dev/mapper/ssd-cdata /cdata
請謹慎使用程式碼。
執行後,你可以用
df -h /cdata 確認是否掛載成功。3. 設定開機自動掛載(持久化)
為了確保下次開機時系統會自動掛載,我們需要修改
/etc/fstab 檔案。建議使用 UUID,這比設備名稱更安全穩定。- 備份設定檔(安全起見):
bash
sudo cp /etc/fstab /etc/fstab.bak請謹慎使用程式碼。 - 編輯
/etc/fstab:bashsudo vi /etc/fstab請謹慎使用程式碼。 - 在檔案末尾添加以下一行內容:
text
UUID=62fe8d19-ecee-497d-9d41-a80ad2c8bd20 /cdata ext4defaults,noatime0 0請謹慎使用程式碼。
4. 驗證設定是否正確
這一步非常重要,可以避免因設定錯誤導致系統無法啟動。
- 先解除手動掛載:
bash
sudo umount /cdata請謹慎使用程式碼。 - 模擬自動掛載:
bash
sudo mount -a請謹慎使用程式碼。如果這條命令沒有報錯,且執行
df -h /cdata能看到分區,說明配置完全正確!
小提示:
由於這是 SSD,你可以考慮在
/etc/fstab 的參數中加入 noatime(減少寫入次數)來延長硬碟壽命:UUID=62... /cdata ext4 defaults,noatime 0 0
yxbinghe
在 N3160 這種軟路由上,最好的做法是將這 59GB 分成一個新的分區(例如 sda3),掛載為 Docker 數據目錄 或 下載盤。
第一步:安裝必要工具
ImmortalWrt 默認可能沒有擴展工具,先安裝:
bash
opkg update
opkg install parted fdisk resize2fs
請謹慎使用程式碼。
第二步:建立新分區 (sda3)
我們手動把剩下的空間切出來:
輸入 fdisk /dev/sda 進入交互模式。
輸入 n (新建分區)。
輸入 3 (分區號,默認即為 3)。
連續按 兩次 Enter (使用剩餘所有空間)。
輸入 w (寫入並退出)。
如果提示 Device or resource busy,請重啟路由器再繼續下一步。
第三步:格式化並掛載
將新分區格式化為 Linux 最穩定的 ext4 格式:
bash
# 1. 格式化 sda3
mkfs.ext4 /dev/sda3
# 2. 建立掛載點並掛載
mkdir -p /mnt/data
mount /dev/sda3 /mnt/data
請謹慎使用程式碼。
第四步:設置開機自動掛載
為了讓這 59GB 每次開機都在,去 Web 界面操作最簡單:
路徑:系統 -> 掛載點 (Mount Points)。
操作:點擊「生成配置」,找到 /dev/sda3,勾選「啟用」,掛載點設為 /mnt/data 或 /opt (如果你要跑 Docker),點擊保存並應用。
3. 特別建議:給 Docker 使用
既然你之前在研究 Docker,這 59GB 最好的去處是作為 Docker 的存儲路徑。
在 Web 界面「服務」->「Docker」裡。
將 Docker 根目錄 修改為 /mnt/data/docker。
這樣你下載的任何 Docker 鏡像都會存在這 59GB 空間裡,而不會擠爆只有 300MB 的系統分區。
注意:執行 fdisk 時看到的 GPT PMBR size mismatch 報錯,在你執行 w (寫入) 時會自動被修復,不用擔心。