Có một cơ chế gồm hai phần chịu trách nhiệm về vấn đề này trên Raspbian; có thể ý tưởng tốt nhất là chăm sóc cả hai phần nếu chúng được kích hoạt.
Đầu tiên là bản gốc /boot/cmdline.txt
bao gồm điều này:
init=/usr/lib/raspi-config/init_resize.sh
Đề cập đến một tập lệnh có đường dẫn đó trên phân vùng gốc, sẽ được sử dụng làm tiến trình init khi khởi động. Không có bit đó, nó sẽ mặc định là một giá trị được tích hợp trong kernel /sbin/init
, mà trên Raspbian là một liên kết tượng trưng đến /lib/systemd/systemd
.
Bằng cách loại bỏ phần đó cmdline.txt
, hệ thống sẽ khởi động bình thường.
Những gì tập lệnh thực sự làm là thay đổi kích thước phân vùng trên thẻ SD. Đây là một quá trình khác biệt với việc thay đổi kích thước hệ thống tập tin trong phân vùng, 1 là điều xảy ra tiếp theo.
Cách xảy ra là hệ thống ngay lập tức được khởi động lại bình thường (nghĩa là thông qua systemd) và một init.d
tập lệnh được thiết lập để kích hoạt sớm, cần được xóa khỏi phân vùng thứ hai:
/etc/init.d/resizefs_once
Và liên kết tượng trưng cho nó, cũng nên được gỡ bỏ:
/etc/rc3.d/S01resizefs_once
Bạn có thể giữ một bản sao để sử dụng sau nếu bạn muốn, nhưng raspi-config
có thể tạo lại bản sao cho bạn (nó được nhúng trong raspi-config
tập lệnh shell). Nếu nó thực sự chạy, nó sẽ tự xóa, vì vậy nó sẽ không xảy ra lần nữa.
Những gì nó cũng làm là thay đổi kích thước hệ thống tập tin trong phân vùng vừa được thay đổi kích thước.
Không có hại phải được thực hiện nếu chỉ một hoặc một phần khác xảy ra; trong trường hợp đầu tiên, bạn kết thúc với một hệ thống tệp không lấp đầy phân vùng được mở rộng, trong lần thứ hai sẽ không có gì xảy ra, vì hệ thống tệp đã lấp đầy phân vùng.
Nếu sau này bạn sử dụng raspi-config
để phóng to hệ thống tập tin, nó sẽ thay đổi kích thước phân vùng ngay lập tức, sau đó thiết lập tập lệnh init (như đã đề cập).
Chỉnh sửa cmdline.txt
trên phân vùng đầu tiên là đơn giản trên bất kỳ máy tính nào vì nó là phân vùng VFAT. Xóa init.d
tệp yêu cầu một hệ thống có thể truy cập và chỉnh sửa hệ thống tệp ext4.
Thay vào đó, cả hai tác vụ có thể được thực hiện đối với tệp hình ảnh trước khi ghi thẻ; để gắn kết và sửa đổi hình ảnh Raspbian trên hệ thống GNU / Linux, xem tại đây . Có một câu hỏi và trả lời song song cho Windows .
Điều này cũng có thể đảo ngược, nhưng bạn sẽ cần đặt lại cả hai phần của cơ chế như đã mô tả, vì phần đầu tiên không bao gồm tự động dàn phần thứ hai.
- Mặc dù một thông báo lỗi từ tập lệnh đó có thể gây nhầm lẫn cho các điều khoản đó bằng cách tuyên bố rằng nó không thể thay đổi kích thước hệ thống tập tin gốc , khi điều mà nó thực sự không làm được là thay đổi kích thước phân vùng trên với hệ thống tập tin gốc nằm trong đó. Làm cái này không tự động hoàn thành cái kia.