B Tự động hoá việc cài đặt bằng chèn sẵn
B.3 Tạo tập tin định cấu hình sẵn
thì vật chứa cài đặt cũng hỗ trợ chèn sẵn qua mạng sẽ tải tập tin đó xuống địa chỉ URL được cung cấp và dùng nó làm một tập tin cấu hình sẵn. Đây là một mẫu thiết lập nó trong tập tin cấu hình « dhcpd.conf » cho phiên bản 3 của trình phục vụ DHCP ISC (gói Debian « isc-dhcp-server »).
if substring (option vendor-class-identifier, 0, 3) = ”d-i” { filename ”http://máy/preseed.cfg”;
}
Ghi chú rằng mẫu bên trên giới hạn tên tập tin này thành ứng dụng khách DHCP tự nhận diện là “d-i”, vì vậy nó sẽ khơng có tác động ứng dụng khách DHCP chuẩn, chỉ trình cài đặt. Bạn cũng có khả năng định dạng đoạn đó là đoạn dịng cho chỉ một máy riêng, để tránh chèn sẵn mọi việc cài đặt trên mạng đó.
Một phương pháp tốt để dùng chức năng chèn sẵn DHCP là chèn sẵn chỉ những giá trị đặc trưng cho mạng đó, v.d. máy nhân bản Debian cần dùng. Bằng cách này, việc cài đặt trên mạng đó sẽ tự động chọn một máy nhân bản hữu ích, cịn phần cịn lại của tiến trình cài đặt có thể được thực hiện tương tác. Bạn nên rất cẩn thận khi dùng chức năng chèn sẵn DHCP để tự động hố hồn tồn tiến trình cài đặt Debian.
B.3 Tạo tập tin định cấu hình sẵn
Tập tin cấu hình sẵn có dạng thức được dùng bởi lệnhdebconf-set-selections. Dạng thức chung của dịng nào nằm
trong tập tin cấu hình sẵn là:
<sở hữu> <tên câu hỏi> <kiểu câu hỏi> <giá trị> The file should start with#_preseed_V1
Ghi nhớ vài quy tắc khi tạo tập tin cấu hình sẵn.
• Chèn chỉ một dấu cách riêng lẻ giữa « kiểu » và « giá trị »: dấu cách thêm nào sẽ được xử lý là phần của giá trị đó.
• Mỗi dịng có thể được chia ra nhiều dòng bằng cách phụ thêm xuyệc ngược (“\”) là ký tự tiếp tục dịng. Nơi thích hợp để chia dịng ra là nơi nằm sau « tên câu hỏi »; cịn nơi khơng thích hợp là nơi giữa « kiểu câu hỏi » và « giá trị ». Các dịng bị chia tách sẽ được nối lại thành một dịng riêng lẻ có tất cả các khoảng trắng theo sau được co lại thành một dấu cách riêng lẻ.
• Đối với biến cấu hình debconf (mẫu) nào chỉ được dùng trong trình cài đặt chính nó, nên đặt chủ sở hữu thành “d-i”; để chèn sẵn các biến được dùng trong hệ thống được cài đặt, nên dùng tên của gói chứa mẫu debconf tương ứng. Chỉ những biến có chủ sở hữu khác với “d-i” sẽ được chép đến cơ sở dữ liệu debconf cho hệ thống được cài đặt.
• Phần lớn câu hỏi cần phải được chèn sẵn bằng giá trị tiếng Anh, khơng phải giá trị đã dịch. Tuy nhiên, có một số câu hỏi riêng (v.d. trongpartman) trong đó cần phải dùng giá trị đã dịch.
• Một số câu hỏi riêng chấp nhận mã là giá trị, thay cho đoạn tiếng Anh được hiển thị trong khi cài đặt. • Start with#_preseed_V1
• A comment consists of a line whichstartswith a hash character (“#”) and extends up to the length of that line. Phương pháp dễ nhất để tạo tập tin cấu hình sẵn là dùng tập tin mẫu được liên kết trong Phần B.4như là cơ bản, rồi thêm từ từ vào nó.
Một phương pháp xen kẽ là tự chạy tiến trình cài đặt, rồi, sau khi khởi động lại, dùng chức năngdebconf-get- selectionscủa gói các tiện íchdebconf-utilsđể đổ cả cơ sở dữ liệu debconf lẫn cơ sở dữ liệu cdebconf của trình cài đặt đều vào cùng một tập tin:
$ echo ”#_preseed_V1” > file
$ debconf-get-selections --installer >> file
$ debconf-get-selections >> file
Tuy nhiên, tập tin được tạo ra bằng cách này sẽ chứa một số mục riêng không nên được chèn sẵn; tập tin mẫu cũng là nơi bắt đầu thích hợp hơn với trường hợp của phần lớn người dùng.
APPENDIX B. TỰ ĐỘNG HOÁ VIỆC CÀI ĐẶT… B.4. NỘI DUNG CỦA TẬP TIN ĐỊNH CẤU HÌNH…
G ú
Phương pháp này nhờ trường hợp rằng, tại kết thúc của tiến trình cài đặt, cơ sở dữ liệu cdebconf của trình cài đặt được lưu vào hệ thống mới cài đặt trong thư mục /var/log/installer/cdebconf. Tuy nhiên, vì cơ sở dữ liệu đó có thể chứa thơng tin nhạy cảm, theo mặc định các tập tin đó chỉ cho phép người chủ đọc thơi. Thư mục/var/log/installer, cũng là mọi tập tin nằm trong nó sẽ bị xố bỏ ra hệ thống của bạn nếu bạn tẩy gói thơng báo cài đặtinstallation-report.
Để kiểm tra giá trị có thể cho câu hỏi, bạn có khả năng sử dụng trình hiệu chỉnh văn bảnnanođể xem lại các tập tin nằm trong thư mục/var/lib/cdebconftrong khi cài đặt. Xem tập tintemplates.datđể tìm biểu mẫu thơ, cịn tập tinquestions.datđể tìm những giá trị hiện thời và các giá trị được gán cho biến.
Trước khi cài đặt, để kiểm tra nếu tập tin cấu hình sẵn có dạng thức hợp lệ chưa, bạn có thể chạy lệnhdebconf- set-selections -cpreseed.cfg.