如何對VMware虛擬機磁碟擴容?

来源:https://www.cnblogs.com/darkpool/archive/2023/06/05/17457396.html
-Advertisement-
Play Games

## 前置知識 動態捲管理(LVM,Logical Volume Manger)實現將多個硬碟和硬碟分區做成一個邏輯捲,並將邏輯捲統一管理。創建LVM順序為:物理捲PV->捲組VG->邏輯捲LV。 物理捲(PV,Physical Volume):物理硬碟或分區; 捲組(VG,Volume Group ...


前置知識

動態捲管理(LVM,Logical Volume Manger)實現將多個硬碟和硬碟分區做成一個邏輯捲,並將邏輯捲統一管理。創建LVM順序為:物理捲PV->捲組VG->邏輯捲LV。
物理捲(PV,Physical Volume):物理硬碟或分區;
捲組(VG,Volume Group):一個或多個物理捲集合;
邏輯捲(Logical Volume):供系統使用的元設備,虛擬分區。

LVM常用的命令:

功能 PV物理捲管理 VG捲組管理 LV邏輯捲管理
掃描 pvscan vgscan lvscan
創建 pvcreate vgcreate lvcreate
查看 pvdisplay vgdisplay lvdisplay
刪除 pvremove vgremove lvremove
擴展 / vgextend lvextend
縮容 / vgreduce lvreduce

前提

首先查看現有磁碟容量使用狀況(我是在安裝軟體時提示:設備空間不足)。

df -hl
lsblk

image

對於已經創建的虛擬機,想要擴展磁碟容量(不添加新的磁碟)要求該虛擬機沒有快照,所以首先要把快照都刪除。刪除後選擇擴容後的磁碟容量大小。

image

磁碟分區

fdisk -l          #磁碟
fdisk /dev/sda    #磁碟分區

image

磁碟分區常見命令(這四個就夠用了):

m                #幫助手冊
n                #創建新分區
p                #分區類別
w                #保存分區

image

分區退出後重新查看磁碟情況然後重啟。

fdisk -l

image

重啟後磁碟格式化。

mkfs.ext4 /dev/sda3

image

創建LVM

vgcreate vg01 /dev/sda3   #這裡創建vg會自動創建pv
lvcreate -L 30G vg01      #創建LV

image
image

mkfs.ext4 /dev/vg01/lvol0   #格式化LV

image

掛載

mkdir -p /data
mount -t ext4 /dev/vg01/lvol0 /data

image

這樣掛載重啟虛擬機之後掛載信息又不見了,所以需要保存掛載信息使得下次啟動後能夠自動掛載。最後加一行然後保存重啟。

vim /etc/fstab

image

還留存一個問題就是掛載點只允許root用戶讀寫文件,普通用戶沒有許可權,目前解決的方法是使用暴力加許可權方法。

sudo chmod -R 777 /data

可能遇到的問題

1. 提示掛載需要root許可權用戶

切換root用戶。

su

然後遇到第二個問題。su命令切換用戶輸入密碼後,提示:鑒定故障。因為在安裝linux系統時未設置root用戶密碼造成的,需要重新設置密碼後再切換用戶。

sudo passwd root

2. 修改/etc/fstab後無法正常開機

先說原因,原因是修改的內容格式不正確。這裡我補充一點有關/etc/fstab文件的內容,引自相關鏈接

當系統啟動的時候,系統會自動地從這個文件讀取信息,並且會自動將此文件中指定的文件系統掛載到指定的目錄。
在這個文件下,要關註的是六個域,分別為:[file system]、[mount point]、[type] 、[options]、[dump]、[pass]。

  1. [file sysytem]:用來指定你要掛載的文件系統的設備名稱或塊信息,也可以是遠程的文件系統。做過嵌入式linux開發的朋友都可能知道 mount 192.168.1.56:/home/nfs /mnt/nfs/ -o nolock (可以是其他IP)命令所代表的意義。它的任務是把IP為192.168.1.56的遠程主機上的/home/nfs/目錄掛載到本機的/mnt/nfs /目錄之下。如果要把它寫進/etc/fstab文件中,file system這部分應填寫為:/192.168.1.56:/home/nfs/。
    如果想把本機上的某個設備(device)掛載上來,寫法如:/dev/sda1、/dev/hda2或/dev/cdrom,其中,/dev/sda1 表示第一個串口硬碟的第一個分區,也可以是第一個SCSI硬碟的第一個分區,/dev/hda1表示第一個IDE硬碟的第一個分區,/dev/cdrom 表示光碟機。
    此外,還可以label(捲標)或UUID(Universally Unique Identifier全局唯一標識符)來表示。用label表示之前,先要e2label創建捲標,如:e2label /dir_1 /dir_2,其意思是說用/dir_2來表示/dir_1的名稱。然後,再在/etc/fstab下添加:LABEL=/dir_2 /dir_2 。重啟後,系統就會將/dir_1掛載到/dir_2目錄上。對於UUID,可以用vol_id -u /dev/sdax來獲取。比如我想掛載第一塊硬碟的第一個分區,先用命令vol_id -u /dev/sda11 來取得UUID,比如是:5dc08a62-3472-471b-9ef5-0a91e5e2c126,然後在這個域上填寫: UUID=5dc08a62-3472-471b-9ef5-0a91e5e2c126,即可表示/dev/sda11。Red Hat linux 一般會使用label,而Ubuntu linux 一般會用UUID。

  2. [mount point]:掛載點,也就是自己找一個或創建一個dir(目錄),然後把文件系統[file sysytem]掛到這個目錄上,然後就可以從這個目錄中訪問要掛載文件系統。對於swap分區,這個域應該填寫:none,表示沒有掛載點。

  3. [type]:這裡用來指定文件系統的類型。下麵的文件系統都是目前Linux所能支持的:adfs、befs、cifs、ext3、 ext2、ext、iso9660、kafs、minix、msdos、vfat、umsdos、proc、reiserfs、swap、 squashfs、nfs、hpfs、ncpfs、ntfs、affs、ufs。

  4. [options]:這裡用來填寫設置選項,各個選項用逗號隔開。由於選項非常多,而這裡篇幅有限,所以不再作詳細介紹,如需瞭解,請用 命令 man mount 來查看。但在這裡有個非常重要的關鍵字需要瞭解一下:defaults,它代表包含了選項rw,suid,dev,exec,auto,nouser和 async。

  5. [dump]:此處為1的話,表示要將整個[file sysytem]里的內容備份;為0的話,表示不備份。現在很少用到dump這個工具,在這裡一般選0。

  6. [pass]:這裡用來指定如何使用fsck來檢查硬碟。如果這裡填0,則不檢查;掛載點為 / 的(即根分區),必須在這裡填寫1,其他的都不能填寫1。如果有分區填寫大於1的話,則在檢查完根分區後,接著按填寫的數字從小到大依次檢查下去。同數字 的同時檢查。比如第一和第二個分區填寫2,第三和第四個分區填寫3,則系統在檢查完根分區後,接著同時檢查第一和第二個分區,然後再同時檢查第三和第四個分區。

另外如果不確定是否修改正確,但是又不想靠重啟來驗證,可以嘗試掛載看看是否報錯。

mount -a

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • # 1.列表切片 前面學習的是如何處理列表的所有數據元素。python還可以處理列表的部分元素,python稱之為切片。 ## 1.1創建切片 創建切片,可指定要使用的第一個數據元素的索引和最後一個數據元素的索引。與range函數一樣,python在到達指定的第二個索引前面的數據元素後停止。比如要輸 ...
  • 本文作者從評判標準、功能評測、性能評測等多方面剖析三方庫哪些家強,並給出了比較務實的建議。 引言 為了小伙伴理解,彙總了一下文章中會提及的術語名詞解釋,請放心品讀,歡迎一起討論交流! 你真的瞭解 Go 標準庫嗎? 問題一:標準庫可以反序列化普通的字元串嗎?執行下麵的代碼會報錯嗎? var s str ...
  • 經過前幾篇文章的講解,初步瞭解ASP.NET Core MVC項目創建,啟動運行,以及命名約定,創建控制器,視圖,模型,接收參數,傳遞數據ViewData,ViewBag,路由,頁面佈局,wwwroot和客戶端庫,Razor語法,EnityFrameworkCore與資料庫,HttpContext,... ...
  • 摘要:基於.NET Core 7.0WebApi後端架構實戰【2-介入IOC控制反轉】 2023/04/09, ASP.NET Core 7.0, VS2022 引言 Inversion of Control,簡稱IOC,即控制反轉。記得當初剛實習的時候公司的帶我的人和我提到過IOC這個概念,當初完 ...
  • # 圖片介面JWT鑒權實現 # 前言 之前做了個返回圖片鏈接的介面,然後沒做授權,然後今天鍵盤到了,也是用JWT來做介面的許可權控制。 然後JTW網上已經有很多文章來說怎麼用了,這裡就不做多的解釋了,如果不懂的可以參考下列鏈接的 文章。 圖片介面文章:[還在愁個人博客沒有圖片放?](https://w ...
  • 網上很多方法都試過,什麼“修複”,關掉進程,重啟都試過了,但是想保留數據所以不想重置 **最後發現打不開的原因:C盤空間滿了** 但是我在安裝的時候明明設置在別的盤 ![image](https://img2023.cnblogs.com/blog/2580807/202306/2580807-20 ...
  • 大家好,我是god23bin。歡迎來到《一分鐘學一個 Linux 命令》系列,今天需要你花兩分鐘時間來學習下,因為今天要講的是兩個命令,mkdir 和 touch 命令。前一個命令是操作目錄的,後一個命令是操作文件的。 ...
  • 摘要:本文介紹基於STM32微控制器、BC26 NBIOT模組和華為雲IOT平臺,實現了一款智能井蓋系統。 本文分享自華為雲社區《基於STM32+NBIOT+華為雲IOT設計的智能井蓋》,作者:DS小龍哥 。 一、概述 智能井蓋是一種通過物聯網技術實現對井蓋狀態監測和管理的設備。當前介紹基於STM3 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...