Dưới đây là một ví dụ mà một công cụ tự động sử dụng để thay đổi kích thước phân vùng trực tuyến, trong một lần chạy:
sgdisk -d 1 -n 1: 2048: 0 -c 1: -u 1: E485F29F-A1F4-4953-9DD8-799EAEA0119B -t 1: 0700 / dev / xvda
Đây là danh sách các tùy chọn cho lệnh sgdisk:
- -d 1 xóa phân vùng đầu tiên
- -n 1: 2048: 0 nói tạo phân vùng mới "số 1", với bắt đầu sector 2048. End sector = "0" có nghĩa là "sử dụng tất cả không gian có sẵn cho phân vùng này
- -u đặt hướng dẫn duy nhất cho phân vùng đó (điều này dành riêng cho phân vùng GPT); bạn có thể sử dụng 'R' cho GUID để được đặt thành một giá trị ngẫu nhiên. Bạn cũng có thể lấy id của phân vùng hiện tại thông qua
gdisk /dev/xvda; p
đầu ra để sử dụng lại cùng một uid
- -t 1: 0700 về cơ bản có nghĩa là phân vùng đầu tiên có kiểu chữ '0700'.
/ dev / xvda là đĩa mà chúng tôi đã phân vùng lại.
Vì vậy, nó xóa và tạo một phân vùng mới trên vị trí của nó ngay lập tức.
Tái bút Một vài lưu ý về kiểu chữ '0700'. Từ người đàn ông SGDISK (8)
-t, --typecode=partnum:{hexcode|GUID}
Change a single partition's type code. You enter the type code using either a two-byte hexadecimal number, as
được mô tả trước đó hoặc giá trị GUID được chỉ định đầy đủ, chẳng hạn như EBD0A0A2-B9E5-4433-87C0-68B6B72699C7.
Tìm thấy lời giải thích tốt nhất cho ý nghĩa của '0700' ở đây - http://www.rodsbooks.com/gdisk/walk phiên.html
"Nhưng chờ đã," bạn nói, "Tôi nghĩ đĩa có phân vùng FAT!" Quả thực là như vậy. Windows sử dụng một mã GUID duy nhất cho tất cả các phân vùng dữ liệu của mình, có thể là FAT hoặc NTFS. Trước đây, mã tương tự đã được sử dụng trong Linux cho các phân vùng dữ liệu của nó. (Thông tin thêm về điều này trong thời gian ngắn ....) Vì vậy, trong trường hợp này, một số mã MBR khác nhau đều được dịch thành một mã GPT GUID duy nhất. GPT fdisk sử dụng, phần nào tùy ý, mã 0x0700 (hay chính xác hơn là EBD0A0A2-B9E5-4433-87C0-68B6B72699C7) cho tất cả những điều này.
Trong trường hợp của tôi, tôi tin rằng đó là phân vùng ext4 của Linux, nhưng kiểu chữ của phân vùng không có nghĩa là loại hệ thống tệp, vì vậy '0700' trông giống như một loại hình bắt cho sgdisk. Ít nhất là trong những trường hợp tôi đã thấy.
PPS. Bạn có thể cần chạy partprobe
kernel để nhận biết thay đổi phân vùng mà không cần khởi động lại hệ thống.