Tăng dung lượng ổ cứng cho Ubuntu

Trong quá trình cài đặt Oracle Database 19c trên RHEL 7.6, mình gặp phải vấn đề là dung lượng phân vùng ổ cứng quá thấp. Vì vậy mình cần nâng dung lượng phân vùng root trên Linux. Giải pháp đưa ra là sử dụng Gparted để thực hiện vấn đề này.

Gparted là gì?

GParted (từ viết tắt của GNOME Partition Editor) là một giao diện người dùng GTK cho GNU Parted và là một ứng dụng chỉnh sửa phân vùng GNOME chính thức (cùng với Ổ đĩa). GParted được sử dụng để tạo, xóa, thay đổi kích thước, di chuyển, kiểm tra và sao chép phân vùng ổ đĩa và hệ thống tệp của chúng. Điều này rất hữu ích để tạo không gian cho hệ điều hành mới, tổ chức lại việc sử dụng ổ đĩa, sao chép dữ liệu trên đĩa cứng và sao chép một phân vùng này với một phân vùng khác (hình ảnh ổ đĩa).

Tải Gparted ở link bên dưới:

Download Gparted

Hướng dẫn nâng phân vùng ổ cứng sử dụng Gparted

Sau khi download file iso của Gparted các bạn mount file iso vào máy ảo, hoặc với máy tính thì burn là CD hoặc USB.

Sau đó reboot lại Hệ điều hành và boot vào gparted

Màn hình boot menu của Gparted hiển thị như bên dưới.

Chọn dòng dầu tiên: “Gparted Live (Default Settings)

Chọn “Don’t touch keymap” => [ OK ]

Chọn ngôn ngữ để hiển thị => Để mặc định là 33 “US English“. Nếu bạn không giỏi tiếng Anh thì chọn Vietnamese

Chọn mode hiển thị => Tốt nhất là để mặc định là 0 (Chế độ đồ họa)

Ở đây chúng ta có phân vùng cần tăng dung lượng là /dev/sda2. Phần dung lượng chưa được phân bổ là 20GB.

Để phân bổ dung lượng cho phân vùng /dev/sda2, chúng ta kích chuột phải vào phân vùng, chọn “Resize/Move

Đặt size mà bạn muốn tăng cho phân vùng /dev/sda2 => Chọn [ Resize ]

Sau đó check vào dấu tích xanh để thực hiện nâng cấp dung lượng cho phân vùng

Xác nhận bạn muốn thực hiện hành động này

Kết thúc bấm [ Close ]

Kết quả phân vùng đã được mở rộng thêm 20 GB dung lượng.

Vậy chúng ta đã thành công trong việc tăng dung lượng phân vùng ổ cứng vè mặt vật lý.

Tuy nhiên để Hệ điều hành nhận dung lượng vừa được tăng thêm thì chúng ta cần chạy lệnh sau.

Boot vào HDH và chạy command dưới đây:

lvextend -l +100%FREE /dev/mapper/<lvm_root>

Để xác nhận lại sử dụng command sau:

xfs_growfs /dev/mapper/<lvm_root>

Hoặc sử dụng:

  • resize2fs /dev/mapper/<lvm_root>
  • fsadm resize /dev/mapper/<lvm_root> (Với RHEL 8.x)

Kết quả chúng ta đã có thêm 20GB dung lượng.

Nguồn: vinasupport.com

Vì nhiều lý do, dung lượng của một ổ cứng… có thể được mở rộng. Chẳng hạn do lấy snapshot của ổ cứng dung lượng nhỏ restore vào ổ cứng dung lượng lớn. Hoặc do sử dụng chức năng mở rộng dung lượng mà các hạ tầng cloud hiện đại (AWS, Digital Ocean, Bizfly…) cho phép.

Trong những trường hợp như thế, kích thước các phân vùng thường sẽ không thay đổi theo và ta phải thao tác để điều khiển.

Thăm dò trạng thái ổ cứng và phân vùng

Công việc thường bắt đầu bằng việc kiểm tra sự chênh lệch về dung lượng. Kết quả trông có thể như sau, để ý ổ cứng có tên vdb:

[root@ecshost ~]# lsblk vda 252:0 0 80G 0 disk ├─vda1 252:1 0 79.9G 0 part / ├─vda14 252:14 0 4M 0 part └─vda15 252:15 0 106M 0 part /boot/efi vdb 252:16 0 120G 0 disk └─vdb1 252:17 0 100G 0 part /media/heap

Bước tiếp theo là kiểm tra bảng phân vùng hiện tại. Kết quả trông có thể như dưới đây, để ý phân vùng /dev/vdb1. Nếu giá trị của System là Linux thì có nghĩa là ổ cứng đang sử dụng bảng phân vùng dạng MBR. Nếu giá trị của System là GPT thì nghĩa là ổ cứng đang sử dụng bảng phân vùng dạng GPT.

[root@ecshost ~]# fdisk -lu /dev/vdb Disk /dev/vdb: 42.9 GB, 42949672960 bytes, 83886080 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x9277b47b Device Boot Start End Blocks Id System /dev/vdb1 2048 41943039 20970496 83 Linux

Tiếp theo, kiểm tra định dạng đang sử dụng cho phân vùng muốn được mở rộng. Trong ví dụ dưới đây là ext4.

[root@ecshost ~]# blkid /dev/vdb1 /dev/vdb1: UUID="e97bf1e2-fc84-4c11-9652-73********24" TYPE="ext4"

Tiếp theo, kiểm tra trạng thái của bảng phân vùng. Sử dụng lệnh e2fsck -n /dev/vdb1 cho phân vùng ext* và lệnh xfs_repair -n /dev/vdb1 cho phân vùng xfs. Nếu phân vùng không mang trạng thái clean thì nên cân nhắc backup ổ cứng và dò lỗi trước.

[root@ecshost ~]# e2fsck -n /dev/vdb1 Warning! /dev/vdb1 is mounted. Warning: skipping journal recovery because doing a read-only filesystem check. /dev/vdb1: clean, 11/1310720 files, 126322/5242624 blocks

Mở rộng phân vùng

Sử dụng parted để mở rộng thông tin dung lượng trong bảng phân vùng:

  1. Chạy lệnh parted /dev/vdb để mở trình parted
  2. Chạy sub command print để thăm dò bảng phân vùng
  3. Dialog Fix/Ignore/Cancel? sẽ hiện ra, nhập Fix
  4. Chạy lệnh quit để thoát trình parted

Sau đó, chạy trình growpart <ổ> <partition của ổ> để mở rộng dung lượng cho phân vùng. Chẳng hạn growpart /dev/vdb 1.

Tham khảo:

  1. //partners-intl.aliyun.com/help/doc-detail/25452.htm#section-vvb-gcs-bhm
  2. //docs.amazonaws.cn/en_us/AWSEC2/latest/UserGuide/recognize-expanded-volume-linux.html

 5,244 total views,  17 views today

Chủ đề