我有一台 CentOS 6 伺服器(在 XenServer 上作為虛擬機器運行),該伺服器是由前一名員工設定的,其中一個磁碟上沒有任何分割區。我透過 XenServer 介面增加了磁碟的大小,運行 lsblk 確實顯示了新的大小。但是,我似乎無法將磁碟(使用 fdisk)擴展到新的大小。
$ df -h
Filesystem Size Used Avail Use%
/dev/xvda3 1.6G 479M 1.1G 32%
tmpfs 245M 4.0K 245M 1%
/dev/xvda1 113M 59M 48M 56%
/dev/xvda7 485M 2.7M 457M 1%
/dev/xvda2 2.4G 829M 1.5G 36%
/dev/xvda5 2.4G 1.2G 1.1G 53%
**/dev/xvdb 99G 92G 1.8G 99%**
/dev/xvdc 99G 60M 94G 1%
/dev/xvde4 222G 195G 16G 93%
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE
xvda 202:0 0 8G 0 disk
??xvda1 202:1 0 120M 0 part
??xvda2 202:2 0 2.5G 0 part
??xvda3 202:3 0 1.6G 0 part
??xvda4 202:4 0 1K 0 part
??xvda5 202:5 0 2.5G 0 part
??xvda6 202:6 0 768M 0 part
??xvda7 202:7 0 509M 0 part
**xvdb 202:16 0 300G 0 disk **
xvdc 202:32 0 100G 0 disk
xvde 202:64 0 225G 0 disk
??xvde4 202:68 0 225G 0 part
我非常了解 Linux 系統,但我絕對不是專家。我一直無法找到解決我的困境的答案。此時是否可以擴充磁碟?預先感謝您的任何幫助!
答案1
fdisk 不擴展磁碟,它只處理分割區-而你的磁碟沒有任何分割區,所以沒有理由使用 fdisk。
由於您已經擴展了整個磁碟(即 lsblk 所示的“xvdb”設備)並且沒有任何其他中間層,因此下一步是擴展檔案系統,即允許它佔據其可用的空間。這就是“df”顯示的內容(檔案系統配置)。
fdisk 也不擴充檔案系統(如果那就是你所說的「磁碟」的意思),所以這裡也沒有理由使用 fdisk。
相反,根據檔案系統類型,您需要resize2fs
對於 ext4,或xfs_growfs
對於 XFS、或btrfs filesystem resize
或類似的東西。 (每個檔案系統都有自己的工具。大多數支援線上成長,儘管有些需要先卸載檔案系統。)
使用df -T
或lsblk -f
確定檔案系統類型。
答案2
我的建議是添加一個新的虛擬磁碟並將其安裝在最能發揮作用的地方。您可以透過在網路上搜尋「xenserver new virtual disk」來了解如何執行此操作。我不知道XenServer,但它們都是一樣的..這是一個Linux概念,與您的虛擬化主機(XenServer)無關。
您需要弄清楚 Linux 安裝上的所有空間都被佔用在哪裡。您可能已經知道這一點。對於我這裡的例子..讓我們假設它是/home..
以 root 身分登入(又稱 sudo -i)。
最初使用 mount 指令掛載新的虛擬磁碟。在其根目錄下建立一個名為「home」的資料夾。您可以/將使用
rsync
將檔案從 /home/* 複製到新安裝的磁碟機上的「home」。這應該保留權限。將舊的 /home/ 重新命名為 /oldhome/ 以防出現問題。
使用 fstab 檔案將新磁碟機安裝為 /home/ 並重新啟動。
如果一切看起來都不錯,作為 root,rd /s /q /oldhome
我不是 Linux 大神,但我已經無數次使用這種方法來擴展我在 *nix 作業系統中的空間。如果有人對我如何實現這一點提出批評,請幫助我發表更好的帖子。我很樂意修改它。