sfdisk
sfdisk
là phiên bản kịch bản của fdisk
Nó là một phần củautil-linux
, giống như fdisk
, vì vậy tính khả dụng nên giống nhau.
Một bảng phân vùng với một phân vùng duy nhất lấy toàn bộ đĩa có thể được tạo bằng:
echo 'type=83' | sudo sfdisk /dev/sdX
và các bảng phân vùng phức tạp hơn được giải thích dưới đây.
Để tạo tập lệnh mẫu, hãy thiết lập một trong các đĩa của bạn:
sudo sfdisk -d /dev/sda > sda.sfdisk
Đầu ra mẫu trên khởi động kép Lenovo T430 Windows 7 / Ubuntu của tôi:
label: dos
label-id: 0x7ddcbf7d
device: /dev/sda
unit: sectors
/dev/sda1 : start= 2048, size= 3072000, type=7, bootable
/dev/sda2 : start= 3074048, size= 195430105, type=7
/dev/sda3 : start= 948099072, size= 28672000, type=7
/dev/sda4 : start= 198504446, size= 749594626, type=5
/dev/sda5 : start= 198504448, size= 618891264, type=83
/dev/sda6 : start= 940277760, size= 7821312, type=82
/dev/sda7 : start= 817397760, size= 61437952, type=83
/dev/sda8 : start= 878837760, size= 61437500, type=83
Khi bạn đã lưu tập lệnh vào một tệp, bạn có thể áp dụng tập lệnh đó sdX
với:
sudo sfdisk /dev/sdX < sda.sfdisk
Đối với sfdisk
đầu vào, bạn chỉ có thể bỏ qua tên thiết bị và sử dụng các dòng loại:
start= 2048, size= 3072000, type=7, bootable
Chúng chỉ bị bỏ qua nếu có và tên thiết bị được lấy từ đối số dòng lệnh.
Một số giải thích:
- dòng tiêu đề: tất cả tùy chọn:
dòng phân vùng:
start
: offset bên trong đĩa mà phân vùng bắt đầu.
start
có mặc định rất tốt và thường có thể bị bỏ qua:
- trên dòng đầu tiên,
start
là 2048, tức là 1Mb (2048 + 512), là mặc định lành mạnh cho khả năng tương thích đĩa
- tiếp tục
start
mặc định cho vị trí chưa được phân bổ đầu tiên
size
: man sfdisk
nói : The default value of size indicates "as much as possible"
. Vì vậy, để lấp đầy đĩa với một phân vùng duy nhất sử dụng:/dev/sda : start=2048, type=83
type
: byte ma thuật được lưu trữ trên khu vực khởi động cho mỗi mục phân vùng . Các giá trị có thể có: https://en.wikipedia.org/wiki/Partition_type Trong ví dụ này, chúng tôi quan sát:
7
( sda1
, 2
Và 3
): hệ thống tập tin mà Windows hỗ trợ. Công cụ Windows được cài đặt sẵn và phân vùng phục hồi Lenovo. sudo blkid
nhãn giúp xác định chúng.
5
( sda4
): phân vùng chính mở rộng, sẽ chứa các phân vùng logic khác (vì chúng tôi chỉ có thể có 4 phân vùng chính với MBR)
83
( sda5
, 7
và 8
): các phân vùng mà Linux hỗ trợ. Đối với tôi một home
và hai gốc với các phiên bản Ubuntu khác nhau
82
( sd6
): hoán đổi
fdisk
cũng có thể đọc sfdisk
các tập lệnh bằng I
lệnh, "nguồn" chúng trong một fdisk
phiên tương tác , cho phép bạn tùy chỉnh thêm trước khi viết phân vùng.
Đã thử nghiệm trên Ubuntu 16.04, sfdisk
2.27.1.
Định dạng và điền vào các phân vùng một tệp hình ảnh mà không có sudo
Đây là một cách tốt để học cách sử dụng sfdisk
mà không làm hỏng đĩa cứng của bạn: https://stackoverflow.com/questions/10949169/how-to-create-a-multi-partition-sd-disk-image-without-root- đặc quyền / 52850819 # 52850819